diff options
author | kan <kan@FreeBSD.org> | 2007-04-03 18:31:20 +0000 |
---|---|---|
committer | kan <kan@FreeBSD.org> | 2007-04-03 18:31:20 +0000 |
commit | 0dd97e2c183c4064e9883accc0097616edb73c80 (patch) | |
tree | 2f24e02761b238e127c61dd19755bf947aa24006 /libexec/rtld-elf/rtld.h | |
parent | 34c2527aa4837fb3920e7a6fa68ac03a68012223 (diff) | |
download | FreeBSD-src-0dd97e2c183c4064e9883accc0097616edb73c80.zip FreeBSD-src-0dd97e2c183c4064e9883accc0097616edb73c80.tar.gz |
Implement dl_iterate_phdr function.
Convert boolean flags in internal Obj_Entry structure into bitfields.
Properly check for loaded segment alignment in map_object.
Diffstat (limited to 'libexec/rtld-elf/rtld.h')
-rw-r--r-- | libexec/rtld-elf/rtld.h | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/libexec/rtld-elf/rtld.h b/libexec/rtld-elf/rtld.h index cc430e8..c7be5235 100644 --- a/libexec/rtld-elf/rtld.h +++ b/libexec/rtld-elf/rtld.h @@ -201,15 +201,16 @@ typedef struct Struct_Obj_Entry { Elf_Addr init; /* Initialization function to call */ Elf_Addr fini; /* Termination function to call */ - bool mainprog; /* True if this is the main program */ - bool rtld; /* True if this is the dynamic linker */ - bool textrel; /* True if there are relocations to text seg */ - bool symbolic; /* True if generated with "-Bsymbolic" */ - bool bind_now; /* True if all relocations should be made first */ - bool traced; /* Already printed in ldd trace output */ - bool jmpslots_done; /* Already have relocated the jump slots */ - bool init_done; /* Already have added object to init list */ - bool tls_done; /* Already allocated offset for static TLS */ + bool mainprog : 1; /* True if this is the main program */ + bool rtld : 1; /* True if this is the dynamic linker */ + bool textrel : 1; /* True if there are relocations to text seg */ + bool symbolic : 1; /* True if generated with "-Bsymbolic" */ + bool bind_now : 1; /* True if all relocations should be made first */ + bool traced : 1; /* Already printed in ldd trace output */ + bool jmpslots_done : 1; /* Already have relocated the jump slots */ + bool init_done : 1; /* Already have added object to init list */ + bool tls_done : 1; /* Already allocated offset for static TLS */ + bool phdr_alloc : 1; /* Phdr is allocated and needs to be freed. */ struct link_map linkmap; /* for GDB and dlinfo() */ Objlist dldags; /* Object belongs to these dlopened DAGs (%) */ |