summaryrefslogtreecommitdiff
path: root/packages/busybox/slingbox-1.00
diff options
context:
space:
mode:
Diffstat (limited to 'packages/busybox/slingbox-1.00')
-rw-r--r--packages/busybox/slingbox-1.00/defconfig4
-rw-r--r--packages/busybox/slingbox-1.00/lazy_umount.patch42
2 files changed, 44 insertions, 2 deletions
diff --git a/packages/busybox/slingbox-1.00/defconfig b/packages/busybox/slingbox-1.00/defconfig
index 463b3a8d19..d35d7d5956 100644
--- a/packages/busybox/slingbox-1.00/defconfig
+++ b/packages/busybox/slingbox-1.00/defconfig
@@ -255,7 +255,7 @@ CONFIG_NC=y
# CONFIG_TFTP is not set
# CONFIG_TRACEROUTE is not set
# CONFIG_VCONFIG is not set
-# CONFIG_WGET is not set
+CONFIG_WGET=y
# CONFIG_FEATURE_WGET_STATUSBAR is not set
# CONFIG_FEATURE_WGET_AUTHENTICATION is not set
# CONFIG_FEATURE_WGET_IP6_LITERAL is not set
@@ -320,7 +320,7 @@ CONFIG_PIVOT_ROOT=y
CONFIG_MOUNT=y
CONFIG_NFSMOUNT=y
CONFIG_UMOUNT=y
-# CONFIG_FEATURE_MOUNT_FORCE is not set
+CONFIG_FEATURE_MOUNT_FORCE=y
#
# Common options for mount/umount
diff --git a/packages/busybox/slingbox-1.00/lazy_umount.patch b/packages/busybox/slingbox-1.00/lazy_umount.patch
new file mode 100644
index 0000000000..0608017e70
--- /dev/null
+++ b/packages/busybox/slingbox-1.00/lazy_umount.patch
@@ -0,0 +1,42 @@
+--- busybox-1.00-orig/util-linux/umount.c 2005-12-16 23:13:33.000000000 -0600
++++ busybox-1.00/util-linux/umount.c 2005-12-16 23:16:49.000000000 -0600
+@@ -35,6 +35,7 @@
+ #endif
+
+ static const int MNT_FORCE = 1;
++static const int MNT_DETACH = 2; /* Linksys -L mod */
+ static const int MS_MGC_VAL = 0xc0ed0000; /* Magic number indicatng "new" flags */
+ static const int MS_REMOUNT = 32; /* Alter flags of a mounted FS. */
+ static const int MS_RDONLY = 1; /* Mount read-only. */
+@@ -54,7 +55,7 @@
+ static struct _mtab_entry_t *mtab_cache = NULL;
+
+
+-
++static int doLazy = FALSE; /* Linksys -L mod */
+ #if defined CONFIG_FEATURE_MOUNT_FORCE
+ static int doForce = FALSE;
+ #endif
+@@ -181,6 +182,12 @@
+ /* this was a loop device, delete it */
+ del_loop(blockDevice);
+ #endif
++ if (status != 0 && doLazy) { /* Linksys -L mod */
++ status = umount2(blockDevice, MNT_DETACH);
++ if (status != 0) {
++ bb_error_msg_and_die("lazy umount of %s failed!", blockDevice);
++ }
++ }
+ #if defined CONFIG_FEATURE_MOUNT_FORCE
+ if (status != 0 && doForce) {
+ status = umount2(blockDevice, MNT_FORCE);
+@@ -259,6 +266,9 @@
+ freeLoop = FALSE;
+ break;
+ #endif
++ case 'L': /* Linksys -L mod */
++ doLazy = TRUE;
++ break;
+ #ifdef CONFIG_FEATURE_MTAB_SUPPORT
+ case 'n':
+ useMtab = FALSE;