diff options
Diffstat (limited to 'packages/busybox/slingbox-1.3.1/halt.patch')
-rw-r--r-- | packages/busybox/slingbox-1.3.1/halt.patch | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/packages/busybox/slingbox-1.3.1/halt.patch b/packages/busybox/slingbox-1.3.1/halt.patch new file mode 100644 index 0000000000..729c3b7ecd --- /dev/null +++ b/packages/busybox/slingbox-1.3.1/halt.patch @@ -0,0 +1,40 @@ +diff -Naur busybox-1.3.1.orig/init/halt.c busybox-1.3.1/init/halt.c +--- busybox-1.3.1.orig/init/halt.c 2006-12-26 22:56:38.000000000 -0600 ++++ busybox-1.3.1/init/halt.c 2006-12-29 22:48:18.000000000 -0600 +@@ -10,6 +10,8 @@ + #include "busybox.h" + #include <sys/reboot.h> + ++#include "init_shared.h" /* Linksys mods */ ++ + int halt_main(int argc, char *argv[]) + { + static const int magic[] = { +@@ -38,6 +40,12 @@ + if (flags & 1) sleep(xatou(delay)); + if (!(flags & 2)) sync(); + ++/* Linksys Halt code - adapted from the Linksys source for Busybox. */ ++ rc = bb_shutdown_system(magic[which]); ++ if (rc) bb_error_msg("No."); ++ return rc; /* Shrug */ ++/* End of Linksys code */ ++ + /* Perform action. */ + if (ENABLE_INIT && !(flags & 4)) { + if (ENABLE_FEATURE_INITRD) { +diff -Naur busybox-1.3.1.orig/init/init_shared.c busybox-1.3.1/init/init_shared.c +--- busybox-1.3.1.orig/init/init_shared.c 2006-12-26 22:56:38.000000000 -0600 ++++ busybox-1.3.1/init/init_shared.c 2006-12-29 22:48:18.000000000 -0600 +@@ -57,6 +57,11 @@ + + sync(); + ++/* Linksys Halt code - if poweroff or halt, invoke an external program ++ to do actually turn off the power. */ ++ if (magic != 0x01234567) system("/usr/bin/Set_Led power_off"); ++/* End of Linksys Halt code */ ++ + reboot(magic); + return 0; /* Shrug */ + } |