diff options
author | Gwenolé Beauchesne <gbeauchesne@mandriva.org> | 2002-10-09 13:15:31 +0000 |
---|---|---|
committer | Gwenolé Beauchesne <gbeauchesne@mandriva.org> | 2002-10-09 13:15:31 +0000 |
commit | db5cfd5022007d2a794730695b9db08f17634674 (patch) | |
tree | 2f1f2cfd8bcac71abf48e1700a40ff88c3c00224 /mdk-stage1/insmod-modutils/util/arch64.c | |
parent | 5bd2378f17544a0a21d70e4535477d3d12db39a2 (diff) | |
download | drakx-db5cfd5022007d2a794730695b9db08f17634674.tar drakx-db5cfd5022007d2a794730695b9db08f17634674.tar.gz drakx-db5cfd5022007d2a794730695b9db08f17634674.tar.bz2 drakx-db5cfd5022007d2a794730695b9db08f17634674.tar.xz drakx-db5cfd5022007d2a794730695b9db08f17634674.zip |
Update to modutils 2.4.19 with x86-64 support and other fixes
Diffstat (limited to 'mdk-stage1/insmod-modutils/util/arch64.c')
-rw-r--r-- | mdk-stage1/insmod-modutils/util/arch64.c | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/mdk-stage1/insmod-modutils/util/arch64.c b/mdk-stage1/insmod-modutils/util/arch64.c index 4d5ace223..90886d16b 100644 --- a/mdk-stage1/insmod-modutils/util/arch64.c +++ b/mdk-stage1/insmod-modutils/util/arch64.c @@ -18,8 +18,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#ident "$Id$" - #include <stdlib.h> #include <string.h> #include <sys/utsname.h> @@ -30,6 +28,16 @@ /* Indicate if the current machine uses 64 bit architecture */ int arch64(void) { - struct utsname u; - return(!uname(&u) && strstr(u.machine, "64")); + struct utsname uts; + char *uname_m; + if (uname(&uts)) + return(0); + if ((uname_m = getenv("UNAME_MACHINE"))) { + int l = strlen(uname_m); + if (l >= sizeof(uts.machine)) + l = sizeof(uts.machine)-1; + memcpy(uts.machine, uname_m, l); + uts.machine[l] = '\0'; + } + return(strstr(uts.machine, "64") != NULL); } |