g13: Allow the use of a g13tab label for --mount.
authorWerner Koch <wk@gnupg.org>
Sun, 14 Aug 2016 18:23:12 +0000 (20:23 +0200)
committerWerner Koch <wk@gnupg.org>
Sun, 14 Aug 2016 18:23:12 +0000 (20:23 +0200)
* g13/mount.c (g13_mount_container): Do not run the first access check
if syshelp is required.

Signed-off-by: Werner Koch <wk@gnupg.org>
g13/mount.c

index f4371cc..b46c8d0 100644 (file)
@@ -60,10 +60,6 @@ g13_mount_container (ctrl_t ctrl, const char *filename, const char *mountpoint)
   char *mountpoint_buffer = NULL;
   char *blockdev_buffer = NULL;
 
-  /* A quick check to see whether the container exists.  */
-  if (access (filename, F_OK))
-    return gpg_error_from_syserror ();
-
   /* Decide whether we need to use the g13-syshelp.  */
   err = call_syshelp_find_device (ctrl, filename, &blockdev_buffer);
   if (!err)
@@ -77,6 +73,12 @@ g13_mount_container (ctrl_t ctrl, const char *filename, const char *mountpoint)
                  filename, gpg_strerror (err), gpg_strsource (err));
       return err;
     }
+  else
+    {
+      /* A quick check to see whether we can the container exists.  */
+      if (access (filename, R_OK))
+        return gpg_error_from_syserror ();
+    }
 
   if (!mountpoint)
     {