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