g10: Fix flags to open for lock of ToFU.
authorNIIBE Yutaka <gniibe@fsij.org>
Fri, 18 Nov 2016 11:32:22 +0000 (20:32 +0900)
committerNIIBE Yutaka <gniibe@fsij.org>
Fri, 18 Nov 2016 11:32:22 +0000 (20:32 +0900)
* g10/tofu.c (busy_handler): Fix the flags and utime is not needed.

--

The argument flags must include one of O_RDONLY, O_WRONLY, or O_RDWR.
Adding O_TRUNC, the file is updated.  So, utime is not needed.

Fixes-commit: b2e1b17efa952afcf7aeec8b15e9d0088dba587a
Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
g10/tofu.c

index cf1d00a..2c9d17c 100644 (file)
@@ -732,16 +732,13 @@ busy_handler (void *cookie, int call_count)
          process will have to wait a bit longer, but otherwise nothing
          horrible should happen.  */
 
-      int fd = open (dbs->want_lock_file, O_CREAT,
+      int fd = open (dbs->want_lock_file, O_CREAT|O_WRONLY|O_TRUNC,
                      S_IRUSR|S_IRGRP|S_IROTH|S_IWUSR);
       if (fd == -1)
         log_debug ("TOFU: Error opening '%s': %s\n",
                    dbs->want_lock_file, strerror (errno));
       else
-        {
-          utime (dbs->want_lock_file, NULL);
-          close (fd);
-        }
+        close (fd);
     }
 
   /* Call again.  */