summaryrefslogtreecommitdiff
path: root/ldso/ldso/dl-hash.c
diff options
context:
space:
mode:
authorEric Andersen <andersen@codepoet.org>2002-08-19 10:22:38 +0000
committerEric Andersen <andersen@codepoet.org>2002-08-19 10:22:38 +0000
commit5a66fdf15990341c1732c77ef2d1fbc8510f6899 (patch)
treed41a4cb8a59ccccbde4da9286170cc17b1a3765d /ldso/ldso/dl-hash.c
parent0d86dfc46feaf8cce5a1d1e383e80f29d83ceaf1 (diff)
some updates from Stefan Allius to make up the SuperH shared lib
loader build properly. Mostly just sprinkling casts, and making static some things that should be static.
Diffstat (limited to 'ldso/ldso/dl-hash.c')
-rw-r--r--ldso/ldso/dl-hash.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/ldso/ldso/dl-hash.c b/ldso/ldso/dl-hash.c
index 94744de3c..282555f93 100644
--- a/ldso/ldso/dl-hash.c
+++ b/ldso/ldso/dl-hash.c
@@ -78,7 +78,7 @@ unsigned long _dl_elf_hash(const char *name)
/*
* Check to see if a library has already been added to the hash chain.
*/
-struct elf_resolve *_dl_check_hashed_files(char *libname)
+struct elf_resolve *_dl_check_hashed_files(const char *libname)
{
struct elf_resolve *tpnt;
int len = _dl_strlen(libname);
@@ -98,7 +98,7 @@ struct elf_resolve *_dl_check_hashed_files(char *libname)
* externals properly.
*/
-struct elf_resolve *_dl_add_elf_hash_table(char *libname,
+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)
{
@@ -128,7 +128,7 @@ struct elf_resolve *_dl_add_elf_hash_table(char *libname,
tpnt->libtype = loaded_file;
if (dynamic_info[DT_HASH] != 0) {
- hash_addr = (unsigned long *) (dynamic_info[DT_HASH] + loadaddr);
+ hash_addr = (unsigned long *) (intptr_t)(dynamic_info[DT_HASH] + loadaddr);
tpnt->nbucket = *hash_addr++;
tpnt->nchain = *hash_addr++;
tpnt->elf_buckets = hash_addr;
@@ -162,7 +162,7 @@ struct elf_resolve *_dl_add_elf_hash_table(char *libname,
* relocations or when we call an entry in the PLT table for the first time.
*/
-char *_dl_find_hash(char *name, struct dyn_elf *rpnt1,
+char *_dl_find_hash(const char *name, struct dyn_elf *rpnt1,
struct elf_resolve *f_tpnt, enum caller_type caller_type)
{
struct elf_resolve *tpnt;
@@ -245,7 +245,7 @@ char *_dl_find_hash(char *name, struct dyn_elf *rpnt1,
* Avoid calling .urem here.
*/
do_rem(hn, elf_hash_number, tpnt->nbucket);
- symtab = (Elf32_Sym *) (tpnt->dynamic_info[DT_SYMTAB] + tpnt->loadaddr);
+ symtab = (Elf32_Sym *) (intptr_t) (tpnt->dynamic_info[DT_SYMTAB] + tpnt->loadaddr);
strtab = (char *) (tpnt->dynamic_info[DT_STRTAB] + tpnt->loadaddr);
/*
* This crap is required because the first instance of a