tests: Create and remove socket directories.
authorJustus Winter <justus@g10code.com>
Thu, 20 Oct 2016 09:37:26 +0000 (11:37 +0200)
committerJustus Winter <justus@g10code.com>
Thu, 20 Oct 2016 15:01:23 +0000 (17:01 +0200)
* tests/openpgp/defs.scm (start-agent): Move function here and create
the socket directory prior to starting the agent.
(stop-agent): Move function here and remove the socket directory.
* tests/openpgp/finish.scm: Adapt.
* tests/openpgp/setup.scm: Likewise.

Signed-off-by: Justus Winter <justus@g10code.com>
tests/openpgp/defs.scm
tests/openpgp/finish.scm
tests/openpgp/setup.scm

index e484e86..48ac46c 100644 (file)
 (let ((verbose (string->number (getenv "verbose"))))
   (if (number? verbose)
       (*set-verbose!* verbose)))
+
+;; Create the socket dir and start the agent.
+(define (start-agent)
+  (echo "Starting gpg-agent...")
+  (catch (echo "Warning: Creating socket directory failed:" (car *error*))
+        (call-popen `(,(tool 'gpgconf) --create-socketdir) ""))
+  (call-check `(,(tool 'gpg-connect-agent) --verbose
+               ,(string-append "--agent-program=" (tool 'gpg-agent)
+                               "|--debug-quick-random")
+               /bye)))
+
+;; Stop the agent and remove the socket dir.
+(define (stop-agent)
+  (echo "Stopping gpg-agent...")
+  (catch (echo "Warning: Removing socket directory failed.")
+        (call-popen `(,(tool 'gpgconf) --remove-socketdir) ""))
+  (call-check `(,(tool 'gpg-connect-agent) --verbose killagent /bye)))
index 48801c8..37845ae 100755 (executable)
@@ -19,5 +19,4 @@
 
 (load (with-path "defs.scm"))
 
-(echo "Killing gpg-agent...")
-(call-check `(,(tool 'gpg-connect-agent) --verbose killagent /bye))
+(stop-agent)
index 75310d1..99fbdea 100755 (executable)
    (pipe:spawn `(,@GPG --dearmor))
    (pipe:spawn `(,@GPG --yes --import))))
 
-(define (start-agent)
-  (echo "Starting gpg-agent...")
-  (call-check `(,(tool 'gpg-connect-agent) --verbose
-               ,(string-append "--agent-program=" (tool 'gpg-agent)
-                               "|--debug-quick-random")
-               /bye))
-
+(define (preset-passphrases)
   (info "Preset passphrases")
   ;; one@example.com
   (call-check `(,(tool 'gpg-preset-passphrase)
                "A0747D5F9425E6664F4FFBEED20FBCA79FDED2BD"))
   (echo "All set up."))
 
-(define (kill-agent)
-  (call-check `(,(tool 'gpg-connect-agent) --verbose killagent /bye)))
-
 (cond
  ((member "--create-tarball" *args*)
   (with-temporary-working-directory
    (setenv "GNUPGHOME" (getcwd) #t)
    (create-gpghome)
-   (kill-agent)
+   (stop-agent)
    (call-check `(,(tool 'gpgtar) --create --output ,(cadr *args*) "."))))
  ((member "--unpack-tarball" *args*)
   (call-check `(,(tool 'gpgtar) --extract --directory=. ,(cadr *args*)))
-  (start-agent))
+  (start-agent)
+  (preset-passphrases))
  (else
   (create-gpghome)
-  (start-agent)))
+  (start-agent)
+  (preset-passphrases)))