Lines Matching refs:scn
63 static Elf_Scn *elf_find_next_scn_by_type(Elf *elf, int sh_type, Elf_Scn *scn) in elf_find_next_scn_by_type() argument
65 while ((scn = elf_nextscn(elf, scn)) != NULL) { in elf_find_next_scn_by_type()
68 if (!gelf_getshdr(scn, &sh)) in elf_find_next_scn_by_type()
71 return scn; in elf_find_next_scn_by_type()
101 Elf_Scn *scn = NULL; in elf_sym_iter_new() local
112 scn = elf_find_next_scn_by_type(elf, sh_type, NULL); in elf_sym_iter_new()
113 if (!scn) { in elf_sym_iter_new()
119 if (!gelf_getshdr(scn, &sh)) in elf_sym_iter_new()
123 iter->syms = elf_getdata(scn, 0); in elf_sym_iter_new()
137 scn = elf_find_next_scn_by_type(elf, SHT_GNU_versym, NULL); in elf_sym_iter_new()
138 if (!scn) in elf_sym_iter_new()
140 iter->versyms = elf_getdata(scn, 0); in elf_sym_iter_new()
142 scn = elf_find_next_scn_by_type(elf, SHT_GNU_verdef, NULL); in elf_sym_iter_new()
143 if (!scn) in elf_sym_iter_new()
146 iter->verdefs = elf_getdata(scn, 0); in elf_sym_iter_new()
147 if (!iter->verdefs || !gelf_getshdr(scn, &sh)) { in elf_sym_iter_new()