Browse Source

use Elf32_Word instead of uint32_t since that is what the ELF spec refers to

Mike Frysinger 20 years ago
parent
commit
43346101c5
2 changed files with 7 additions and 7 deletions
  1. 4 4
      ldso/include/dl-hash.h
  2. 3 3
      ldso/ldso/dl-hash.c

+ 4 - 4
ldso/include/dl-hash.h

@@ -32,15 +32,15 @@ struct elf_resolve{
   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;

+ 3 - 3
ldso/ldso/dl-hash.c

@@ -57,7 +57,7 @@ struct dyn_elf *_dl_handles = NULL;
 /* 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;
@@ -101,7 +101,7 @@ struct elf_resolve *_dl_add_elf_hash_table(const char *libname,
 	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;
 
@@ -125,7 +125,7 @@ struct elf_resolve *_dl_add_elf_hash_table(const char *libname,
 	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;