unsigned short usage_count;
unsigned short int init_flag;
unsigned long rtld_flags; /* RTLD_GLOBAL, RTLD_NOW etc. */
- unsigned int nbucket;
- uint32_t *elf_buckets;
+ Elf32_Word nbucket;
+ Elf32_Word *elf_buckets;
struct init_fini_list *init_fini;
struct init_fini_list *rtld_local; /* keep tack of RTLD_LOCAL libs in same group */
/*
* These are only used with ELF style shared libraries
*/
- unsigned long nchain;
- uint32_t *chains;
+ Elf32_Word nchain;
+ Elf32_Word *chains;
unsigned long dynamic_info[DYNAMIC_SIZE];
unsigned long n_phent;
/* This is the hash function that is used by the ELF linker to generate the
* hash table that each executable and library is required to have. We need
* it to decode the hash table. */
-static inline unsigned long _dl_elf_hash(const char *name)
+static inline Elf32_Word _dl_elf_hash(const char *name)
{
unsigned long hash=0;
unsigned long tmp;
char *loadaddr, unsigned long *dynamic_info, unsigned long dynamic_addr,
unsigned long dynamic_size)
{
- uint32_t *hash_addr;
+ Elf32_Word *hash_addr;
struct elf_resolve *tpnt;
int i;
tpnt->libtype = loaded_file;
if (dynamic_info[DT_HASH] != 0) {
- hash_addr = (uint32_t*)dynamic_info[DT_HASH];
+ hash_addr = (Elf32_Word*)dynamic_info[DT_HASH];
tpnt->nbucket = *hash_addr++;
tpnt->nchain = *hash_addr++;
tpnt->elf_buckets = hash_addr;