tls: in AES-GCM decoding, avoid memmove
[oweals/busybox.git] / util-linux / umount.c
index 33667b13cfa72e635bc8075689bc1adb5749f54c..e2329f8b34c42a383e3ba58b97f17c099c216d7d 100644 (file)
@@ -35,6 +35,8 @@
  * In this case, you might be actually happy if your standalone bbox shell
  * does not fork+exec, but only forks and calls umount_main() which it already has!
  * Let's go with NOEXEC.
+ *
+ * bb_common_bufsiz1 usage here is safe wrt NOEXEC: not expecting it to be zeroed.
  */
 
 //kbuild:lib-$(CONFIG_UMOUNT) += umount.o
@@ -55,6 +57,7 @@
 //usage:       IF_FEATURE_MOUNT_LOOP(
 //usage:     "\n       -d      Free loop device if it has been used"
 //usage:       )
+//usage:     "\n       -t FSTYPE[,...] Unmount only these filesystem type(s)"
 //usage:
 //usage:#define umount_example_usage
 //usage:       "$ umount /dev/hdc1\n"
@@ -79,8 +82,8 @@ static struct mntent *getmntent_r(FILE* stream, struct mntent* result,
 }
 #endif
 
-/* ignored: -v -t -i */
-#define OPTION_STRING           "fldnra" "vt:i"
+/* ignored: -c -v -i */
+#define OPTION_STRING           "fldnrat:" "cvi"
 #define OPT_FORCE               (1 << 0) // Same as MNT_FORCE
 #define OPT_LAZY                (1 << 1) // Same as MNT_DETACH
 #define OPT_FREELOOP            (1 << 2)
@@ -141,7 +144,8 @@ int umount_main(int argc UNUSED_PARAM, char **argv)
        }
 
        // If we're not umounting all, we need at least one argument.
-       if (!(opt & OPT_ALL) && !fstype) {
+       // Note: "-t FSTYPE" does not imply -a.
+       if (!(opt & OPT_ALL)) {
                if (!argv[0])
                        bb_show_usage();
                m = NULL;