summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--modutils/insmod.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/modutils/insmod.c b/modutils/insmod.c
index 5960b59..7325913 100644
--- a/modutils/insmod.c
+++ b/modutils/insmod.c
@@ -282,7 +282,7 @@ extern int insmod_ng_main( int argc, char **argv);
#ifndef MODUTILS_MODULE_H
static const int MODUTILS_MODULE_H = 1;
-#ident "$Id: insmod.c,v 1.111 2004/01/05 23:49:37 andersen Exp $"
+#ident "$Id: insmod.c,v 1.112 2004/02/18 10:14:17 mjn3 Exp $"
/* This file contains the structures used by the 2.0 and 2.1 kernels.
We do not use the kernel headers directly because we do not wish
@@ -503,7 +503,7 @@ int delete_module(const char *);
#ifndef MODUTILS_OBJ_H
static const int MODUTILS_OBJ_H = 1;
-#ident "$Id: insmod.c,v 1.111 2004/01/05 23:49:37 andersen Exp $"
+#ident "$Id: insmod.c,v 1.112 2004/02/18 10:14:17 mjn3 Exp $"
/* The relocatable object is manipulated using elfin types. */
@@ -3589,8 +3589,10 @@ static struct obj_file *obj_load(FILE * fp, int loadprogbits)
const char *name;
if (sym->st_name)
name = strtab + sym->st_name;
- else
+ else if (sym->st_shndx < shnum)
name = f->sections[sym->st_shndx]->name;
+ else
+ continue;
#if defined(__SH5__)
/*