Lines Matching refs:adp
189 Ar_desc * adp;
212 if ((adp = libld_malloc(sizeof (Ar_desc))) == NULL)
214 adp->ad_name = name;
215 adp->ad_elf = elf;
216 adp->ad_start = start;
218 adp->ad_aux = libld_calloc(sizeof (Ar_aux), number);
219 if (adp->ad_aux == NULL)
222 adp->ad_aux = NULL;
229 adp->ad_flags = ofl->ofl_flags1 & MSK_OF1_ARCHIVE;
236 if (aplist_append(&ofl->ofl_ars, adp, AL_CNT_OFL_LIBS) == NULL)
239 return (adp);
269 ld_ar_member(Ar_desc * adp, Elf_Arsym * arsym, Ar_aux * aup, Ar_mem * amp)
275 if (adp->ad_start == NULL)
287 if (_arsym != adp->ad_start) {
294 } while (_arsym != adp->ad_start);
363 * adp - Archive descriptor
378 ar_input(int fd, Ar_desc *adp, Ofl_desc *ofl, Elf *arelf,
409 adp->ad_flags |= FLG_ARD_EXTRACT;
442 * adp - Archive descriptor
453 ar_extract_bysym(const char *name, int fd, Ar_desc *adp,
472 if (adp->ad_start == NULL) {
473 assert(adp->ad_start != NULL);
489 for (arsym = adp->ad_start, aup = adp->ad_aux; arsym->as_name;
586 if (elf_rand(adp->ad_elf, arsym->as_off) !=
596 adp->ad_elf)) == NULL) {
619 &arelf, adp->ad_elf, arsym->as_off,
672 ld_ar_member(adp, arsym,
684 switch (ar_input(fd, adp, ofl, arelf, arpath,
693 ld_ar_member(adp, arsym, aup, FLG_ARMEM_PROC);
704 ld_ar_member(adp, arsym, aup, FLG_ARMEM_PROC);
719 * adp - Archive descriptor
730 ar_extract_all(const char *name, int fd, Ar_desc *adp, Ofl_desc *ofl,
740 while ((arelf = elf_begin(fd, cmd, adp->ad_elf)) != NULL) {
773 next_off = _elf_getnextoff(adp->ad_elf);
784 (FLG_IF_EXTRACT | FLG_IF_NEEDED), &arelf, adp->ad_elf,
786 (void) elf_rand(adp->ad_elf, next_off);
791 switch (ar_input(fd, adp, ofl, arelf, arpath, rej)) {
807 (void) elf_end(adp->ad_elf);
808 adp->ad_elf = NULL;
821 * adp - Archive descriptor
828 ld_process_archive(const char *name, int fd, Ar_desc *adp, Ofl_desc *ofl)
849 if (adp->ad_elf == NULL)
853 if (!ar_extract_all(name, fd, adp, ofl, &found, &rej))
856 if (!ar_extract_bysym(name, fd, adp, ofl, &found, &rej))