Displaying 4 results from an estimated 4 matches for "dt_strsz".
2019 Jan 16
2
[RFC] Adding support for dynamic entries in yaml2obj
...can be used in place of an address. In this case, the
value of the dynamic entry is the sh_addr of the specified section. (ex.
DT_STRTAB, DT_SYMTAB, DT_HASH, DT_RELA, and others)
3. A value can be specified using hexadecimal or decimal (or other bases
supported by `StringRef::to_integer()`). (ex. DT_STRSZ, DT_SYMENT,
DT_RELAENT, and others)
Here's an example to illustrate this design:
!ELF
FileHeader:
Class: ELFCLASS64
Data: ELFDATA2LSB
Type: ET_DYN
Machine: EM_X86_64
Sections:
- Name: .dynsym
Type: SHT_DYNSYM
Address: 0x1000
- Na...
2007 Mar 05
7
[PATCH 2/10] linux 2.6.18: COMPAT_VDSO
...ed long)ehdr);
+ unsigned j;
+
+ for(j = 0; dyn[j].d_tag != DT_NULL; ++j) {
+ switch(dyn[j].d_tag) {
+ case DT_HASH:
+ case DT_STRTAB:
+ case DT_SYMTAB:
+ case 0x6ffffff0: /* DT_VERSYM */
+ case 0x6ffffffc: /* DT_VERDEF */
+ break;
+ case DT_SONAME:
+ case DT_STRSZ:
+ case 0x6ffffffd: /* DT_VERDEFNUM */
+ continue;
+ case DT_SYMENT:
+ szdynsym = dyn[j].d_un.d_val;
+ continue;
+ default:
+ if (dyn[j].d_tag >= 0x60000000 /* OLD_DT_LOOS */
+ || dyn[j].d_tag < 31 /* DT_ENCODING */
+ || !(dyn[j].d_tag & 1...
2007 Mar 05
7
[PATCH 2/10] linux 2.6.18: COMPAT_VDSO
...ed long)ehdr);
+ unsigned j;
+
+ for(j = 0; dyn[j].d_tag != DT_NULL; ++j) {
+ switch(dyn[j].d_tag) {
+ case DT_HASH:
+ case DT_STRTAB:
+ case DT_SYMTAB:
+ case 0x6ffffff0: /* DT_VERSYM */
+ case 0x6ffffffc: /* DT_VERDEF */
+ break;
+ case DT_SONAME:
+ case DT_STRSZ:
+ case 0x6ffffffd: /* DT_VERDEFNUM */
+ continue;
+ case DT_SYMENT:
+ szdynsym = dyn[j].d_un.d_val;
+ continue;
+ default:
+ if (dyn[j].d_tag >= 0x60000000 /* OLD_DT_LOOS */
+ || dyn[j].d_tag < 31 /* DT_ENCODING */
+ || !(dyn[j].d_tag & 1...
2007 Mar 05
7
[PATCH 2/10] linux 2.6.18: COMPAT_VDSO
...ed long)ehdr);
+ unsigned j;
+
+ for(j = 0; dyn[j].d_tag != DT_NULL; ++j) {
+ switch(dyn[j].d_tag) {
+ case DT_HASH:
+ case DT_STRTAB:
+ case DT_SYMTAB:
+ case 0x6ffffff0: /* DT_VERSYM */
+ case 0x6ffffffc: /* DT_VERDEF */
+ break;
+ case DT_SONAME:
+ case DT_STRSZ:
+ case 0x6ffffffd: /* DT_VERDEFNUM */
+ continue;
+ case DT_SYMENT:
+ szdynsym = dyn[j].d_un.d_val;
+ continue;
+ default:
+ if (dyn[j].d_tag >= 0x60000000 /* OLD_DT_LOOS */
+ || dyn[j].d_tag < 31 /* DT_ENCODING */
+ || !(dyn[j].d_tag & 1...