aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Kraai <kraai@debian.org>2001-01-04 02:00:17 +0000
committerMatt Kraai <kraai@debian.org>2001-01-04 02:00:17 +0000
commit70a7855980731a9605c5643720680f299d90a125 (patch)
tree689f6b27d3e5809b625682fd860ab4d2475c9018
parent1171c2fcb48026066d96793a852c06e5125b1fc9 (diff)
downloadbusybox-w32-70a7855980731a9605c5643720680f299d90a125.tar.gz
busybox-w32-70a7855980731a9605c5643720680f299d90a125.tar.bz2
busybox-w32-70a7855980731a9605c5643720680f299d90a125.zip
Fix symbol table manipulation (report and fix by Larry Doolittle).
-rw-r--r--insmod.c7
-rw-r--r--modutils/insmod.c7
2 files changed, 8 insertions, 6 deletions
diff --git a/insmod.c b/insmod.c
index 7391b4fb2..a499bcdaa 100644
--- a/insmod.c
+++ b/insmod.c
@@ -78,7 +78,7 @@
78#ifndef MODUTILS_MODULE_H 78#ifndef MODUTILS_MODULE_H
79#define MODUTILS_MODULE_H 1 79#define MODUTILS_MODULE_H 1
80 80
81#ident "$Id: insmod.c,v 1.34 2000/12/22 01:48:07 kraai Exp $" 81#ident "$Id: insmod.c,v 1.35 2001/01/04 02:00:17 kraai Exp $"
82 82
83/* This file contains the structures used by the 2.0 and 2.1 kernels. 83/* This file contains the structures used by the 2.0 and 2.1 kernels.
84 We do not use the kernel headers directly because we do not wish 84 We do not use the kernel headers directly because we do not wish
@@ -284,7 +284,7 @@ int delete_module(const char *);
284#ifndef MODUTILS_OBJ_H 284#ifndef MODUTILS_OBJ_H
285#define MODUTILS_OBJ_H 1 285#define MODUTILS_OBJ_H 1
286 286
287#ident "$Id: insmod.c,v 1.34 2000/12/22 01:48:07 kraai Exp $" 287#ident "$Id: insmod.c,v 1.35 2001/01/04 02:00:17 kraai Exp $"
288 288
289/* The relocatable object is manipulated using elfin types. */ 289/* The relocatable object is manipulated using elfin types. */
290 290
@@ -1704,7 +1704,8 @@ old_init_module(const char *m_name, struct obj_file *f,
1704 ksym->name = 1704 ksym->name =
1705 (unsigned long) str - (unsigned long) symtab; 1705 (unsigned long) str - (unsigned long) symtab;
1706 1706
1707 str = strcpy(str, sym->name) + 1; 1707 strcpy(str, sym->name);
1708 str += strlen(sym->name) + 1;
1708 ksym++; 1709 ksym++;
1709 } 1710 }
1710 } 1711 }
diff --git a/modutils/insmod.c b/modutils/insmod.c
index 7391b4fb2..a499bcdaa 100644
--- a/modutils/insmod.c
+++ b/modutils/insmod.c
@@ -78,7 +78,7 @@
78#ifndef MODUTILS_MODULE_H 78#ifndef MODUTILS_MODULE_H
79#define MODUTILS_MODULE_H 1 79#define MODUTILS_MODULE_H 1
80 80
81#ident "$Id: insmod.c,v 1.34 2000/12/22 01:48:07 kraai Exp $" 81#ident "$Id: insmod.c,v 1.35 2001/01/04 02:00:17 kraai Exp $"
82 82
83/* This file contains the structures used by the 2.0 and 2.1 kernels. 83/* This file contains the structures used by the 2.0 and 2.1 kernels.
84 We do not use the kernel headers directly because we do not wish 84 We do not use the kernel headers directly because we do not wish
@@ -284,7 +284,7 @@ int delete_module(const char *);
284#ifndef MODUTILS_OBJ_H 284#ifndef MODUTILS_OBJ_H
285#define MODUTILS_OBJ_H 1 285#define MODUTILS_OBJ_H 1
286 286
287#ident "$Id: insmod.c,v 1.34 2000/12/22 01:48:07 kraai Exp $" 287#ident "$Id: insmod.c,v 1.35 2001/01/04 02:00:17 kraai Exp $"
288 288
289/* The relocatable object is manipulated using elfin types. */ 289/* The relocatable object is manipulated using elfin types. */
290 290
@@ -1704,7 +1704,8 @@ old_init_module(const char *m_name, struct obj_file *f,
1704 ksym->name = 1704 ksym->name =
1705 (unsigned long) str - (unsigned long) symtab; 1705 (unsigned long) str - (unsigned long) symtab;
1706 1706
1707 str = strcpy(str, sym->name) + 1; 1707 strcpy(str, sym->name);
1708 str += strlen(sym->name) + 1;
1708 ksym++; 1709 ksym++;
1709 } 1710 }
1710 } 1711 }