svn commit: trunk/uClibc/ldso: include ldso

vapier at uclibc.org vapier at uclibc.org
Wed Jul 5 06:41:56 UTC 2006


Author: vapier
Date: 2006-07-04 23:41:54 -0700 (Tue, 04 Jul 2006)
New Revision: 15615

Log:
use ElfW(Addr) in more places

Modified:
   trunk/uClibc/ldso/include/dl-hash.h
   trunk/uClibc/ldso/ldso/dl-elf.c
   trunk/uClibc/ldso/ldso/dl-hash.c
   trunk/uClibc/ldso/ldso/ldso.c


Changeset:
Modified: trunk/uClibc/ldso/include/dl-hash.h
===================================================================
--- trunk/uClibc/ldso/include/dl-hash.h	2006-07-05 06:33:45 UTC (rev 15614)
+++ trunk/uClibc/ldso/include/dl-hash.h	2006-07-05 06:41:54 UTC (rev 15615)
@@ -1,6 +1,6 @@
 /* vi: set sw=4 ts=4: */
 /*
- * Copyright (C) 2000-2005 by Erik Andersen <andersen at codepoet.org>
+ * Copyright (C) 2000-2006 by Erik Andersen <andersen at codepoet.org>
  *
  * GNU Lesser General Public License version 2.1 or later.
  */
@@ -17,7 +17,7 @@
 	unsigned long nlist; /* Number of entries in init_fini */
 };
 
-struct dyn_elf{
+struct dyn_elf {
   struct elf_resolve * dyn;
   struct dyn_elf * next_handle;  /* Used by dlopen et al. */
   struct init_fini init_fini;
@@ -25,7 +25,7 @@
   struct dyn_elf * prev;
 };
 
-struct elf_resolve{
+struct elf_resolve {
   /* These entries must be in this order to be compatible with the interface used
      by gdb to obtain the list of symbols. */
   ElfW(Addr) loadaddr;		/* Base address shared object is loaded at.  */
@@ -76,11 +76,11 @@
 extern struct elf_resolve * _dl_loaded_modules;
 extern struct dyn_elf 	  * _dl_handles;
 
-extern struct elf_resolve * _dl_add_elf_hash_table(const char * libname, 
-	char * loadaddr, unsigned long * dynamic_info, 
+extern struct elf_resolve * _dl_add_elf_hash_table(const char * libname,
+	ElfW(Addr) loadaddr, unsigned long * dynamic_info,
 	unsigned long dynamic_addr, unsigned long dynamic_size);
 
-extern char * _dl_find_hash(const char * name, struct dyn_elf * rpnt1, 
+extern char * _dl_find_hash(const char * name, struct dyn_elf * rpnt1,
 			    struct elf_resolve *mytpnt, int type_class);
 
 extern int _dl_linux_dynamic_link(void);
@@ -95,7 +95,6 @@
   return 1;
 }
 
-
 #define LD_ERROR_NOFILE 1
 #define LD_ERROR_NOZERO 2
 #define LD_ERROR_NOTELF 3
@@ -107,8 +106,4 @@
 #define LD_BAD_HANDLE 9
 #define LD_NO_SYMBOL 10
 
-
-
 #endif /* _LD_HASH_H_ */
-
-

Modified: trunk/uClibc/ldso/ldso/dl-elf.c
===================================================================
--- trunk/uClibc/ldso/ldso/dl-elf.c	2006-07-05 06:33:45 UTC (rev 15614)
+++ trunk/uClibc/ldso/ldso/dl-elf.c	2006-07-05 06:41:54 UTC (rev 15615)
@@ -588,7 +588,7 @@
 #endif
 	}
 
-	tpnt = _dl_add_elf_hash_table(libname, (char *) libaddr, dynamic_info,
+	tpnt = _dl_add_elf_hash_table(libname, libaddr, dynamic_info,
 			dynamic_addr, 0);
 	tpnt->relro_addr = relro_addr;
 	tpnt->relro_size = relro_size;

Modified: trunk/uClibc/ldso/ldso/dl-hash.c
===================================================================
--- trunk/uClibc/ldso/ldso/dl-hash.c	2006-07-05 06:33:45 UTC (rev 15614)
+++ trunk/uClibc/ldso/ldso/dl-hash.c	2006-07-05 06:41:54 UTC (rev 15615)
@@ -4,7 +4,7 @@
  * after resolving ELF shared library symbols
  *
  * Copyright (C) 2004 by Joakim Tjernlund <joakim.tjernlund at lumentis.se>
- * Copyright (C) 2000-2004 by Erik Andersen <andersen at codepoet.org>
+ * Copyright (C) 2000-2006 by Erik Andersen <andersen at codepoet.org>
  * Copyright (c) 1994-2000 Eric Youngdale, Peter MacDonald,
  *				David Engel, Hongjiu Lu and Mitch D'Souza
  *
@@ -83,7 +83,7 @@
  * externals properly.
  */
 struct elf_resolve *_dl_add_elf_hash_table(const char *libname,
-	char *loadaddr, unsigned long *dynamic_info, unsigned long dynamic_addr,
+	ElfW(Addr) loadaddr, unsigned long *dynamic_info, unsigned long dynamic_addr,
 	attribute_unused unsigned long dynamic_size)
 {
 	Elf_Symndx *hash_addr;
@@ -117,7 +117,7 @@
 		hash_addr += tpnt->nbucket;
 		tpnt->chains = hash_addr;
 	}
-	tpnt->loadaddr = (ElfW(Addr))loadaddr;
+	tpnt->loadaddr = loadaddr;
 	for (i = 0; i < DYNAMIC_SIZE; i++)
 		tpnt->dynamic_info[i] = dynamic_info[i];
 	return tpnt;

Modified: trunk/uClibc/ldso/ldso/ldso.c
===================================================================
--- trunk/uClibc/ldso/ldso/ldso.c	2006-07-05 06:33:45 UTC (rev 15614)
+++ trunk/uClibc/ldso/ldso/ldso.c	2006-07-05 06:41:54 UTC (rev 15615)
@@ -4,7 +4,7 @@
  * after resolving ELF shared library symbols
  *
  * Copyright (C) 2005 by Joakim Tjernlund
- * Copyright (C) 2000-2004 by Erik Andersen <andersen at codepoet.org>
+ * Copyright (C) 2000-2006 by Erik Andersen <andersen at codepoet.org>
  * Copyright (c) 1994-2000 Eric Youngdale, Peter MacDonald,
  *				David Engel, Hongjiu Lu and Mitch D'Souza
  *
@@ -173,7 +173,7 @@
 	}
 }
 
-void _dl_get_ready_to_run(struct elf_resolve *tpnt, unsigned long load_addr,
+void _dl_get_ready_to_run(struct elf_resolve *tpnt, ElfW(Addr) load_addr,
 			  ElfW(auxv_t) auxvt[AT_EGID + 1], char **envp,
 			  char **argv)
 {
@@ -346,7 +346,7 @@
 				continue;
 #endif
 			/* OK, we have what we need - slip this one into the list. */
-			app_tpnt = _dl_add_elf_hash_table(_dl_progname, (char *)app_tpnt->loadaddr,
+			app_tpnt = _dl_add_elf_hash_table(_dl_progname, app_tpnt->loadaddr,
 					app_tpnt->dynamic_info, ppnt->p_vaddr + app_tpnt->loadaddr, ppnt->p_filesz);
 			_dl_loaded_modules->libtype = elf_executable;
 			_dl_loaded_modules->ppnt = (ElfW(Phdr) *) auxvt[AT_PHDR].a_un.a_val;
@@ -718,7 +718,7 @@
 		ElfW(Phdr) *myppnt = (ElfW(Phdr) *) (load_addr + epnt->e_phoff);
 		int j;
 
-		tpnt = _dl_add_elf_hash_table(tpnt->libname, (char *)load_addr,
+		tpnt = _dl_add_elf_hash_table(tpnt->libname, load_addr,
 					      tpnt->dynamic_info,
 					      (unsigned long)tpnt->dynamic_addr,
 					      0);




More information about the uClibc-cvs mailing list