Fix up bind and mount
authorBarret Rhoden <brho@cs.berkeley.edu>
Mon, 2 Apr 2018 15:40:37 +0000 (11:40 -0400)
committerBarret Rhoden <brho@cs.berkeley.edu>
Mon, 30 Apr 2018 18:36:28 +0000 (14:36 -0400)
mount was a copy-paste from bind, but it was improved over time to have
more than one flag; bind still couldn't.

Apart from that fix, I also touched up the formatting and trailing
whitespace a bit.

Signed-off-by: Barret Rhoden <brho@cs.berkeley.edu>
tests/bind.c
tests/mount.c

index 5467934..25e8eb1 100644 (file)
@@ -1,6 +1,6 @@
 #define _LARGEFILE64_SOURCE /* needed to use lseek64 */
 
 #define _LARGEFILE64_SOURCE /* needed to use lseek64 */
 
-#include <stdio.h> 
+#include <stdio.h>
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <fcntl.h>
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <fcntl.h>
  *             bind src_path onto_path
  * plan9 says bind NEW OLD, where new is *src*, and old is *onto*.
  * Linux says mount --bind OLD NEW, where OLD is *src* and NEW is *onto*. */
  *             bind src_path onto_path
  * plan9 says bind NEW OLD, where new is *src*, and old is *onto*.
  * Linux says mount --bind OLD NEW, where OLD is *src* and NEW is *onto*. */
-int main(int argc, char *argv[]) 
-{ 
+int main(int argc, char *argv[])
+{
        int ret;
        int flag = 0;
        char *src_path, *onto_path;
        int ret;
        int flag = 0;
        char *src_path, *onto_path;
+
        /* crap arg handling for now. */
        /* crap arg handling for now. */
-       argc--,argv++;
-       if (argc > 2){
-               switch(argv[0][1]){
-                       case 'b': flag = 1;
+       argc--, argv++;
+       while (argc > 2) {
+               switch (argv[0][1]) {
+               case 'b':
+                       flag |= 1;
                        break;
                        break;
-                       case 'a': flag = 2;
+               case 'a':
+                       flag |= 2;
                        break;
                        break;
-                       case 'c': flag = 4;
+               case 'c':
+                       flag |= 4;
                        break;
                        break;
-                       default: 
-                               printf("-a or -b and/or -c for now\n");
-                               exit(0);
+               default:
+                       printf("-a or -b and/or -c for now\n");
+                       exit(0);
                }
                argc--, argv++;
        }
                }
                argc--, argv++;
        }
index 042d19e..e22c9db 100644 (file)
@@ -1,4 +1,4 @@
-#include <stdio.h> 
+#include <stdio.h>
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <fcntl.h>
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <fcntl.h>
 #include <string.h>
 #include <ros/syscall.h>
 
 #include <string.h>
 #include <ros/syscall.h>
 
-int main(int argc, char *argv[]) 
-{ 
+int main(int argc, char *argv[])
+{
        int fd;
        int flag = 0;
        int ret;
 
        /* crap arg handling for now. */
        int fd;
        int flag = 0;
        int ret;
 
        /* crap arg handling for now. */
-       argc--,argv++;
-       while (argc > 2){
+       argc--, argv++;
+       while (argc > 2) {
                switch(argv[0][1]){
                switch(argv[0][1]){
-                       case 'b': flag |= 1;
+               case 'b':
+                       flag |= 1;
                        break;
                        break;
-                       case 'a': flag |= 2;
+               case 'a':
+                       flag |= 2;
                        break;
                        break;
-                       case 'c': flag |= 4;
+               case 'c':
+                       flag |= 4;
                        break;
                        break;
-                       case 'C': flag |= 0x10;
+               case 'C':
+                       flag |= 0x10;
                        break;
                        break;
-                       default: 
-                               printf("-a or -b and/or -c and/or -C for now\n");
-                               exit(-1);
+               default:
+                       printf("-a or -b and/or -c and/or -C for now\n");
+                       exit(-1);
                }
                argc--, argv++;
        }
                }
                argc--, argv++;
        }