[Pkg-gnupg-commit] [gnupg2] 213/292: tests, tools: Reimplement 'mk-tdata' in Scheme.

Daniel Kahn Gillmor dkg at fifthhorseman.net
Mon Nov 21 06:31:44 UTC 2016


This is an automated email from the git hooks/post-receive script.

dkg pushed a commit to branch master
in repository gnupg2.

commit 70215ff470c82d144e872057dfa5a478cc9195f2
Author: Justus Winter <justus at g10code.com>
Date:   Mon Nov 7 12:28:07 2016 +0100

    tests,tools: Reimplement 'mk-tdata' in Scheme.
    
    * tests/openpgp/defs.scm (tools): Drop 'mk-tdata'.
    * tests/openpgp/setup.scm (make-test-data): New function.
    * tests/openpgp/verify.scm: Avoid 'mk-tdata'.
    * tools/Makefile.am (noinst_PROGRAMS): Drop 'mk-tdata'.
    * tools/mk-tdata.c: Drop file.
    
    Signed-off-by: Justus Winter <justus at g10code.com>
---
 tests/openpgp/defs.scm   |  1 -
 tests/openpgp/setup.scm  | 16 +++++++----
 tests/openpgp/verify.scm | 10 ++++---
 tools/Makefile.am        |  2 +-
 tools/mk-tdata.c         | 75 ------------------------------------------------
 5 files changed, 17 insertions(+), 87 deletions(-)

diff --git a/tests/openpgp/defs.scm b/tests/openpgp/defs.scm
index c911ea3..62bd1e2 100644
--- a/tests/openpgp/defs.scm
+++ b/tests/openpgp/defs.scm
@@ -59,7 +59,6 @@
     (gpgconf "GPGCONF" "tools/gpgconf")
     (gpg-preset-passphrase "GPG_PRESET_PASSPHRASE"
 			   "agent/gpg-preset-passphrase")
-    (mktdata "MKTDATA" "tools/mk-tdata")
     (gpgtar "GPGTAR" "tools/gpgtar")
     (gpg-zip "GPGZIP" "tools/gpg-zip")
     (pinentry "PINENTRY" "tests/openpgp/fake-pinentry")))
diff --git a/tests/openpgp/setup.scm b/tests/openpgp/setup.scm
index 99fbdea..d3ce0d6 100755
--- a/tests/openpgp/setup.scm
+++ b/tests/openpgp/setup.scm
@@ -19,11 +19,17 @@
 
 (load (with-path "defs.scm"))
 
+(define (make-test-data filename size)
+  (call-with-binary-output-file
+   filename
+   (lambda (port)
+     (display (make-random-string size) port))))
+
 (define (create-gpghome)
   (echo "Creating test environment...")
 
-  (letfd ((fd (open "random_seed" (logior O_WRONLY O_CREAT O_BINARY) #o600)))
-	 (call-with-fds (list (tool 'mktdata) "600") CLOSED_FD fd STDERR_FILENO))
+  (srandom (getpid))
+  (make-test-data "random_seed" 600)
 
   (for-each-p
    "Creating configuration files"
@@ -44,10 +50,8 @@
 
   (for-each-p "Creating sample data files"
 	      (lambda (size)
-		(letfd ((fd (open (string-append "data-" (number->string size))
-				  (logior O_WRONLY O_CREAT O_BINARY) #o600)))
-		       (call-with-fds (list (tool 'mktdata) (number->string size))
-				      CLOSED_FD fd STDERR_FILENO)))
+		(make-test-data (string-append "data-" (number->string size))
+				size))
 	      '(500 9000 32000 80000))
 
   (for-each-p "Unpacking samples"
diff --git a/tests/openpgp/verify.scm b/tests/openpgp/verify.scm
index e8aa7df..eb984b1 100755
--- a/tests/openpgp/verify.scm
+++ b/tests/openpgp/verify.scm
@@ -26,12 +26,14 @@
  "Checking bogus signature"
  (lambda (char)
    (lettmp (x)
-     (pipe:do
-      (pipe:spawn `(,(tool 'mktdata) --char ,char "64"))
-      (pipe:write-to x (logior O_WRONLY O_CREAT O_BINARY) #o600))
+     (call-with-binary-output-file
+      x
+      (lambda (port)
+	(display (make-string 64 (integer->char (string->number char)))
+		 port)))
      (if (= 0 (call `(, at GPG --verify ,x data-500)))
 	 (error "no error code from verify"))))
- '("0x2d" "0xca"))
+ '("#x2d" "#xca"))
 
 ;; A plain signed message created using
 ;;  echo abc | gpg --homedir . --passphrase-fd 0 -u Alpha -z0 -sa msg
diff --git a/tools/Makefile.am b/tools/Makefile.am
index c07a8b1..75750f7 100644
--- a/tools/Makefile.am
+++ b/tools/Makefile.am
@@ -66,7 +66,7 @@ libexec_PROGRAMS += gpg-check-pattern
 endif
 
 if !HAVE_W32CE_SYSTEM
-noinst_PROGRAMS = clean-sat mk-tdata make-dns-cert gpgsplit
+noinst_PROGRAMS = clean-sat make-dns-cert gpgsplit
 endif
 
 if !HAVE_W32CE_SYSTEM
diff --git a/tools/mk-tdata.c b/tools/mk-tdata.c
deleted file mode 100644
index 0aca035..0000000
--- a/tools/mk-tdata.c
+++ /dev/null
@@ -1,75 +0,0 @@
-/* mk-tdata.c -  Create some simple random testdata
- * Copyright (C) 1998, 1999, 2000, 2001, 2006 Free Software Foundation, Inc.
- *
- * This file is free software; as a special exception the author gives
- * unlimited permission to copy and/or distribute it, with or without
- * modifications, as long as this notice is preserved.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
- * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
-#include <fcntl.h>
-
-
-#ifndef RAND_MAX   /* for SunOS */
-#define RAND_MAX 32767
-#endif
-
-int
-main(int argc, char **argv)
-{
-  int i, c = 0;
-  int limit =0;
-  int char_mode = 0;
-
-#if HAVE_W32_SYSTEM
-  if (setmode (fileno (stdout), O_BINARY) == -1)
-    perror ("setmode");
-#endif
-
-  if (argc)
-    {
-      argc--;
-      argv++;
-    }
-
-  /* Check for option --char N */
-  if (argc > 1 && !strcmp (argv[0], "--char"))
-    {
-      char_mode = 1;
-      c = strtol (argv[1], NULL, 0);
-      argc -= 2;
-      argv += 2;
-    }
-
-  limit = argc ? atoi(argv[0]) : 0;
-
-  srand(getpid());
-
-  for (i=0; !limit || i < limit; i++ )
-    {
-      if (char_mode)
-        {
-          putchar (c);
-        }
-      else
-        {
-#ifdef HAVE_RAND
-          c = ((unsigned)(1 + (int) (256.0*rand()/(RAND_MAX+1.0)))-1);
-#else
-          c = ((unsigned)(1 + (int) (256.0*random()/(RAND_MAX+1.0)))-1);
-#endif
-          putchar (c);
-        }
-    }
-  return 0;
-}

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-gnupg/gnupg2.git



More information about the Pkg-gnupg-commit mailing list