Lines Matching defs:dst
87 gelf_getehdr(Elf *elf, GElf_Ehdr *dst)
102 (void) memcpy(dst->e_ident, e->e_ident, EI_NIDENT);
103 dst->e_type = e->e_type;
104 dst->e_machine = e->e_machine;
105 dst->e_version = e->e_version;
106 dst->e_entry = (Elf64_Addr)e->e_entry;
107 dst->e_phoff = (Elf64_Off)e->e_phoff;
108 dst->e_shoff = (Elf64_Off)e->e_shoff;
109 dst->e_flags = e->e_flags;
110 dst->e_ehsize = e->e_ehsize;
111 dst->e_phentsize = e->e_phentsize;
112 dst->e_phnum = e->e_phnum;
113 dst->e_shentsize = e->e_shentsize;
114 dst->e_shnum = e->e_shnum;
115 dst->e_shstrndx = e->e_shstrndx;
118 return (dst);
126 *dst = *e;
129 return (dst);
216 gelf_getphdr(Elf *elf, int ndx, GElf_Phdr *dst)
242 dst->p_type = p->p_type;
243 dst->p_flags = p->p_flags;
244 dst->p_offset = (Elf64_Off)p->p_offset;
245 dst->p_vaddr = (Elf64_Addr)p->p_vaddr;
246 dst->p_paddr = (Elf64_Addr)p->p_paddr;
247 dst->p_filesz = (Elf64_Xword)p->p_filesz;
248 dst->p_memsz = (Elf64_Xword)p->p_memsz;
249 dst->p_align = (Elf64_Xword)p->p_align;
254 *dst = ((GElf_Phdr *)phdrs)[ndx];
258 return (dst);
281 Elf32_Phdr *dst = &((Elf32_Phdr *)elf32_getphdr(elf))[ndx];
283 dst->p_type = src->p_type;
284 dst->p_flags = src->p_flags;
286 dst->p_offset = (Elf32_Off)src->p_offset;
288 dst->p_vaddr = (Elf32_Addr)src->p_vaddr;
290 dst->p_paddr = (Elf32_Addr)src->p_paddr;
292 dst->p_filesz = (Elf32_Word)src->p_filesz;
294 dst->p_memsz = (Elf32_Word)src->p_memsz;
296 dst->p_align = (Elf32_Word)src->p_align;
299 Elf64_Phdr *dst = elf64_getphdr(elf);
301 dst[ndx] = *(GElf_Phdr *)src;
331 gelf_getshdr(Elf_Scn *scn, GElf_Shdr *dst)
343 dst->sh_name = s->sh_name;
344 dst->sh_type = s->sh_type;
345 dst->sh_flags = (Elf64_Xword)s->sh_flags;
346 dst->sh_addr = (Elf64_Addr)s->sh_addr;
347 dst->sh_offset = (Elf64_Off)s->sh_offset;
348 dst->sh_size = (Elf64_Xword)s->sh_size;
349 dst->sh_link = s->sh_link;
350 dst->sh_info = s->sh_info;
351 dst->sh_addralign = (Elf64_Xword)s->sh_addralign;
352 dst->sh_entsize = (Elf64_Xword)s->sh_entsize;
355 return (dst);
363 *dst = *(Elf64_Shdr *)s;
366 return (dst);
381 Elf32_Shdr *dst = elf32_getshdr(scn);
383 if (dst == NULL)
387 dst->sh_name = src->sh_name;
388 dst->sh_type = src->sh_type;
390 dst->sh_flags = (Elf32_Word)src->sh_flags;
392 dst->sh_addr = (Elf32_Addr)src->sh_addr;
394 dst->sh_offset = (Elf32_Off) src->sh_offset;
396 dst->sh_size = (Elf32_Word)src->sh_size;
397 dst->sh_link = src->sh_link;
398 dst->sh_info = src->sh_info;
400 dst->sh_addralign = (Elf32_Word)src->sh_addralign;
402 dst->sh_entsize = (Elf32_Word)src->sh_entsize;
407 Elf64_Shdr * dst = elf64_getshdr(scn);
409 if (dst == NULL)
413 *dst = *(Elf64_Shdr *)src;
430 gelf_xlatetof(Elf *elf, Elf_Data *dst, const Elf_Data *src, unsigned encode)
434 if ((elf == NULL) || (dst == NULL) || (src == NULL))
439 return (elf32_xlatetof(dst, src, encode));
441 return (elf64_xlatetof(dst, src, encode));
449 gelf_xlatetom(Elf *elf, Elf_Data *dst, const Elf_Data *src, unsigned encode)
453 if ((elf == NULL) || (dst == NULL) || (src == NULL))
458 return (elf32_xlatetom(dst, src, encode));
460 return (elf64_xlatetom(dst, src, encode));
468 gelf_getsym(Elf_Data * data, int ndx, GElf_Sym * dst)
490 dst = NULL;
494 dst->st_name = s->st_name;
495 dst->st_value = (Elf64_Addr)s->st_value;
496 dst->st_size = (Elf64_Xword)s->st_size;
497 dst->st_info = ELF64_ST_INFO(ELF32_ST_BIND(s->st_info),
499 dst->st_other = s->st_other;
500 dst->st_shndx = s->st_shndx;
502 *dst = ((GElf_Sym *)data->d_buf)[ndx];
505 return (dst);
510 gelf_update_sym(Elf_Data *dst, int ndx, GElf_Sym *src)
515 if (dst == NULL)
518 class = EDATA_CLASS(dst);
528 ELFWLOCK(EDATA_ELF(dst));
530 if ((entsize * ndx) >= dst->d_size) {
536 d = &(((Elf32_Sym *)dst->d_buf)[ndx]);
547 ((Elf64_Sym *)dst->d_buf)[ndx] = *((Elf64_Sym *)src);
549 ELFUNLOCK(EDATA_ELF(dst));
555 gelf_getsyminfo(Elf_Data *data, int ndx, GElf_Syminfo *dst)
576 dst = NULL;
581 dst->si_boundto = si->si_boundto;
582 dst->si_flags = si->si_flags;
584 *dst = ((GElf_Syminfo *)data->d_buf)[ndx];
587 return (dst);
591 gelf_update_syminfo(Elf_Data *dst, int ndx, GElf_Syminfo *src)
596 if (dst == NULL)
599 class = EDATA_CLASS(dst);
608 ELFWLOCK(EDATA_ELF(dst));
610 if ((entsize * ndx) >= dst->d_size) {
614 Elf32_Syminfo * d = &(((Elf32_Syminfo *)dst->d_buf)[ndx]);
618 ((Elf64_Syminfo *)dst->d_buf)[ndx] = *((Elf64_Syminfo *)src);
620 ELFUNLOCK(EDATA_ELF(dst));
625 gelf_getdyn(Elf_Data *data, int ndx, GElf_Dyn *dst)
646 dst = NULL;
650 dst->d_tag = (Elf32_Sword)d->d_tag;
651 dst->d_un.d_val = (Elf32_Word) d->d_un.d_val;
653 *dst = ((Elf64_Dyn *)data->d_buf)[ndx];
656 return (dst);
661 gelf_update_dyn(Elf_Data *dst, int ndx, GElf_Dyn *src)
666 if (dst == NULL)
669 class = EDATA_CLASS(dst);
678 ELFWLOCK(EDATA_ELF(dst));
680 if ((entsize * ndx) >= dst->d_size) {
684 Elf32_Dyn * d = &((Elf32_Dyn *)dst->d_buf)[ndx];
691 ((Elf64_Dyn *)dst->d_buf)[ndx] = *(Elf64_Dyn*)src;
693 ELFUNLOCK(EDATA_ELF(dst));
741 gelf_getmove(Elf_Data *src, int ndx, GElf_Move *dst)
762 dst = NULL;
766 dst->m_poffset = (Elf64_Word)m->m_poffset;
767 dst->m_repeat = (Elf64_Xword)m->m_repeat;
768 dst->m_stride = (Elf64_Half)m->m_stride;
769 dst->m_value = (Elf64_Xword)m->m_value;
770 dst->m_info = ELF64_M_INFO(ELF32_M_SYM(m->m_info),
773 *dst = ((Elf64_Move *)src->d_buf)[ndx];
777 return (dst);
822 gelf_getrela(Elf_Data *src, int ndx, GElf_Rela *dst)
843 dst = NULL;
847 dst->r_offset = (GElf_Addr)r->r_offset;
848 dst->r_addend = (GElf_Addr)r->r_addend;
855 dst->r_info = ELF64_R_INFO(
859 *dst = ((Elf64_Rela *)src->d_buf)[ndx];
862 return (dst);
867 gelf_update_rela(Elf_Data *dst, int ndx, GElf_Rela *src)
872 if (dst == NULL)
875 class = EDATA_CLASS(dst);
884 ELFWLOCK(EDATA_ELF(dst));
886 if ((entsize * ndx) >= dst->d_size) {
890 Elf32_Rela * r = &((Elf32_Rela *)dst->d_buf)[ndx];
905 ((Elf64_Rela *)dst->d_buf)[ndx] = *(Elf64_Rela *)src;
908 ELFUNLOCK(EDATA_ELF(dst));
915 gelf_getrel(Elf_Data *src, int ndx, GElf_Rel *dst)
936 dst = NULL;
940 dst->r_offset = (GElf_Addr)r->r_offset;
947 dst->r_info = ELF64_R_INFO(ELF32_R_SYM(r->r_info),
950 *dst = ((Elf64_Rel *)src->d_buf)[ndx];
953 return (dst);
958 gelf_update_rel(Elf_Data *dst, int ndx, GElf_Rel *src)
963 if (dst == NULL)
966 class = EDATA_CLASS(dst);
975 ELFWLOCK(EDATA_ELF(dst));
977 if ((entsize * ndx) >= dst->d_size) {
981 Elf32_Rel * r = &((Elf32_Rel *)dst->d_buf)[ndx];
995 ((Elf64_Rel *)dst->d_buf)[ndx] = *(Elf64_Rel *)src;
998 ELFUNLOCK(EDATA_ELF(dst));
1017 gelf_getcap(Elf_Data *data, int ndx, GElf_Cap *dst)
1039 dst = NULL;
1043 dst->c_tag = (Elf64_Xword)c->c_tag;
1044 dst->c_un.c_val = (Elf64_Xword)c->c_un.c_val;
1046 *dst = ((GElf_Cap *)data->d_buf)[ndx];
1049 return (dst);
1053 gelf_update_cap(Elf_Data *dst, int ndx, GElf_Cap *src)
1058 if (dst == NULL)
1061 class = EDATA_CLASS(dst);
1071 ELFWLOCK(EDATA_ELF(dst));
1073 if ((entsize * ndx) >= dst->d_size) {
1077 Elf32_Cap *c = &(((Elf32_Cap *)dst->d_buf)[ndx]);
1082 ((Elf64_Cap *)dst->d_buf)[ndx] = *((Elf64_Cap *)src);
1084 ELFUNLOCK(EDATA_ELF(dst));