Lines Matching refs:Obj_Entry
89 static void digest_dynamic1(Obj_Entry *, int, const Elf_Dyn **,
91 static bool digest_dynamic2(Obj_Entry *, const Elf_Dyn *, const Elf_Dyn *,
93 static bool digest_dynamic(Obj_Entry *, int);
94 static Obj_Entry *digest_phdr(const Elf_Phdr *, int, caddr_t, const char *);
96 static Obj_Entry *dlcheck(void *);
98 static Obj_Entry *dlopen_object(const char *name, int fd, Obj_Entry *refobj,
100 static Obj_Entry *do_load_object(int, const char *, char *, struct stat *, int);
101 static int do_search_info(const Obj_Entry *obj, int, struct dl_serinfo *);
102 static bool donelist_check(DoneList *, const Obj_Entry *);
107 static char *find_library(const char *, const Obj_Entry *, int *);
109 static void hold_object(Obj_Entry *);
110 static void unhold_object(Obj_Entry *);
111 static void init_dag(Obj_Entry *);
112 static void init_marker(Obj_Entry *);
116 static void initlist_add_objects(Obj_Entry *, Obj_Entry *, Objlist *);
118 static void linkmap_add(Obj_Entry *);
119 static void linkmap_delete(Obj_Entry *);
120 static void load_filtees(Obj_Entry *, int flags, RtldLockState *);
121 static void unload_filtees(Obj_Entry *, RtldLockState *);
122 static int load_needed_objects(Obj_Entry *, int);
125 static Obj_Entry *load_object(const char *, int fd, const Obj_Entry *, int);
127 static int obj_disable_relro(Obj_Entry *);
128 static int obj_enforce_relro(Obj_Entry *);
129 static void objlist_call_fini(Objlist *, Obj_Entry *, RtldLockState *);
132 static Objlist_Entry *objlist_find(Objlist *, const Obj_Entry *);
134 static void objlist_push_head(Objlist *, Obj_Entry *);
135 static void objlist_push_tail(Objlist *, Obj_Entry *);
136 static void objlist_put_after(Objlist *, Obj_Entry *, Obj_Entry *);
137 static void objlist_remove(Objlist *, Obj_Entry *);
145 static void release_object(Obj_Entry *);
146 static int relocate_object_dag(Obj_Entry *root, bool bind_now,
147 Obj_Entry *rtldobj, int flags, RtldLockState *lockstate);
148 static int relocate_object(Obj_Entry *obj, bool bind_now, Obj_Entry *rtldobj,
150 static int relocate_objects(Obj_Entry *, bool, Obj_Entry *, int,
152 static int resolve_object_ifunc(Obj_Entry *, bool, int, RtldLockState *);
163 static int symlook_default(SymLook *, const Obj_Entry *refobj);
168 static int symlook_obj1_sysv(SymLook *, const Obj_Entry *);
169 static int symlook_obj1_gnu(SymLook *, const Obj_Entry *);
171 static void trace_loaded_objects(Obj_Entry *, bool);
172 static void unlink_object(Obj_Entry *);
173 static void unload_object(Obj_Entry *, RtldLockState *lockstate);
174 static void unref_dag(Obj_Entry *);
175 static void ref_dag(Obj_Entry *);
176 static char *origin_subst_one(Obj_Entry *, char *, const char *, const char *,
178 static char *origin_subst(Obj_Entry *, const char *);
179 static bool obj_resolve_origin(Obj_Entry *obj);
182 static int rtld_verify_object_versions(Obj_Entry *);
183 static void object_add_name(Obj_Entry *, const char *);
184 static int object_match_name(const Obj_Entry *, const char *);
186 static void rtld_fill_dl_phdr_info(const Obj_Entry *obj,
189 static bool matched_symbol(SymLook *, const Obj_Entry *, Sym_Match_Result *,
224 static Obj_Entry *obj_main; /* The main program shared object */
225 static Obj_Entry obj_rtld; /* The dynamic linker shared object */
269 func_ptr_type _rtld(Elf_Addr *sp, func_ptr_type *exit_proc, Obj_Entry **objp);
270 Elf_Addr _rtld_bind(Obj_Entry *obj, Elf_Size reloff);
494 _rtld(Elf_Addr *sp, func_ptr_type *exit_proc, Obj_Entry **objp) in _rtld()
498 Obj_Entry *last_interposer, *obj, *preload_tail; in _rtld()
1023 rtld_resolve_ifunc(const Obj_Entry *obj, const Elf_Sym *def) in rtld_resolve_ifunc()
1034 _rtld_bind(Obj_Entry *obj, Elf_Size reloff) in _rtld_bind()
1038 const Obj_Entry *defobj; in _rtld_bind()
1141 origin_subst_one(Obj_Entry *obj, char *real, const char *kw, const char *subst, in origin_subst_one()
1223 origin_subst(Obj_Entry *obj, const char *real) in origin_subst()
1264 digest_dynamic1(Obj_Entry *obj, int early, const Elf_Dyn **dyn_rpath, in digest_dynamic1()
1606 obj_resolve_origin(Obj_Entry *obj) in obj_resolve_origin()
1615 digest_dynamic2(Obj_Entry *obj, const Elf_Dyn *dyn_rpath, in digest_dynamic2()
1635 digest_dynamic(Obj_Entry *obj, int early) in digest_dynamic()
1651 static Obj_Entry *
1654 Obj_Entry *obj; in digest_phdr()
1727 digest_notes(Obj_Entry *obj, Elf_Addr note_start, Elf_Addr note_end) in digest_notes()
1775 static Obj_Entry *
1778 Obj_Entry *obj; in dlcheck()
1781 if (obj == (Obj_Entry *)handle) in dlcheck()
1797 donelist_check(DoneList *dlp, const Obj_Entry *obj) in donelist_check()
1872 find_library(const char *xname, const Obj_Entry *refobj, int *fdp) in find_library()
1891 return (origin_subst(__DECONST(Obj_Entry *, refobj), in find_library()
1982 find_symdef(unsigned long symnum, const Obj_Entry *refobj, in find_symdef()
1983 const Obj_Entry **defobj_out, int flags, SymCache *cache, in find_symdef()
1988 const Obj_Entry *defobj; in find_symdef()
2283 init_dag(Obj_Entry *root) in init_dag()
2317 init_marker(Obj_Entry *marker) in init_marker()
2323 Obj_Entry *
2324 globallist_curr(const Obj_Entry *obj) in globallist_curr()
2330 return (__DECONST(Obj_Entry *, obj)); in globallist_curr()
2335 Obj_Entry *
2336 globallist_next(const Obj_Entry *obj) in globallist_next()
2343 return (__DECONST(Obj_Entry *, obj)); in globallist_next()
2349 hold_object(Obj_Entry *obj) in hold_object()
2355 unhold_object(Obj_Entry *obj) in unhold_object()
2363 process_z(Obj_Entry *root) in process_z()
2366 Obj_Entry *obj; in process_z()
2397 parse_rtld_phdr(Obj_Entry *obj) in parse_rtld_phdr()
2426 Obj_Entry objtmp; /* Temporary rtld object */ in init_rtld()
2561 initlist_add_objects(Obj_Entry *obj, Obj_Entry *tail, Objlist *list) in initlist_add_objects()
2563 Obj_Entry *nobj; in initlist_add_objects()
2612 unload_filtees(Obj_Entry *obj, RtldLockState *lockstate) in unload_filtees()
2622 load_filtee1(Obj_Entry *obj, Needed_Entry *needed, int flags, in load_filtee1()
2633 load_filtees(Obj_Entry *obj, int flags, RtldLockState *lockstate) in load_filtees()
2646 process_needed(Obj_Entry *obj, Needed_Entry *needed, int flags) in process_needed()
2648 Obj_Entry *obj1; in process_needed()
2666 load_needed_objects(Obj_Entry *first, int flags) in load_needed_objects()
2668 Obj_Entry *obj; in load_needed_objects()
2682 Obj_Entry *obj; in load_preload_objects()
2742 static Obj_Entry *
2743 load_object(const char *name, int fd_u, const Obj_Entry *refobj, int flags) in load_object()
2745 Obj_Entry *obj; in load_object()
2827 static Obj_Entry *
2831 Obj_Entry *obj; in do_load_object()
2899 Obj_Entry *obj; in load_kpreload()
2968 Obj_Entry *
2971 Obj_Entry *obj; in obj_from_addr()
3013 objlist_call_fini(Objlist *list, Obj_Entry *root, RtldLockState *lockstate) in objlist_call_fini()
3102 Obj_Entry *obj; in objlist_call_init()
3192 objlist_find(Objlist *list, const Obj_Entry *obj) in objlist_find()
3209 objlist_push_head(Objlist *list, Obj_Entry *obj) in objlist_push_head()
3219 objlist_push_tail(Objlist *list, Obj_Entry *obj) in objlist_push_tail()
3229 objlist_put_after(Objlist *list, Obj_Entry *listobj, Obj_Entry *obj) in objlist_put_after()
3246 objlist_remove(Objlist *list, Obj_Entry *obj) in objlist_remove()
3262 relocate_object_dag(Obj_Entry *root, bool bind_now, Obj_Entry *rtldobj, in relocate_object_dag()
3287 reloc_textrel_prot(Obj_Entry *obj, bool before) in reloc_textrel_prot()
3314 reloc_relr(Obj_Entry *obj) in reloc_relr()
3340 relocate_object(Obj_Entry *obj, bool bind_now, Obj_Entry *rtldobj, int flags, in relocate_object()
3398 relocate_objects(Obj_Entry *first, bool bind_now, Obj_Entry *rtldobj, int flags, in relocate_objects()
3401 Obj_Entry *obj; in relocate_objects()
3427 resolve_object_ifunc(Obj_Entry *obj, bool bind_now, int flags, in resolve_object_ifunc()
3456 Obj_Entry *obj; in initlist_objects_ifunc()
3671 Obj_Entry *root; in dlclose_locked()
3775 dlopen_cleanup(Obj_Entry *obj, RtldLockState *lockstate) in dlopen_cleanup()
3783 static Obj_Entry *
3784 dlopen_object(const char *name, int fd, Obj_Entry *refobj, int lo_flags, in dlopen_object()
3787 Obj_Entry *obj; in dlopen_object()
3936 const Obj_Entry *obj, *defobj; in do_dlsym()
4121 const Obj_Entry *obj; in _rtld_addr_phdr()
4139 const Obj_Entry *obj; in dladdr()
4195 const Obj_Entry *obj; in dlinfo()
4240 rtld_fill_dl_phdr_info(const Obj_Entry *obj, struct dl_phdr_info *phdr_info) in rtld_fill_dl_phdr_info()
4264 Obj_Entry *obj; in _dl_iterate_phdr_locked()
4283 Obj_Entry *obj, marker; in dl_iterate_phdr()
4349 do_search_info(const Obj_Entry *obj, int request, struct dl_serinfo *info) in do_search_info()
4477 linkmap_add(Obj_Entry *obj) in linkmap_add()
4510 linkmap_delete(Obj_Entry *obj) in linkmap_delete()
4564 release_object(Obj_Entry *obj) in release_object()
4666 symlook_default(SymLook *req, const Obj_Entry *refobj) in symlook_default()
4732 const Obj_Entry *defobj; in symlook_list()
4773 const Obj_Entry *defobj; in symlook_needed()
4802 symlook_obj_load_filtees(SymLook *req, SymLook *req1, const Obj_Entry *obj, in symlook_obj_load_filtees()
4809 load_filtees(__DECONST(Obj_Entry *, obj), flags, req->lockstate); in symlook_obj_load_filtees()
4825 symlook_obj(SymLook *req, const Obj_Entry *obj) in symlook_obj()
4866 matched_symbol(SymLook *req, const Obj_Entry *obj, Sym_Match_Result *result, in matched_symbol()
4979 symlook_obj1_sysv(SymLook *req, const Obj_Entry *obj) in symlook_obj1_sysv()
5009 symlook_obj1_gnu(SymLook *req, const Obj_Entry *obj) in symlook_obj1_gnu()
5074 trace_print_obj(Obj_Entry *obj, const char *name, const char *path, in trace_print_obj()
5135 trace_loaded_objects(Obj_Entry *obj, bool show_preload) in trace_loaded_objects()
5195 unload_object(Obj_Entry *root, RtldLockState *lockstate) in unload_object()
5197 Obj_Entry marker, *obj, *next; in unload_object()
5238 unlink_object(Obj_Entry *root) in unlink_object()
5256 ref_dag(Obj_Entry *root) in ref_dag()
5266 unref_dag(Obj_Entry *root) in unref_dag()
5361 allocate_tls(Obj_Entry *objs, void *oldtcb, size_t tcbsize, size_t tcbalign) in allocate_tls()
5363 Obj_Entry *obj; in allocate_tls()
5473 allocate_tls(Obj_Entry *objs, void *oldtls, size_t tcbsize, size_t tcbalign) in allocate_tls()
5475 Obj_Entry *obj; in allocate_tls()
5584 Obj_Entry *obj; in allocate_module_tls()
5616 allocate_tls_offset(Obj_Entry *obj) in allocate_tls_offset()
5664 free_tls_offset(Obj_Entry *obj) in free_tls_offset()
5707 object_add_name(Obj_Entry *obj, const char *name) in object_add_name()
5722 object_match_name(const Obj_Entry *obj, const char *name) in object_match_name()
5733 static Obj_Entry *
5734 locate_dependency(const Obj_Entry *obj, const char *name) in locate_dependency()
5764 check_object_provided_version(Obj_Entry *refobj, const Obj_Entry *depobj, in check_object_provided_version()
5804 rtld_verify_object_versions(Obj_Entry *obj) in rtld_verify_object_versions()
5810 const Obj_Entry *depobj; in rtld_verify_object_versions()
5944 fetch_ventry(const Obj_Entry *obj, unsigned long symnum) in fetch_ventry()
5969 Obj_Entry *obj; in _rtld_is_dlopened()
5988 obj_remap_relro(Obj_Entry *obj, int prot) in obj_remap_relro()
6013 obj_disable_relro(Obj_Entry *obj) in obj_disable_relro()
6019 obj_enforce_relro(Obj_Entry *obj) in obj_enforce_relro()
6044 Obj_Entry *obj; in distribute_static_tls()