Lines Matching refs:needed

588     dbg("loading needed objects");
921 Needed_Entry **needed_tail = &obj->needed;
1822 const Needed_Entry *needed;
1841 for (needed = elm->obj->needed; needed != NULL; needed = needed->next) {
1842 if (needed->obj == NULL || donelist_check(&donelist, needed->obj))
1844 objlist_push_tail(&needed->obj->dldags, root);
1845 objlist_push_tail(&root->dagmembers, needed->obj);
1945 assert(objtmp.needed == NULL);
2030 * Add the init functions from a needed object list (and its recursive
2031 * needed objects) to "list". This is not used directly; it is a helper
2036 initlist_add_neededs(Needed_Entry *needed, Objlist *list)
2038 /* Recursively process the successor needed objects. */
2039 if (needed->next != NULL)
2040 initlist_add_neededs(needed->next, list);
2042 /* Process the current needed object. */
2043 if (needed->obj != NULL)
2044 initlist_add_objects(needed->obj, needed->obj, list);
2051 * needed libraries are initialized before the object itself. At the
2070 /* Recursively process the needed objects. */
2071 if (obj->needed != NULL)
2072 initlist_add_neededs(obj->needed, list);
2098 Needed_Entry *needed, *needed1;
2100 for (needed = n; needed != NULL; needed = needed->next) {
2101 if (needed->obj != NULL) {
2102 dlclose(needed->obj);
2103 needed->obj = NULL;
2106 for (needed = n; needed != NULL; needed = needed1) {
2107 needed1 = needed->next;
2108 free(needed);
2124 load_filtee1(Obj_Entry *obj, Needed_Entry *needed, int flags,
2128 for (; needed != NULL; needed = needed->next) {
2129 needed->obj = dlopen_object(obj->strtab + needed->name, -1, obj,
2148 process_needed(Obj_Entry *obj, Needed_Entry *needed, int flags)
2152 for (; needed != NULL; needed = needed->next) {
2153 obj1 = needed->obj = load_object(obj->strtab + needed->name, -1, obj,
2162 * Given a shared object, traverse its list of needed objects, and load
2174 if (process_needed(obj, obj->needed, flags) == -1)
4022 symlook_needed(SymLook *req, const Needed_Entry *needed, DoneList *dlp)
4033 for (n = needed; n != NULL; n = n->next) {
4321 Needed_Entry *needed;
4327 if (list_containers && obj->needed != NULL)
4329 for (needed = obj->needed; needed; needed = needed->next) {
4330 if (needed->obj != NULL) {
4331 if (needed->obj->traced && !list_containers)
4333 needed->obj->traced = true;
4334 path = needed->obj->path;
4338 name = (char *)obj->strtab + needed->name;
4388 rtld_printf("%p", needed->obj ? needed->obj->mapbase :
4850 const Needed_Entry *needed;
4857 for (needed = obj->needed; needed != NULL; needed = needed->next) {
4858 if (strcmp(obj->strtab + needed->name, name) == 0 ||
4859 (needed->obj != NULL && object_match_name(needed->obj, name))) {
4867 return (needed->obj);