/titanic_50/usr/src/cmd/sgs/rtld/common/ |
H A D | object.c | 236 Rt_map *nlmp, *tlmp; in elf_obj_fini() local 332 if ((nlmp = elf_new_lmp(lml, CNTL(olmp), &fd, (Addr)hmpp->mr_addr, in elf_obj_fini() 336 MMAPS(nlmp) = hmpp; in elf_obj_fini() 337 MMAPCNT(nlmp) = mnum; in elf_obj_fini() 338 PADSTART(nlmp) = (ulong_t)hmpp->mr_addr; in elf_obj_fini() 339 PADIMLEN(nlmp) = mpp->mr_addr + mpp->mr_msize - hmpp->mr_addr; in elf_obj_fini() 345 lmc = (Lm_cntl *)alist_item_by_offset(lml->lm_lists, CNTL(nlmp)); in elf_obj_fini() 348 if ((tlmp = PREV_RT_MAP(nlmp)) == olmp) in elf_obj_fini() 349 tlmp = nlmp; in elf_obj_fini() 352 NEXT(PREV_RT_MAP(olmp)) = (Link_map *)nlmp; in elf_obj_fini() [all …]
|
H A D | analyze.c | 105 analyze_lmc(Lm_list *lml, Aliste nlmco, Rt_map *nlmp, Rt_map *clmp, in analyze_lmc() argument 122 return (nlmp); in analyze_lmc() 130 if (nlmco != CNTL(nlmp)) in analyze_lmc() 131 return (nlmp); in analyze_lmc() 135 for (lmp = nlmp; lmp; lmp = NEXT_RT_MAP(lmp)) { in analyze_lmc() 156 nlmp = NULL; in analyze_lmc() 173 if (nlmp == lmp) in analyze_lmc() 174 nlmp = olmp; in analyze_lmc() 186 nlmp = NULL; in analyze_lmc() 199 if (MODE(nlmp) & RTLD_CONFGEN) in analyze_lmc() [all …]
|
H A D | dlfcns.c | 382 hdl_initialize(Grp_hdl *ghp, Rt_map *nlmp, int mode, int promote) in hdl_initialize() argument 397 ((FLAGS(nlmp) & FLG_RT_ANALYZED) == 0)) { in hdl_initialize() 530 Rt_map *nlmp = NULL; in dlclose_intn() local 556 nlmp = olml->lm_head; in dlclose_intn() 561 load_completion(nlmp); in dlclose_intn() 644 Rt_map *nlmp; in dlmopen_core() local 725 for (nlmp = lml->lm_head; nlmp; nlmp = NEXT_RT_MAP(nlmp)) { in dlmopen_core() 726 if (((MODE(nlmp) & RTLD_GLOBAL) == 0) || in dlmopen_core() 727 (FLAGS(nlmp) & FLG_RT_DELETE)) in dlmopen_core() 730 if (update_mode(nlmp, MODE(nlmp), mode)) in dlmopen_core() [all …]
|
H A D | elf.c | 365 Rt_map *nlmp; in elf_lazy_load() local 375 if (((nlmp = (Rt_map *)dip->di_info) != NULL) || in elf_lazy_load() 377 return (nlmp); in elf_lazy_load() 433 dip->di_info = nlmp = in elf_lazy_load() 449 if (nlmp && ((bind_one(clmp, nlmp, BND_NEEDED) == 0) || in elf_lazy_load() 450 ((nlmp = analyze_lmc(lml, lmco, nlmp, clmp, in_nfavl)) == NULL) || in elf_lazy_load() 451 (relocate_lmc(lml, lmco, clmp, nlmp, in_nfavl) == 0))) in elf_lazy_load() 452 dip->di_info = nlmp = NULL; in elf_lazy_load() 459 if ((nlmp == NULL) && (lmco != ALIST_OFF_DATA)) in elf_lazy_load() 472 if (nlmp == NULL) { in elf_lazy_load() [all …]
|
H A D | cap.c | 673 Rt_map *nlmp; in cap_filtees() local 689 nlmp = load_path(lml, nlmco, flmp, mode, in cap_filtees() 691 if (nlmp == NULL) in cap_filtees() 702 remove_lmc(lml, flmp, nlmco, NAME(nlmp)); in cap_filtees() 706 pdp->pd_pname = NAME(nlmp); in cap_filtees() 707 pdp->pd_plen = strlen(NAME(nlmp)); in cap_filtees() 712 if (nlmp && ghp) { in cap_filtees() 721 if (nlmp && (lml->lm_tflags | FLAGS1(flmp)) & in cap_filtees() 723 if (audit_objfilter(flmp, ref, nlmp, 0) == 0) { in cap_filtees() 725 nlmp = NULL; in cap_filtees() [all …]
|
H A D | audit.c | 560 _audit_objopen(APlist *list, Rt_map *nlmp, Lmid_t lmid, Audit_info *aip, in _audit_objopen() argument 563 Lm_list *nlml = LIST(nlmp); in _audit_objopen() 579 acp->ac_cookie = (uintptr_t)nlmp; in _audit_objopen() 585 NAME(nlmp), 0, FALSE)); in _audit_objopen() 588 flags = (*alp->al_objopen)((Link_map *)nlmp, lmid, in _audit_objopen() 597 alp->al_libname, NAME(nlmp), flags, FALSE)); in _audit_objopen() 613 if (aip->ai_dynplts || (JMPREL(nlmp) == 0) || in _audit_objopen() 621 pltcnt = PLTRELSZ(nlmp) / RELENT(nlmp); in _audit_objopen() 631 audit_objopen(Rt_map *clmp, Rt_map *nlmp) in audit_objopen() argument 633 Lmid_t lmid = get_linkmap_id(LIST(nlmp)); in audit_objopen() [all …]
|
H A D | setup.c | 114 Rt_map *nlmp = NULL; in preload() local 139 nlmp = load_one(&lml_main, ALIST_OFF_DATA, palp, *clmp, in preload() 144 if (nlmp && (bind_one(*clmp, nlmp, BND_NEEDED) == 0)) in preload() 145 nlmp = NULL; in preload() 147 if (lddstub && nlmp) { in preload() 157 if (bind_one(*clmp, nlmp, BND_REFER) == 0) in preload() 158 nlmp = NULL; in preload() 169 if (nlmp) in preload() 170 *clmp = nlmp; in preload() 177 if (nlmp == NULL) { in preload()
|
H A D | a.out.c | 205 Rt_map *nlmp; in aout_needed() local 282 nlmp = load_one(lml, lmco, palp, clmp, MODE(clmp), 0, 0, in aout_needed() 285 if (((nlmp == NULL) || in aout_needed() 286 (bind_one(clmp, nlmp, BND_NEEDED) == 0)) && in aout_needed()
|
H A D | util.c | 977 load_completion(Rt_map *nlmp) in load_completion() argument 1000 if (nlmp) in load_completion() 1001 nlml = LIST(nlmp); in load_completion() 1003 if (nlmp && nlml->lm_init && ((nlml != &lml_main) || in load_completion() 1005 if ((tobj = tsort(nlmp, nlml->lm_init, in load_completion() 1014 if (nlmp && (nlml != &lml_main)) { in load_completion() 1015 (void) rt_get_extern(nlml, nlmp); in load_completion() 1025 if (nlmp && nlml->lm_tls && ((nlml != &lml_main) || in load_completion() 1029 for (lmp = nlmp; lmp; lmp = NEXT_RT_MAP(lmp)) { in load_completion()
|
/titanic_50/usr/src/cmd/sgs/rtld/amd64/ |
H A D | amd64_elf.c | 214 Rt_map *nlmp, *llmp; in elf_bndr() local 285 nlmp = sr.sr_dmap; in elf_bndr() 290 if (!(FLAGS(nlmp) & FLG_RT_FIXED) && in elf_bndr() 292 symval += ADDR(nlmp); in elf_bndr() 293 if ((lmp != nlmp) && ((FLAGS1(nlmp) & FL1_RT_NOINIFIN) == 0)) { in elf_bndr() 297 if (bind_one(lmp, nlmp, BND_REFER) == 0) in elf_bndr() 301 if ((lml->lm_tflags | AFLAGS(lmp) | AFLAGS(nlmp)) & in elf_bndr() 304 (uintptr_t)SYMTAB(nlmp)) / SYMENT(nlmp)); in elf_bndr() 305 symval = audit_symbind(lmp, nlmp, nsym, symndx, symval, in elf_bndr() 319 (uintptr_t)SYMTAB(nlmp)) / SYMENT(nlmp)); in elf_bndr() [all …]
|
/titanic_50/usr/src/cmd/sgs/rtld/i386/ |
H A D | i386_elf.c | 195 Rt_map *nlmp, *llmp; in elf_bndr() local 264 nlmp = sr.sr_dmap; in elf_bndr() 269 if (!(FLAGS(nlmp) & FLG_RT_FIXED) && in elf_bndr() 271 symval += ADDR(nlmp); in elf_bndr() 272 if ((lmp != nlmp) && ((FLAGS1(nlmp) & FL1_RT_NOINIFIN) == 0)) { in elf_bndr() 276 if (bind_one(lmp, nlmp, BND_REFER) == 0) in elf_bndr() 280 if ((lml->lm_tflags | AFLAGS(lmp) | AFLAGS(nlmp)) & in elf_bndr() 283 (uintptr_t)SYMTAB(nlmp)) / SYMENT(nlmp)); in elf_bndr() 284 symval = audit_symbind(lmp, nlmp, nsym, symndx, symval, in elf_bndr() 298 (uintptr_t)SYMTAB(nlmp)) / SYMENT(nlmp)); in elf_bndr() [all …]
|
/titanic_50/usr/src/cmd/sgs/rtld/sparc/ |
H A D | sparc_elf.c | 352 Rt_map *nlmp, *llmp; in elf_bndr() local 436 nlmp = sr.sr_dmap; in elf_bndr() 441 if (!(FLAGS(nlmp) & FLG_RT_FIXED) && in elf_bndr() 443 symval += ADDR(nlmp); in elf_bndr() 444 if ((lmp != nlmp) && ((FLAGS1(nlmp) & FL1_RT_NOINIFIN) == 0)) { in elf_bndr() 448 if (bind_one(lmp, nlmp, BND_REFER) == 0) in elf_bndr() 452 if ((lml->lm_tflags | AFLAGS(lmp) | AFLAGS(nlmp)) & in elf_bndr() 455 (uintptr_t)SYMTAB(nlmp)) / SYMENT(nlmp)); in elf_bndr() 457 symval = audit_symbind(lmp, nlmp, nsym, symndx, symval, in elf_bndr() 473 (uintptr_t)SYMTAB(nlmp)) / SYMENT(nlmp)); in elf_bndr() [all …]
|
H A D | sparc_a.out.c | 66 Rt_map *lmp, *nlmp, *llmp; in aout_bndr() local 126 nlmp = sr.sr_dmap; in aout_bndr() 131 if (!(FLAGS(nlmp) & FLG_RT_FIXED) && in aout_bndr() 133 symval += (int)(ADDR(nlmp)); in aout_bndr() 134 if ((lmp != nlmp) && ((FLAGS1(nlmp) & FL1_RT_NOINIFIN) == 0)) { in aout_bndr() 138 if (bind_one(lmp, nlmp, BND_REFER) == 0) in aout_bndr() 146 (Off)rp->r_address, (Xword)(-1), PLT_T_NONE, nlmp, in aout_bndr() 167 is_dep_init(nlmp, lmp); in aout_bndr()
|
/titanic_50/usr/src/cmd/sgs/rtld/sparcv9/ |
H A D | sparc_elf.c | 479 Rt_map *nlmp, *llmp; in elf_bndr() local 577 nlmp = sr.sr_dmap; in elf_bndr() 582 if (!(FLAGS(nlmp) & FLG_RT_FIXED) && in elf_bndr() 584 symval += ADDR(nlmp); in elf_bndr() 585 if ((lmp != nlmp) && ((FLAGS1(nlmp) & FL1_RT_NOINIFIN) == 0)) { in elf_bndr() 589 if (bind_one(lmp, nlmp, BND_REFER) == 0) in elf_bndr() 593 if ((lml->lm_tflags | AFLAGS(lmp) | AFLAGS(nlmp)) & in elf_bndr() 597 (uintptr_t)SYMTAB(nlmp)) / SYMENT(nlmp)); in elf_bndr() 599 symval = audit_symbind(lmp, nlmp, nsym, symndx, symval, in elf_bndr() 616 (uintptr_t)SYMTAB(nlmp)) / SYMENT(nlmp)); in elf_bndr() [all …]
|
/titanic_50/usr/src/cmd/sgs/liblddbg/common/ |
H A D | util.c | 303 Dbg_unused_lcinterface(Rt_map *nlmp, Rt_map *olmp, int tag) in Dbg_unused_lcinterface() argument 316 dbg_print(LIST(nlmp), MSG_INTL(MSG_USD_LCINTERFACE), NAME(nlmp), str, in Dbg_unused_lcinterface()
|
H A D | relocate.c | 121 Dbg_reloc_copy(Rt_map *dlmp, Rt_map *nlmp, const char *name, int zero) in Dbg_reloc_copy() argument 135 dbg_print(LIST(dlmp), MSG_INTL(MSG_REL_COPY), NAME(dlmp), NAME(nlmp), in Dbg_reloc_copy()
|