diff options
| author | andersen <andersen@69ca8d6d-28ef-0310-b511-8ec308f3f277> | 2000-07-08 18:55:24 +0000 |
|---|---|---|
| committer | andersen <andersen@69ca8d6d-28ef-0310-b511-8ec308f3f277> | 2000-07-08 18:55:24 +0000 |
| commit | e4d63164fd2e82ba6899cc37acd02537fc49241d (patch) | |
| tree | e225367aaef198eacec8ed0b530d36a9d888d92f | |
| parent | 0022fe5638fbe702405ad218f43006e718f4ef9e (diff) | |
| download | busybox-w32-e4d63164fd2e82ba6899cc37acd02537fc49241d.tar.gz busybox-w32-e4d63164fd2e82ba6899cc37acd02537fc49241d.tar.bz2 busybox-w32-e4d63164fd2e82ba6899cc37acd02537fc49241d.zip | |
Update files to reduce dependance on kernel version...
-Erik
git-svn-id: svn://busybox.net/trunk/busybox@779 69ca8d6d-28ef-0310-b511-8ec308f3f277
| -rw-r--r-- | chvt.c | 10 | ||||
| -rw-r--r-- | console-tools/chvt.c | 10 | ||||
| -rw-r--r-- | console-tools/deallocvt.c | 7 | ||||
| -rw-r--r-- | console-tools/loadkmap.c | 14 | ||||
| -rw-r--r-- | console-tools/setkeycodes.c | 9 | ||||
| -rw-r--r-- | coreutils/ls.c | 8 | ||||
| -rw-r--r-- | deallocvt.c | 7 | ||||
| -rw-r--r-- | dmesg.c | 2 | ||||
| -rw-r--r-- | fdflush.c | 3 | ||||
| -rw-r--r-- | init.c | 42 | ||||
| -rw-r--r-- | init/init.c | 42 | ||||
| -rw-r--r-- | insmod.c | 7 | ||||
| -rw-r--r-- | loadkmap.c | 14 | ||||
| -rw-r--r-- | ls.c | 8 | ||||
| -rw-r--r-- | modutils/insmod.c | 7 | ||||
| -rw-r--r-- | mount.c | 8 | ||||
| -rw-r--r-- | setkeycodes.c | 9 | ||||
| -rw-r--r-- | umount.c | 20 | ||||
| -rw-r--r-- | util-linux/dmesg.c | 2 | ||||
| -rw-r--r-- | util-linux/fdflush.c | 3 | ||||
| -rw-r--r-- | util-linux/mount.c | 8 | ||||
| -rw-r--r-- | util-linux/umount.c | 20 | ||||
| -rw-r--r-- | utility.c | 11 |
23 files changed, 184 insertions, 87 deletions
| @@ -5,12 +5,16 @@ | |||
| 5 | * busyboxed by Erik Andersen | 5 | * busyboxed by Erik Andersen |
| 6 | */ | 6 | */ |
| 7 | #include "internal.h" | 7 | #include "internal.h" |
| 8 | #include <sys/types.h> | ||
| 9 | #include <sys/ioctl.h> | ||
| 10 | #include <linux/vt.h> | ||
| 11 | #include <stdio.h> | 8 | #include <stdio.h> |
| 12 | #include <stdlib.h> | 9 | #include <stdlib.h> |
| 13 | #include <fcntl.h> | 10 | #include <fcntl.h> |
| 11 | #include <sys/types.h> | ||
| 12 | #include <sys/ioctl.h> | ||
| 13 | |||
| 14 | /* From <linux/vt.h> */ | ||
| 15 | #define VT_ACTIVATE 0x5606 /* make vt active */ | ||
| 16 | #define VT_WAITACTIVE 0x5607 /* wait for vt active */ | ||
| 17 | |||
| 14 | 18 | ||
| 15 | int chvt_main(int argc, char **argv) | 19 | int chvt_main(int argc, char **argv) |
| 16 | { | 20 | { |
diff --git a/console-tools/chvt.c b/console-tools/chvt.c index 45a04397a..c5c86b613 100644 --- a/console-tools/chvt.c +++ b/console-tools/chvt.c | |||
| @@ -5,12 +5,16 @@ | |||
| 5 | * busyboxed by Erik Andersen | 5 | * busyboxed by Erik Andersen |
| 6 | */ | 6 | */ |
| 7 | #include "internal.h" | 7 | #include "internal.h" |
| 8 | #include <sys/types.h> | ||
| 9 | #include <sys/ioctl.h> | ||
| 10 | #include <linux/vt.h> | ||
| 11 | #include <stdio.h> | 8 | #include <stdio.h> |
| 12 | #include <stdlib.h> | 9 | #include <stdlib.h> |
| 13 | #include <fcntl.h> | 10 | #include <fcntl.h> |
| 11 | #include <sys/types.h> | ||
| 12 | #include <sys/ioctl.h> | ||
| 13 | |||
| 14 | /* From <linux/vt.h> */ | ||
| 15 | #define VT_ACTIVATE 0x5606 /* make vt active */ | ||
| 16 | #define VT_WAITACTIVE 0x5607 /* wait for vt active */ | ||
| 17 | |||
| 14 | 18 | ||
| 15 | int chvt_main(int argc, char **argv) | 19 | int chvt_main(int argc, char **argv) |
| 16 | { | 20 | { |
diff --git a/console-tools/deallocvt.c b/console-tools/deallocvt.c index b65f7b098..0cad7717b 100644 --- a/console-tools/deallocvt.c +++ b/console-tools/deallocvt.c | |||
| @@ -5,11 +5,14 @@ | |||
| 5 | */ | 5 | */ |
| 6 | #include "internal.h" | 6 | #include "internal.h" |
| 7 | #include <stdlib.h> | 7 | #include <stdlib.h> |
| 8 | #include <stdio.h> | ||
| 8 | #include <fcntl.h> | 9 | #include <fcntl.h> |
| 9 | #include <sys/types.h> | 10 | #include <sys/types.h> |
| 10 | #include <sys/ioctl.h> | 11 | #include <sys/ioctl.h> |
| 11 | #include <linux/vt.h> | 12 | |
| 12 | #include <stdio.h> | 13 | /* From <linux/vt.h> */ |
| 14 | #define VT_DISALLOCATE 0x5608 /* free memory associated to vt */ | ||
| 15 | |||
| 13 | 16 | ||
| 14 | char *progname; | 17 | char *progname; |
| 15 | 18 | ||
diff --git a/console-tools/loadkmap.c b/console-tools/loadkmap.c index 905741467..0e8c090d2 100644 --- a/console-tools/loadkmap.c +++ b/console-tools/loadkmap.c | |||
| @@ -24,10 +24,20 @@ | |||
| 24 | #include <errno.h> | 24 | #include <errno.h> |
| 25 | #include <fcntl.h> | 25 | #include <fcntl.h> |
| 26 | #include <stdio.h> | 26 | #include <stdio.h> |
| 27 | #include <linux/kd.h> | ||
| 28 | #include <linux/keyboard.h> | ||
| 29 | #include <sys/ioctl.h> | 27 | #include <sys/ioctl.h> |
| 30 | 28 | ||
| 29 | /* From <linux/kd.h> */ | ||
| 30 | struct kbentry { | ||
| 31 | unsigned char kb_table; | ||
| 32 | unsigned char kb_index; | ||
| 33 | unsigned short kb_value; | ||
| 34 | }; | ||
| 35 | #define KDSKBENT 0x4B47 /* sets one entry in translation table */ | ||
| 36 | |||
| 37 | /* From <linux/keyboard.h> */ | ||
| 38 | #define NR_KEYS 128 | ||
| 39 | #define MAX_NR_KEYMAPS 256 | ||
| 40 | |||
| 31 | 41 | ||
| 32 | static const char loadkmap_usage[] = "loadkmap\n" | 42 | static const char loadkmap_usage[] = "loadkmap\n" |
| 33 | #ifndef BB_FEATURE_TRIVIAL_HELP | 43 | #ifndef BB_FEATURE_TRIVIAL_HELP |
diff --git a/console-tools/setkeycodes.c b/console-tools/setkeycodes.c index 9062caf75..1bdb909ea 100644 --- a/console-tools/setkeycodes.c +++ b/console-tools/setkeycodes.c | |||
| @@ -27,7 +27,14 @@ | |||
| 27 | #include <stdlib.h> | 27 | #include <stdlib.h> |
| 28 | #include <fcntl.h> | 28 | #include <fcntl.h> |
| 29 | #include <sys/ioctl.h> | 29 | #include <sys/ioctl.h> |
| 30 | #include <linux/kd.h> | 30 | |
| 31 | |||
| 32 | /* From <linux/kd.h> */ | ||
| 33 | struct kbkeycode { | ||
| 34 | unsigned int scancode, keycode; | ||
| 35 | }; | ||
| 36 | #define KDSETKEYCODE 0x4B4D /* write kernel keycode table entry */ | ||
| 37 | |||
| 31 | 38 | ||
| 32 | static const char setkeycodes_usage[] = | 39 | static const char setkeycodes_usage[] = |
| 33 | "setkeycodes SCANCODE KEYCODE ...\n" | 40 | "setkeycodes SCANCODE KEYCODE ...\n" |
diff --git a/coreutils/ls.c b/coreutils/ls.c index 75fa65421..98ccbeddb 100644 --- a/coreutils/ls.c +++ b/coreutils/ls.c | |||
| @@ -49,11 +49,11 @@ | |||
| 49 | /************************************************************************/ | 49 | /************************************************************************/ |
| 50 | 50 | ||
| 51 | #include "internal.h" | 51 | #include "internal.h" |
| 52 | #if !defined(__GLIBC__) && (__GLIBC__ >= 2) && (__GLIBC_MINOR__ >= 1) | 52 | //#if !defined(__GLIBC__) && (__GLIBC__ >= 2) && (__GLIBC_MINOR__ >= 1) |
| 53 | # include <linux/types.h> | 53 | //# include <linux/types.h> |
| 54 | #else | 54 | //#else |
| 55 | # include <sys/types.h> | 55 | # include <sys/types.h> |
| 56 | #endif | 56 | //#endif |
| 57 | #include <sys/stat.h> | 57 | #include <sys/stat.h> |
| 58 | #include <stdio.h> | 58 | #include <stdio.h> |
| 59 | #include <unistd.h> | 59 | #include <unistd.h> |
diff --git a/deallocvt.c b/deallocvt.c index b65f7b098..0cad7717b 100644 --- a/deallocvt.c +++ b/deallocvt.c | |||
| @@ -5,11 +5,14 @@ | |||
| 5 | */ | 5 | */ |
| 6 | #include "internal.h" | 6 | #include "internal.h" |
| 7 | #include <stdlib.h> | 7 | #include <stdlib.h> |
| 8 | #include <stdio.h> | ||
| 8 | #include <fcntl.h> | 9 | #include <fcntl.h> |
| 9 | #include <sys/types.h> | 10 | #include <sys/types.h> |
| 10 | #include <sys/ioctl.h> | 11 | #include <sys/ioctl.h> |
| 11 | #include <linux/vt.h> | 12 | |
| 12 | #include <stdio.h> | 13 | /* From <linux/vt.h> */ |
| 14 | #define VT_DISALLOCATE 0x5608 /* free memory associated to vt */ | ||
| 15 | |||
| 13 | 16 | ||
| 14 | char *progname; | 17 | char *progname; |
| 15 | 18 | ||
| @@ -16,7 +16,6 @@ | |||
| 16 | */ | 16 | */ |
| 17 | 17 | ||
| 18 | #include "internal.h" | 18 | #include "internal.h" |
| 19 | #include <linux/unistd.h> | ||
| 20 | #include <stdio.h> | 19 | #include <stdio.h> |
| 21 | #include <stdlib.h> | 20 | #include <stdlib.h> |
| 22 | 21 | ||
| @@ -24,6 +23,7 @@ | |||
| 24 | 23 | ||
| 25 | #ifndef __alpha__ | 24 | #ifndef __alpha__ |
| 26 | # define __NR_klogctl __NR_syslog | 25 | # define __NR_klogctl __NR_syslog |
| 26 | #include <linux/unistd.h> | ||
| 27 | static inline _syscall3(int, klogctl, int, type, char *, b, int, len); | 27 | static inline _syscall3(int, klogctl, int, type, char *, b, int, len); |
| 28 | #else /* __alpha__ */ | 28 | #else /* __alpha__ */ |
| 29 | #define klogctl syslog | 29 | #define klogctl syslog |
| @@ -24,9 +24,10 @@ | |||
| 24 | #include "internal.h" | 24 | #include "internal.h" |
| 25 | #include <stdio.h> | 25 | #include <stdio.h> |
| 26 | #include <sys/ioctl.h> | 26 | #include <sys/ioctl.h> |
| 27 | #include <linux/fd.h> | ||
| 28 | #include <fcntl.h> | 27 | #include <fcntl.h> |
| 29 | 28 | ||
| 29 | /* From <linux/fd.h> */ | ||
| 30 | #define FDFLUSH _IO(2,0x4b) | ||
| 30 | 31 | ||
| 31 | extern int fdflush_main(int argc, char **argv) | 32 | extern int fdflush_main(int argc, char **argv) |
| 32 | { | 33 | { |
| @@ -37,12 +37,6 @@ | |||
| 37 | #include <string.h> | 37 | #include <string.h> |
| 38 | #include <termios.h> | 38 | #include <termios.h> |
| 39 | #include <unistd.h> | 39 | #include <unistd.h> |
| 40 | #include <asm/types.h> | ||
| 41 | #include <linux/serial.h> /* for serial_struct */ | ||
| 42 | #include <linux/version.h> | ||
| 43 | #include <linux/reboot.h> | ||
| 44 | #include <linux/unistd.h> | ||
| 45 | #include <linux/vt.h> /* for vt_stat */ | ||
| 46 | #include <sys/fcntl.h> | 40 | #include <sys/fcntl.h> |
| 47 | #include <sys/ioctl.h> | 41 | #include <sys/ioctl.h> |
| 48 | #include <sys/mount.h> | 42 | #include <sys/mount.h> |
| @@ -52,6 +46,33 @@ | |||
| 52 | # include <sys/syslog.h> | 46 | # include <sys/syslog.h> |
| 53 | #endif | 47 | #endif |
| 54 | 48 | ||
| 49 | /* From <linux/vt.h> */ | ||
| 50 | struct vt_stat { | ||
| 51 | unsigned short v_active; /* active vt */ | ||
| 52 | unsigned short v_signal; /* signal to send */ | ||
| 53 | unsigned short v_state; /* vt bitmask */ | ||
| 54 | }; | ||
| 55 | #define VT_GETSTATE 0x5603 /* get global vt state info */ | ||
| 56 | |||
| 57 | /* From <linux/serial.h> */ | ||
| 58 | struct serial_struct { | ||
| 59 | int type; | ||
| 60 | int line; | ||
| 61 | int port; | ||
| 62 | int irq; | ||
| 63 | int flags; | ||
| 64 | int xmit_fifo_size; | ||
| 65 | int custom_divisor; | ||
| 66 | int baud_base; | ||
| 67 | unsigned short close_delay; | ||
| 68 | char reserved_char[2]; | ||
| 69 | int hub6; | ||
| 70 | unsigned short closing_wait; /* time to wait before closing */ | ||
| 71 | unsigned short closing_wait2; /* no longer used... */ | ||
| 72 | int reserved[4]; | ||
| 73 | }; | ||
| 74 | |||
| 75 | |||
| 55 | 76 | ||
| 56 | #ifndef RB_HALT_SYSTEM | 77 | #ifndef RB_HALT_SYSTEM |
| 57 | #define RB_HALT_SYSTEM 0xcdef0123 | 78 | #define RB_HALT_SYSTEM 0xcdef0123 |
| @@ -84,13 +105,12 @@ | |||
| 84 | #include <sys/time.h> | 105 | #include <sys/time.h> |
| 85 | #endif | 106 | #endif |
| 86 | 107 | ||
| 87 | #ifndef KERNEL_VERSION | ||
| 88 | #define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c)) | 108 | #define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c)) |
| 89 | #endif | ||
| 90 | 109 | ||
| 91 | #if defined(__GLIBC__) | 110 | #if defined(__GLIBC__) |
| 92 | #include <sys/kdaemon.h> | 111 | #include <sys/kdaemon.h> |
| 93 | #else | 112 | #else |
| 113 | #include <linux/unistd.h> /* for _syscall() macro */ | ||
| 94 | static _syscall2(int, bdflush, int, func, int, data); | 114 | static _syscall2(int, bdflush, int, func, int, data); |
| 95 | #endif /* __GLIBC__ */ | 115 | #endif /* __GLIBC__ */ |
| 96 | 116 | ||
| @@ -568,7 +588,7 @@ static void shutdown_system(void) | |||
| 568 | run_lastAction(); | 588 | run_lastAction(); |
| 569 | 589 | ||
| 570 | sync(); | 590 | sync(); |
| 571 | if (kernelVersion > 0 && kernelVersion <= 2 * 65536 + 2 * 256 + 11) { | 591 | if (kernelVersion > 0 && kernelVersion <= KERNEL_VERSION(2,2,11)) { |
| 572 | /* bdflush, kupdate not needed for kernels >2.2.11 */ | 592 | /* bdflush, kupdate not needed for kernels >2.2.11 */ |
| 573 | bdflush(1, 0); | 593 | bdflush(1, 0); |
| 574 | sync(); | 594 | sync(); |
| @@ -587,11 +607,9 @@ static void halt_signal(int sig) | |||
| 587 | /* allow time for last message to reach serial console */ | 607 | /* allow time for last message to reach serial console */ |
| 588 | sleep(2); | 608 | sleep(2); |
| 589 | 609 | ||
| 590 | #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,2,0) | 610 | if (sig == SIGUSR2 && kernelVersion >= KERNEL_VERSION(2,2,0)) |
| 591 | if (sig == SIGUSR2) | ||
| 592 | init_reboot(RB_POWER_OFF); | 611 | init_reboot(RB_POWER_OFF); |
| 593 | else | 612 | else |
| 594 | #endif | ||
| 595 | init_reboot(RB_HALT_SYSTEM); | 613 | init_reboot(RB_HALT_SYSTEM); |
| 596 | exit(0); | 614 | exit(0); |
| 597 | } | 615 | } |
diff --git a/init/init.c b/init/init.c index 35f2255b5..b368c00ed 100644 --- a/init/init.c +++ b/init/init.c | |||
| @@ -37,12 +37,6 @@ | |||
| 37 | #include <string.h> | 37 | #include <string.h> |
| 38 | #include <termios.h> | 38 | #include <termios.h> |
| 39 | #include <unistd.h> | 39 | #include <unistd.h> |
| 40 | #include <asm/types.h> | ||
| 41 | #include <linux/serial.h> /* for serial_struct */ | ||
| 42 | #include <linux/version.h> | ||
| 43 | #include <linux/reboot.h> | ||
| 44 | #include <linux/unistd.h> | ||
| 45 | #include <linux/vt.h> /* for vt_stat */ | ||
| 46 | #include <sys/fcntl.h> | 40 | #include <sys/fcntl.h> |
| 47 | #include <sys/ioctl.h> | 41 | #include <sys/ioctl.h> |
| 48 | #include <sys/mount.h> | 42 | #include <sys/mount.h> |
| @@ -52,6 +46,33 @@ | |||
| 52 | # include <sys/syslog.h> | 46 | # include <sys/syslog.h> |
| 53 | #endif | 47 | #endif |
| 54 | 48 | ||
| 49 | /* From <linux/vt.h> */ | ||
| 50 | struct vt_stat { | ||
| 51 | unsigned short v_active; /* active vt */ | ||
| 52 | unsigned short v_signal; /* signal to send */ | ||
| 53 | unsigned short v_state; /* vt bitmask */ | ||
| 54 | }; | ||
| 55 | #define VT_GETSTATE 0x5603 /* get global vt state info */ | ||
| 56 | |||
| 57 | /* From <linux/serial.h> */ | ||
| 58 | struct serial_struct { | ||
| 59 | int type; | ||
| 60 | int line; | ||
| 61 | int port; | ||
| 62 | int irq; | ||
| 63 | int flags; | ||
| 64 | int xmit_fifo_size; | ||
| 65 | int custom_divisor; | ||
| 66 | int baud_base; | ||
| 67 | unsigned short close_delay; | ||
| 68 | char reserved_char[2]; | ||
| 69 | int hub6; | ||
| 70 | unsigned short closing_wait; /* time to wait before closing */ | ||
| 71 | unsigned short closing_wait2; /* no longer used... */ | ||
| 72 | int reserved[4]; | ||
| 73 | }; | ||
| 74 | |||
| 75 | |||
| 55 | 76 | ||
| 56 | #ifndef RB_HALT_SYSTEM | 77 | #ifndef RB_HALT_SYSTEM |
| 57 | #define RB_HALT_SYSTEM 0xcdef0123 | 78 | #define RB_HALT_SYSTEM 0xcdef0123 |
| @@ -84,13 +105,12 @@ | |||
| 84 | #include <sys/time.h> | 105 | #include <sys/time.h> |
| 85 | #endif | 106 | #endif |
| 86 | 107 | ||
| 87 | #ifndef KERNEL_VERSION | ||
| 88 | #define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c)) | 108 | #define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c)) |
| 89 | #endif | ||
| 90 | 109 | ||
| 91 | #if defined(__GLIBC__) | 110 | #if defined(__GLIBC__) |
| 92 | #include <sys/kdaemon.h> | 111 | #include <sys/kdaemon.h> |
| 93 | #else | 112 | #else |
| 113 | #include <linux/unistd.h> /* for _syscall() macro */ | ||
| 94 | static _syscall2(int, bdflush, int, func, int, data); | 114 | static _syscall2(int, bdflush, int, func, int, data); |
| 95 | #endif /* __GLIBC__ */ | 115 | #endif /* __GLIBC__ */ |
| 96 | 116 | ||
| @@ -568,7 +588,7 @@ static void shutdown_system(void) | |||
| 568 | run_lastAction(); | 588 | run_lastAction(); |
| 569 | 589 | ||
| 570 | sync(); | 590 | sync(); |
| 571 | if (kernelVersion > 0 && kernelVersion <= 2 * 65536 + 2 * 256 + 11) { | 591 | if (kernelVersion > 0 && kernelVersion <= KERNEL_VERSION(2,2,11)) { |
| 572 | /* bdflush, kupdate not needed for kernels >2.2.11 */ | 592 | /* bdflush, kupdate not needed for kernels >2.2.11 */ |
| 573 | bdflush(1, 0); | 593 | bdflush(1, 0); |
| 574 | sync(); | 594 | sync(); |
| @@ -587,11 +607,9 @@ static void halt_signal(int sig) | |||
| 587 | /* allow time for last message to reach serial console */ | 607 | /* allow time for last message to reach serial console */ |
| 588 | sleep(2); | 608 | sleep(2); |
| 589 | 609 | ||
| 590 | #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,2,0) | 610 | if (sig == SIGUSR2 && kernelVersion >= KERNEL_VERSION(2,2,0)) |
| 591 | if (sig == SIGUSR2) | ||
| 592 | init_reboot(RB_POWER_OFF); | 611 | init_reboot(RB_POWER_OFF); |
| 593 | else | 612 | else |
| 594 | #endif | ||
| 595 | init_reboot(RB_HALT_SYSTEM); | 613 | init_reboot(RB_HALT_SYSTEM); |
| 596 | exit(0); | 614 | exit(0); |
| 597 | } | 615 | } |
| @@ -71,7 +71,7 @@ | |||
| 71 | #ifndef MODUTILS_MODULE_H | 71 | #ifndef MODUTILS_MODULE_H |
| 72 | #define MODUTILS_MODULE_H 1 | 72 | #define MODUTILS_MODULE_H 1 |
| 73 | 73 | ||
| 74 | #ident "$Id: insmod.c,v 1.11 2000/06/26 11:16:22 andersen Exp $" | 74 | #ident "$Id: insmod.c,v 1.12 2000/07/08 18:55:24 andersen Exp $" |
| 75 | 75 | ||
| 76 | /* This file contains the structures used by the 2.0 and 2.1 kernels. | 76 | /* This file contains the structures used by the 2.0 and 2.1 kernels. |
| 77 | We do not use the kernel headers directly because we do not wish | 77 | We do not use the kernel headers directly because we do not wish |
| @@ -277,7 +277,7 @@ int delete_module(const char *); | |||
| 277 | #ifndef MODUTILS_OBJ_H | 277 | #ifndef MODUTILS_OBJ_H |
| 278 | #define MODUTILS_OBJ_H 1 | 278 | #define MODUTILS_OBJ_H 1 |
| 279 | 279 | ||
| 280 | #ident "$Id: insmod.c,v 1.11 2000/06/26 11:16:22 andersen Exp $" | 280 | #ident "$Id: insmod.c,v 1.12 2000/07/08 18:55:24 andersen Exp $" |
| 281 | 281 | ||
| 282 | /* The relocatable object is manipulated using elfin types. */ | 282 | /* The relocatable object is manipulated using elfin types. */ |
| 283 | 283 | ||
| @@ -530,6 +530,9 @@ _syscall2(int, new_sys_init_module, const char *, name, | |||
| 530 | _syscall5(int, old_sys_init_module, const char *, name, char *, code, | 530 | _syscall5(int, old_sys_init_module, const char *, name, char *, code, |
| 531 | unsigned, codesize, struct old_mod_routines *, routines, | 531 | unsigned, codesize, struct old_mod_routines *, routines, |
| 532 | struct old_symbol_table *, symtab) | 532 | struct old_symbol_table *, symtab) |
| 533 | #ifndef __NR_query_module | ||
| 534 | #define __NR_query_module 167 | ||
| 535 | #endif | ||
| 533 | _syscall5(int, query_module, const char *, name, int, which, | 536 | _syscall5(int, query_module, const char *, name, int, which, |
| 534 | void *, buf, size_t, bufsize, size_t*, ret); | 537 | void *, buf, size_t, bufsize, size_t*, ret); |
| 535 | #ifndef BB_RMMOD | 538 | #ifndef BB_RMMOD |
diff --git a/loadkmap.c b/loadkmap.c index 905741467..0e8c090d2 100644 --- a/loadkmap.c +++ b/loadkmap.c | |||
| @@ -24,10 +24,20 @@ | |||
| 24 | #include <errno.h> | 24 | #include <errno.h> |
| 25 | #include <fcntl.h> | 25 | #include <fcntl.h> |
| 26 | #include <stdio.h> | 26 | #include <stdio.h> |
| 27 | #include <linux/kd.h> | ||
| 28 | #include <linux/keyboard.h> | ||
| 29 | #include <sys/ioctl.h> | 27 | #include <sys/ioctl.h> |
| 30 | 28 | ||
| 29 | /* From <linux/kd.h> */ | ||
| 30 | struct kbentry { | ||
| 31 | unsigned char kb_table; | ||
| 32 | unsigned char kb_index; | ||
| 33 | unsigned short kb_value; | ||
| 34 | }; | ||
| 35 | #define KDSKBENT 0x4B47 /* sets one entry in translation table */ | ||
| 36 | |||
| 37 | /* From <linux/keyboard.h> */ | ||
| 38 | #define NR_KEYS 128 | ||
| 39 | #define MAX_NR_KEYMAPS 256 | ||
| 40 | |||
| 31 | 41 | ||
| 32 | static const char loadkmap_usage[] = "loadkmap\n" | 42 | static const char loadkmap_usage[] = "loadkmap\n" |
| 33 | #ifndef BB_FEATURE_TRIVIAL_HELP | 43 | #ifndef BB_FEATURE_TRIVIAL_HELP |
| @@ -49,11 +49,11 @@ | |||
| 49 | /************************************************************************/ | 49 | /************************************************************************/ |
| 50 | 50 | ||
| 51 | #include "internal.h" | 51 | #include "internal.h" |
| 52 | #if !defined(__GLIBC__) && (__GLIBC__ >= 2) && (__GLIBC_MINOR__ >= 1) | 52 | //#if !defined(__GLIBC__) && (__GLIBC__ >= 2) && (__GLIBC_MINOR__ >= 1) |
| 53 | # include <linux/types.h> | 53 | //# include <linux/types.h> |
| 54 | #else | 54 | //#else |
| 55 | # include <sys/types.h> | 55 | # include <sys/types.h> |
| 56 | #endif | 56 | //#endif |
| 57 | #include <sys/stat.h> | 57 | #include <sys/stat.h> |
| 58 | #include <stdio.h> | 58 | #include <stdio.h> |
| 59 | #include <unistd.h> | 59 | #include <unistd.h> |
diff --git a/modutils/insmod.c b/modutils/insmod.c index 006468877..75058b959 100644 --- a/modutils/insmod.c +++ b/modutils/insmod.c | |||
| @@ -71,7 +71,7 @@ | |||
| 71 | #ifndef MODUTILS_MODULE_H | 71 | #ifndef MODUTILS_MODULE_H |
| 72 | #define MODUTILS_MODULE_H 1 | 72 | #define MODUTILS_MODULE_H 1 |
| 73 | 73 | ||
| 74 | #ident "$Id: insmod.c,v 1.11 2000/06/26 11:16:22 andersen Exp $" | 74 | #ident "$Id: insmod.c,v 1.12 2000/07/08 18:55:24 andersen Exp $" |
| 75 | 75 | ||
| 76 | /* This file contains the structures used by the 2.0 and 2.1 kernels. | 76 | /* This file contains the structures used by the 2.0 and 2.1 kernels. |
| 77 | We do not use the kernel headers directly because we do not wish | 77 | We do not use the kernel headers directly because we do not wish |
| @@ -277,7 +277,7 @@ int delete_module(const char *); | |||
| 277 | #ifndef MODUTILS_OBJ_H | 277 | #ifndef MODUTILS_OBJ_H |
| 278 | #define MODUTILS_OBJ_H 1 | 278 | #define MODUTILS_OBJ_H 1 |
| 279 | 279 | ||
| 280 | #ident "$Id: insmod.c,v 1.11 2000/06/26 11:16:22 andersen Exp $" | 280 | #ident "$Id: insmod.c,v 1.12 2000/07/08 18:55:24 andersen Exp $" |
| 281 | 281 | ||
| 282 | /* The relocatable object is manipulated using elfin types. */ | 282 | /* The relocatable object is manipulated using elfin types. */ |
| 283 | 283 | ||
| @@ -530,6 +530,9 @@ _syscall2(int, new_sys_init_module, const char *, name, | |||
| 530 | _syscall5(int, old_sys_init_module, const char *, name, char *, code, | 530 | _syscall5(int, old_sys_init_module, const char *, name, char *, code, |
| 531 | unsigned, codesize, struct old_mod_routines *, routines, | 531 | unsigned, codesize, struct old_mod_routines *, routines, |
| 532 | struct old_symbol_table *, symtab) | 532 | struct old_symbol_table *, symtab) |
| 533 | #ifndef __NR_query_module | ||
| 534 | #define __NR_query_module 167 | ||
| 535 | #endif | ||
| 533 | _syscall5(int, query_module, const char *, name, int, which, | 536 | _syscall5(int, query_module, const char *, name, int, which, |
| 534 | void *, buf, size_t, bufsize, size_t*, ret); | 537 | void *, buf, size_t, bufsize, size_t*, ret); |
| 535 | #ifndef BB_RMMOD | 538 | #ifndef BB_RMMOD |
| @@ -48,15 +48,17 @@ | |||
| 48 | #if defined BB_FEATURE_USE_DEVPS_PATCH | 48 | #if defined BB_FEATURE_USE_DEVPS_PATCH |
| 49 | #include <linux/devmtab.h> | 49 | #include <linux/devmtab.h> |
| 50 | #endif | 50 | #endif |
| 51 | #ifndef MS_RDONLY | 51 | |
| 52 | #include <linux/fs.h> | 52 | /* 2.0.x. kernels don't know about MS_NODIRATIME */ |
| 53 | #ifndef MS_NODIRATIME | ||
| 54 | #define MS_NODIRATIME 2048 /* Do not update directory access times */ | ||
| 53 | #endif | 55 | #endif |
| 54 | 56 | ||
| 55 | 57 | ||
| 58 | |||
| 56 | #if defined BB_FEATURE_MOUNT_LOOP | 59 | #if defined BB_FEATURE_MOUNT_LOOP |
| 57 | #include <fcntl.h> | 60 | #include <fcntl.h> |
| 58 | #include <sys/ioctl.h> | 61 | #include <sys/ioctl.h> |
| 59 | #include <linux/loop.h> | ||
| 60 | 62 | ||
| 61 | 63 | ||
| 62 | static int use_loop = FALSE; | 64 | static int use_loop = FALSE; |
diff --git a/setkeycodes.c b/setkeycodes.c index 9062caf75..1bdb909ea 100644 --- a/setkeycodes.c +++ b/setkeycodes.c | |||
| @@ -27,7 +27,14 @@ | |||
| 27 | #include <stdlib.h> | 27 | #include <stdlib.h> |
| 28 | #include <fcntl.h> | 28 | #include <fcntl.h> |
| 29 | #include <sys/ioctl.h> | 29 | #include <sys/ioctl.h> |
| 30 | #include <linux/kd.h> | 30 | |
| 31 | |||
| 32 | /* From <linux/kd.h> */ | ||
| 33 | struct kbkeycode { | ||
| 34 | unsigned int scancode, keycode; | ||
| 35 | }; | ||
| 36 | #define KDSETKEYCODE 0x4B4D /* write kernel keycode table entry */ | ||
| 37 | |||
| 31 | 38 | ||
| 32 | static const char setkeycodes_usage[] = | 39 | static const char setkeycodes_usage[] = |
| 33 | "setkeycodes SCANCODE KEYCODE ...\n" | 40 | "setkeycodes SCANCODE KEYCODE ...\n" |
| @@ -26,20 +26,20 @@ | |||
| 26 | #include <stdio.h> | 26 | #include <stdio.h> |
| 27 | #include <mntent.h> | 27 | #include <mntent.h> |
| 28 | #include <errno.h> | 28 | #include <errno.h> |
| 29 | #include <sys/mount.h> | ||
| 29 | #include <linux/unistd.h> | 30 | #include <linux/unistd.h> |
| 30 | 31 | ||
| 31 | 32 | ||
| 32 | //#include <sys/mount.h> | 33 | /* Include our own version of umount2 if we need it... */ |
| 33 | /* Include our own version of sys/mount.h, since libc5 doesn't | 34 | #ifndef __NR_umount2 |
| 34 | * know about umount2 */ | 35 | #define __NR_umount2 52 |
| 35 | static _syscall1(int, umount, const char *, special_file); | ||
| 36 | static _syscall2(int, umount2, const char *, special_file, int, flags); | ||
| 37 | static _syscall5(int, mount, const char *, special_file, const char *, dir, | ||
| 38 | const char *, fstype, unsigned long int, rwflag, const void *, data); | ||
| 39 | #define MNT_FORCE 1 | 36 | #define MNT_FORCE 1 |
| 40 | #define MS_MGC_VAL 0xc0ed0000 /* Magic flag number to indicate "new" flags */ | 37 | #define MS_MGC_VAL 0xc0ed0000 /* Magic number indicatng "new" flags */ |
| 41 | #define MS_REMOUNT 32 /* Alter flags of a mounted FS. */ | 38 | #define MS_REMOUNT 32 /* Alter flags of a mounted FS. */ |
| 42 | #define MS_RDONLY 1 /* Mount read-only. */ | 39 | #define MS_RDONLY 1 /* Mount read-only. */ |
| 40 | |||
| 41 | #endif | ||
| 42 | static _syscall2(int, umount2, const char *, special_file, int, flags); | ||
| 43 | 43 | ||
| 44 | 44 | ||
| 45 | static const char umount_usage[] = | 45 | static const char umount_usage[] = |
diff --git a/util-linux/dmesg.c b/util-linux/dmesg.c index 20846f7c6..e88f549ca 100644 --- a/util-linux/dmesg.c +++ b/util-linux/dmesg.c | |||
| @@ -16,7 +16,6 @@ | |||
| 16 | */ | 16 | */ |
| 17 | 17 | ||
| 18 | #include "internal.h" | 18 | #include "internal.h" |
| 19 | #include <linux/unistd.h> | ||
| 20 | #include <stdio.h> | 19 | #include <stdio.h> |
| 21 | #include <stdlib.h> | 20 | #include <stdlib.h> |
| 22 | 21 | ||
| @@ -24,6 +23,7 @@ | |||
| 24 | 23 | ||
| 25 | #ifndef __alpha__ | 24 | #ifndef __alpha__ |
| 26 | # define __NR_klogctl __NR_syslog | 25 | # define __NR_klogctl __NR_syslog |
| 26 | #include <linux/unistd.h> | ||
| 27 | static inline _syscall3(int, klogctl, int, type, char *, b, int, len); | 27 | static inline _syscall3(int, klogctl, int, type, char *, b, int, len); |
| 28 | #else /* __alpha__ */ | 28 | #else /* __alpha__ */ |
| 29 | #define klogctl syslog | 29 | #define klogctl syslog |
diff --git a/util-linux/fdflush.c b/util-linux/fdflush.c index 81f0472c6..d9937355f 100644 --- a/util-linux/fdflush.c +++ b/util-linux/fdflush.c | |||
| @@ -24,9 +24,10 @@ | |||
| 24 | #include "internal.h" | 24 | #include "internal.h" |
| 25 | #include <stdio.h> | 25 | #include <stdio.h> |
| 26 | #include <sys/ioctl.h> | 26 | #include <sys/ioctl.h> |
| 27 | #include <linux/fd.h> | ||
| 28 | #include <fcntl.h> | 27 | #include <fcntl.h> |
| 29 | 28 | ||
| 29 | /* From <linux/fd.h> */ | ||
| 30 | #define FDFLUSH _IO(2,0x4b) | ||
| 30 | 31 | ||
| 31 | extern int fdflush_main(int argc, char **argv) | 32 | extern int fdflush_main(int argc, char **argv) |
| 32 | { | 33 | { |
diff --git a/util-linux/mount.c b/util-linux/mount.c index 76f048b1c..01e9b3d67 100644 --- a/util-linux/mount.c +++ b/util-linux/mount.c | |||
| @@ -48,15 +48,17 @@ | |||
| 48 | #if defined BB_FEATURE_USE_DEVPS_PATCH | 48 | #if defined BB_FEATURE_USE_DEVPS_PATCH |
| 49 | #include <linux/devmtab.h> | 49 | #include <linux/devmtab.h> |
| 50 | #endif | 50 | #endif |
| 51 | #ifndef MS_RDONLY | 51 | |
| 52 | #include <linux/fs.h> | 52 | /* 2.0.x. kernels don't know about MS_NODIRATIME */ |
| 53 | #ifndef MS_NODIRATIME | ||
| 54 | #define MS_NODIRATIME 2048 /* Do not update directory access times */ | ||
| 53 | #endif | 55 | #endif |
| 54 | 56 | ||
| 55 | 57 | ||
| 58 | |||
| 56 | #if defined BB_FEATURE_MOUNT_LOOP | 59 | #if defined BB_FEATURE_MOUNT_LOOP |
| 57 | #include <fcntl.h> | 60 | #include <fcntl.h> |
| 58 | #include <sys/ioctl.h> | 61 | #include <sys/ioctl.h> |
| 59 | #include <linux/loop.h> | ||
| 60 | 62 | ||
| 61 | 63 | ||
| 62 | static int use_loop = FALSE; | 64 | static int use_loop = FALSE; |
diff --git a/util-linux/umount.c b/util-linux/umount.c index 61f7f9028..d790d68ff 100644 --- a/util-linux/umount.c +++ b/util-linux/umount.c | |||
| @@ -26,20 +26,20 @@ | |||
| 26 | #include <stdio.h> | 26 | #include <stdio.h> |
| 27 | #include <mntent.h> | 27 | #include <mntent.h> |
| 28 | #include <errno.h> | 28 | #include <errno.h> |
| 29 | #include <sys/mount.h> | ||
| 29 | #include <linux/unistd.h> | 30 | #include <linux/unistd.h> |
| 30 | 31 | ||
| 31 | 32 | ||
| 32 | //#include <sys/mount.h> | 33 | /* Include our own version of umount2 if we need it... */ |
| 33 | /* Include our own version of sys/mount.h, since libc5 doesn't | 34 | #ifndef __NR_umount2 |
| 34 | * know about umount2 */ | 35 | #define __NR_umount2 52 |
| 35 | static _syscall1(int, umount, const char *, special_file); | ||
| 36 | static _syscall2(int, umount2, const char *, special_file, int, flags); | ||
| 37 | static _syscall5(int, mount, const char *, special_file, const char *, dir, | ||
| 38 | const char *, fstype, unsigned long int, rwflag, const void *, data); | ||
| 39 | #define MNT_FORCE 1 | 36 | #define MNT_FORCE 1 |
| 40 | #define MS_MGC_VAL 0xc0ed0000 /* Magic flag number to indicate "new" flags */ | 37 | #define MS_MGC_VAL 0xc0ed0000 /* Magic number indicatng "new" flags */ |
| 41 | #define MS_REMOUNT 32 /* Alter flags of a mounted FS. */ | 38 | #define MS_REMOUNT 32 /* Alter flags of a mounted FS. */ |
| 42 | #define MS_RDONLY 1 /* Mount read-only. */ | 39 | #define MS_RDONLY 1 /* Mount read-only. */ |
| 40 | |||
| 41 | #endif | ||
| 42 | static _syscall2(int, umount2, const char *, special_file, int, flags); | ||
| 43 | 43 | ||
| 44 | 44 | ||
| 45 | static const char umount_usage[] = | 45 | static const char umount_usage[] = |
| @@ -45,14 +45,14 @@ | |||
| 45 | #include <dirent.h> | 45 | #include <dirent.h> |
| 46 | #include <time.h> | 46 | #include <time.h> |
| 47 | #include <utime.h> | 47 | #include <utime.h> |
| 48 | #include <sys/stat.h> | ||
| 49 | #include <unistd.h> | 48 | #include <unistd.h> |
| 50 | #include <ctype.h> | 49 | #include <ctype.h> |
| 50 | #include <sys/stat.h> | ||
| 51 | #include <sys/ioctl.h> | ||
| 51 | #include <sys/utsname.h> /* for uname(2) */ | 52 | #include <sys/utsname.h> /* for uname(2) */ |
| 52 | 53 | ||
| 53 | #if defined BB_FEATURE_MOUNT_LOOP | 54 | #if defined BB_FEATURE_MOUNT_LOOP |
| 54 | #include <fcntl.h> | 55 | #include <fcntl.h> |
| 55 | #include <sys/ioctl.h> | ||
| 56 | #include <linux/loop.h> | 56 | #include <linux/loop.h> |
| 57 | #endif | 57 | #endif |
| 58 | 58 | ||
| @@ -904,9 +904,10 @@ unsigned long my_getpwnamegid(char *name) | |||
| 904 | 904 | ||
| 905 | #if (defined BB_CHVT) || (defined BB_DEALLOCVT) || (defined BB_SETKEYCODES) | 905 | #if (defined BB_CHVT) || (defined BB_DEALLOCVT) || (defined BB_SETKEYCODES) |
| 906 | 906 | ||
| 907 | 907 | /* From <linux/kd.h> */ | |
| 908 | #include <linux/kd.h> | 908 | #define KDGKBTYPE 0x4B33 /* get keyboard type */ |
| 909 | #include <sys/ioctl.h> | 909 | #define KB_84 0x01 |
| 910 | #define KB_101 0x02 /* this is what we always answer */ | ||
| 910 | 911 | ||
| 911 | int is_a_console(int fd) | 912 | int is_a_console(int fd) |
| 912 | { | 913 | { |
