• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-13-stable/libexec/rtld-elf/

Lines Matching defs:needed

715     dbg("loading needed objects");
1088 Needed_Entry **needed_tail = &obj->needed;
2072 const Needed_Entry *needed;
2091 for (needed = elm->obj->needed; needed != NULL; needed = needed->next) {
2092 if (needed->obj == NULL || donelist_check(&donelist, needed->obj))
2094 objlist_push_tail(&needed->obj->dldags, root);
2095 objlist_push_tail(&root->dagmembers, needed->obj);
2248 assert(objtmp.needed == NULL);
2336 * Add the init functions from a needed object list (and its recursive
2337 * needed objects) to "list". This is not used directly; it is a helper
2342 initlist_add_neededs(Needed_Entry *needed, Objlist *list)
2344 /* Recursively process the successor needed objects. */
2345 if (needed->next != NULL)
2346 initlist_add_neededs(needed->next, list);
2348 /* Process the current needed object. */
2349 if (needed->obj != NULL)
2350 initlist_add_objects(needed->obj, needed->obj, list);
2357 * needed libraries are initialized before the object itself. At the
2376 /* Recursively process the needed objects. */
2377 if (obj->needed != NULL)
2378 initlist_add_neededs(obj->needed, list);
2402 Needed_Entry *needed, *needed1;
2404 for (needed = n; needed != NULL; needed = needed->next) {
2405 if (needed->obj != NULL) {
2406 dlclose_locked(needed->obj, lockstate);
2407 needed->obj = NULL;
2410 for (needed = n; needed != NULL; needed = needed1) {
2411 needed1 = needed->next;
2412 free(needed);
2428 load_filtee1(Obj_Entry *obj, Needed_Entry *needed, int flags,
2432 for (; needed != NULL; needed = needed->next) {
2433 needed->obj = dlopen_object(obj->strtab + needed->name, -1, obj,
2452 process_needed(Obj_Entry *obj, Needed_Entry *needed, int flags)
2456 for (; needed != NULL; needed = needed->next) {
2457 obj1 = needed->obj = load_object(obj->strtab + needed->name, -1, obj,
2466 * Given a shared object, traverse its list of needed objects, and load
2478 if (process_needed(obj, obj->needed, flags) == -1)
4401 symlook_needed(SymLook *req, const Needed_Entry *needed, DoneList *dlp)
4412 for (n = needed; n != NULL; n = n->next) {
4700 Needed_Entry *needed;
4706 if (list_containers && obj->needed != NULL)
4708 for (needed = obj->needed; needed; needed = needed->next) {
4709 if (needed->obj != NULL) {
4710 if (needed->obj->traced && !list_containers)
4712 needed->obj->traced = true;
4713 path = needed->obj->path;
4717 name = obj->strtab + needed->name;
4767 rtld_printf("%p", needed->obj ? needed->obj->mapbase :
5299 const Needed_Entry *needed;
5306 for (needed = obj->needed; needed != NULL; needed = needed->next) {
5307 if (strcmp(obj->strtab + needed->name, name) == 0 ||
5308 (needed->obj != NULL && object_match_name(needed->obj, name))) {
5316 return (needed->obj);