Return the correct exit status on failed mounts
authorSteve Dickson <steved@redhat.com>
Fri, 16 Mar 2007 06:08:04 +0000 (17:08 +1100)
committerNeil Brown <neilb@suse.de>
Fri, 16 Mar 2007 06:08:04 +0000 (17:08 +1100)
Signed-off-by: Steve Dickson <steved@redhat.com>
Signed-off-by: Neil Brown <neilb@suse.de>
utils/mount/mount.c

index 7d58ef6..72cb89d 100644 (file)
@@ -392,19 +392,25 @@ int main(int argc, char *argv[])
                        start_statd();
        }
 
-       if (!mnt_err && !fake) {
-               mnt_err = do_mount_syscall(spec, mount_point, nfs_mount_vers == 4 ? "nfs4" : "nfs", flags, mount_opts);
-               
-               if(mnt_err) {
-                       mount_error(mount_point);
-                       exit(-1);
-               }
+       if (fake)
+               return 0;
+       if (mnt_err)
+               exit(EX_FAIL);
 
-               if(!nomtab)
-                       add_mtab(spec, mount_point, nfs_mount_vers == 4 ? "nfs4" : "nfs",
-                                flags, extra_opts, 0, 0);
+       mnt_err = do_mount_syscall(spec, mount_point,
+                                  nfs_mount_vers == 4 ? "nfs4" : "nfs",
+                                  flags, mount_opts);
+               
+       if (mnt_err) {
+               mount_error(mount_point);
+               exit(EX_FAIL);
        }
 
+       if (!nomtab)
+               add_mtab(spec, mount_point,
+                        nfs_mount_vers == 4 ? "nfs4" : "nfs",
+                        flags, extra_opts, 0, 0);
+
        return 0;
 }