diff options
author | Pavel Roskin <proski@gnu.org> | 2000-09-28 20:52:55 +0000 |
---|---|---|
committer | Pavel Roskin <proski@gnu.org> | 2000-09-28 20:52:55 +0000 |
commit | 43f3e6114c175a838161bfb547f469ecdb600c87 (patch) | |
tree | 2e0952a6b77d9acbcc232345489ef116fab7eab0 | |
parent | 8d369e98a5f0fb7612b3d09ff889394bf7ec4f5c (diff) | |
download | busybox-43f3e6114c175a838161bfb547f469ecdb600c87.tar.gz |
Fixes to allow compilation on systems with glibc 2.1.92
-rw-r--r-- | insmod.c | 9 | ||||
-rw-r--r-- | miscutils/update.c | 5 | ||||
-rw-r--r-- | modutils/insmod.c | 9 | ||||
-rw-r--r-- | update.c | 5 |
4 files changed, 24 insertions, 4 deletions
@@ -77,7 +77,7 @@ #ifndef MODUTILS_MODULE_H #define MODUTILS_MODULE_H 1 -#ident "$Id: insmod.c,v 1.25 2000/09/25 21:45:58 andersen Exp $" +#ident "$Id: insmod.c,v 1.26 2000/09/28 20:52:55 proski 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 @@ -283,7 +283,7 @@ int delete_module(const char *); #ifndef MODUTILS_OBJ_H #define MODUTILS_OBJ_H 1 -#ident "$Id: insmod.c,v 1.25 2000/09/25 21:45:58 andersen Exp $" +#ident "$Id: insmod.c,v 1.26 2000/09/28 20:52:55 proski Exp $" /* The relocatable object is manipulated using elfin types. */ @@ -323,7 +323,12 @@ int delete_module(const char *); /* this is the previous behavior, but it does result in insmod.c being broken on anything except i386 */ +#ifndef EM_486 +#define MATCH_MACHINE(x) (x == EM_386) +#else #define MATCH_MACHINE(x) (x == EM_386 || x == EM_486) +#endif + #define SHT_RELM SHT_REL #define Elf32_RelM Elf32_Rel diff --git a/miscutils/update.c b/miscutils/update.c index e9f496913..7279d83a8 100644 --- a/miscutils/update.c +++ b/miscutils/update.c @@ -72,7 +72,12 @@ extern int update_main(int argc, char **argv) /* Become a proper daemon */ setsid(); chdir("/"); +#ifdef OPEN_MAX for (pid = 0; pid < OPEN_MAX; pid++) close(pid); +#else + /* glibc 2.1.92 requires using sysconf(_SC_OPEN_MAX) */ + for (pid = 0; pid < sysconf(_SC_OPEN_MAX); pid++) close(pid); +#endif /* * This is no longer necessary since 1.3.5x, but it will harmlessly diff --git a/modutils/insmod.c b/modutils/insmod.c index 0c81af6f0..8267606e1 100644 --- a/modutils/insmod.c +++ b/modutils/insmod.c @@ -77,7 +77,7 @@ #ifndef MODUTILS_MODULE_H #define MODUTILS_MODULE_H 1 -#ident "$Id: insmod.c,v 1.25 2000/09/25 21:45:58 andersen Exp $" +#ident "$Id: insmod.c,v 1.26 2000/09/28 20:52:55 proski 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 @@ -283,7 +283,7 @@ int delete_module(const char *); #ifndef MODUTILS_OBJ_H #define MODUTILS_OBJ_H 1 -#ident "$Id: insmod.c,v 1.25 2000/09/25 21:45:58 andersen Exp $" +#ident "$Id: insmod.c,v 1.26 2000/09/28 20:52:55 proski Exp $" /* The relocatable object is manipulated using elfin types. */ @@ -323,7 +323,12 @@ int delete_module(const char *); /* this is the previous behavior, but it does result in insmod.c being broken on anything except i386 */ +#ifndef EM_486 +#define MATCH_MACHINE(x) (x == EM_386) +#else #define MATCH_MACHINE(x) (x == EM_386 || x == EM_486) +#endif + #define SHT_RELM SHT_REL #define Elf32_RelM Elf32_Rel @@ -72,7 +72,12 @@ extern int update_main(int argc, char **argv) /* Become a proper daemon */ setsid(); chdir("/"); +#ifdef OPEN_MAX for (pid = 0; pid < OPEN_MAX; pid++) close(pid); +#else + /* glibc 2.1.92 requires using sysconf(_SC_OPEN_MAX) */ + for (pid = 0; pid < sysconf(_SC_OPEN_MAX); pid++) close(pid); +#endif /* * This is no longer necessary since 1.3.5x, but it will harmlessly |