diff options
author | Matt Kraai <kraai@debian.org> | 2001-01-04 02:00:17 +0000 |
---|---|---|
committer | Matt Kraai <kraai@debian.org> | 2001-01-04 02:00:17 +0000 |
commit | 70a7855980731a9605c5643720680f299d90a125 (patch) | |
tree | 689f6b27d3e5809b625682fd860ab4d2475c9018 | |
parent | 1171c2fcb48026066d96793a852c06e5125b1fc9 (diff) | |
download | busybox-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.c | 7 | ||||
-rw-r--r-- | modutils/insmod.c | 7 |
2 files changed, 8 insertions, 6 deletions
@@ -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 | } |