Lines Matching refs:elf

51 	register Elf	*elf;  in _elf_member()  local
77 if ((elf = (Elf *)calloc(1, sizeof (Elf))) == 0) { in _elf_member()
82 elf->ed_parent = ref; in _elf_member()
83 elf->ed_fd = fd; in _elf_member()
84 elf->ed_myflags |= flags; in _elf_member()
85 elf->ed_armem = mh; in _elf_member()
86 elf->ed_fsz = mh->m_hdr.ar_size; in _elf_member()
87 elf->ed_baseoff = ref->ed_baseoff + base; in _elf_member()
88 elf->ed_memoff = base - mh->m_slide; in _elf_member()
89 elf->ed_siboff = base + elf->ed_fsz + (elf->ed_fsz & 1); in _elf_member()
90 ref->ed_nextoff = elf->ed_siboff; in _elf_member()
91 elf->ed_image = ref->ed_image; in _elf_member()
92 elf->ed_imagesz = ref->ed_imagesz; in _elf_member()
93 elf->ed_vm = ref->ed_vm; in _elf_member()
94 elf->ed_vmsz = ref->ed_vmsz; in _elf_member()
95 elf->ed_ident = ref->ed_ident + base - mh->m_slide; in _elf_member()
103 elf->ed_status = ES_COOKED; in _elf_member()
104 return (elf); in _elf_member()
111 Elf *elf; in _elf_regular() local
113 if ((elf = (Elf *)calloc(1, sizeof (Elf))) == 0) { in _elf_regular()
118 elf->ed_fd = fd; in _elf_regular()
119 elf->ed_myflags |= flags; in _elf_regular()
120 if (_elf_inmap(elf) != OK_YES) { in _elf_regular()
121 free(elf); in _elf_regular()
124 return (elf); in _elf_regular()
129 _elf_config(Elf * elf) in _elf_config() argument
134 ELFRWLOCKINIT(&elf->ed_rwlock); in _elf_config()
139 base = elf->ed_ident; in _elf_config()
140 if ((elf->ed_fsz >= EI_NIDENT) && in _elf_config()
141 (_elf_vm(elf, (size_t)0, (size_t)EI_NIDENT) == OK_YES) && in _elf_config()
146 elf->ed_kind = ELF_K_ELF; in _elf_config()
147 elf->ed_class = base[EI_CLASS]; in _elf_config()
148 elf->ed_encode = base[EI_DATA]; in _elf_config()
149 if ((elf->ed_version = base[EI_VERSION]) == 0) in _elf_config()
150 elf->ed_version = 1; in _elf_config()
151 elf->ed_identsz = EI_NIDENT; in _elf_config()
159 if ((elf->ed_vm == 0) && ((elf->ed_myflags & EDF_WRITE) == 0) && in _elf_config()
160 (elf->ed_encode != encode)) { in _elf_config()
161 if (mprotect((char *)elf->ed_image, elf->ed_imagesz, in _elf_config()
167 return (elf); in _elf_config()
173 if ((elf->ed_fsz >= SARMAG) && in _elf_config()
174 (_elf_vm(elf, (size_t)0, (size_t)SARMAG) == OK_YES) && in _elf_config()
176 _elf_arinit(elf); in _elf_config()
177 elf->ed_kind = ELF_K_AR; in _elf_config()
178 elf->ed_identsz = SARMAG; in _elf_config()
179 return (elf); in _elf_config()
187 elf->ed_kind = ELF_K_NONE; in _elf_config()
188 if ((elf->ed_identsz = elf->ed_fsz) > 512) in _elf_config()
189 elf->ed_identsz = 512; in _elf_config()
191 return (elf); in _elf_config()
197 Elf *elf; in elf_memory() local
209 if ((elf = (Elf *)calloc(1, sizeof (Elf))) == 0) { in elf_memory()
213 elf->ed_fd = -1; in elf_memory()
214 elf->ed_myflags |= EDF_READ | EDF_MEMORY; in elf_memory()
215 elf->ed_image = elf->ed_ident = image; in elf_memory()
216 elf->ed_imagesz = elf->ed_fsz = elf->ed_identsz = sz; in elf_memory()
217 elf->ed_kind = ELF_K_ELF; in elf_memory()
218 elf->ed_class = image[EI_CLASS]; in elf_memory()
219 elf->ed_encode = image[EI_DATA]; in elf_memory()
220 if ((elf->ed_version = image[EI_VERSION]) == 0) in elf_memory()
221 elf->ed_version = 1; in elf_memory()
222 elf->ed_identsz = EI_NIDENT; in elf_memory()
223 elf->ed_activ = 1; in elf_memory()
224 elf = _elf_config(elf); in elf_memory()
225 return (elf); in elf_memory()
296 register Elf *elf; in elf_begin() local
330 if ((elf = (Elf *)calloc(1, sizeof (Elf))) == 0) { in elf_begin()
334 ELFRWLOCKINIT(&elf->ed_rwlock); in elf_begin()
335 elf->ed_fd = fd; in elf_begin()
336 elf->ed_activ = 1; in elf_begin()
337 elf->ed_myflags |= EDF_WRITE; in elf_begin()
339 elf->ed_myflags |= EDF_WRALLOC; in elf_begin()
340 return (elf); in elf_begin()
357 if ((elf = _elf_regular(fd, flags)) == 0) in elf_begin()
374 if ((elf = _elf_member(fd, ref, flags)) == 0) { in elf_begin()
381 elf->ed_activ = 1; in elf_begin()
382 elf = _elf_config(elf); in elf_begin()
384 return (elf); in elf_begin()