]> git.ipfire.org Git - thirdparty/gnutls.git/commitdiff
Don't generate DH primes in Guile self checks (for speed).
authorSimon Josefsson <simon@josefsson.org>
Thu, 14 Oct 2010 20:21:22 +0000 (22:21 +0200)
committerSimon Josefsson <simon@josefsson.org>
Thu, 14 Oct 2010 20:21:22 +0000 (22:21 +0200)
guile/tests/Makefile.am
guile/tests/anonymous-auth.scm
guile/tests/dh-parameters.pem [new file with mode: 0644]
guile/tests/openpgp-auth.scm
guile/tests/pkcs-import-export.scm
guile/tests/session-record-port.scm
guile/tests/x509-auth.scm

index aaa8e9a987e788d79301ada9bec57c487d5fb87b..0832b1e806da394bfc779546f2b85026f26a9d36 100644 (file)
@@ -35,5 +35,5 @@ TESTS_ENVIRONMENT =                                   \
 
 EXTRA_DIST = $(TESTS) openpgp-pub.asc openpgp-sec.asc  \
              openpgp-keyring.gpg openpgp-keyring.asc   \
-            rsa-parameters.pem                         \
+            rsa-parameters.pem dh-parameters.pem       \
             x509-certificate.pem x509-key.pem
index 7d5941e8de172204cc569292b2354f011a19f3e1..17f5e8047daed5a655d843a1df95f9476da19e75 100644 (file)
 ;; Message sent by the client.
 (define %message (apply u8vector (iota 256)))
 
+(define (import-something import-proc file fmt)
+  (let* ((path (search-path %load-path file))
+         (size (stat:size (stat path)))
+         (raw  (make-u8vector size)))
+    (uniform-vector-read! raw (open-input-file path))
+    (import-proc raw fmt)))
+
+(define (import-dh-params file)
+  (import-something pkcs3-import-dh-parameters file
+                    x509-certificate-format/pem))
+
 ;; Debugging.
 ;; (set-log-level! 100)
 ;; (set-log-procedure! (lambda (level str)
@@ -82,7 +93,7 @@
 
               (set-session-transport-fd! server (fileno (cdr socket-pair)))
               (let ((cred (make-anonymous-server-credentials))
-                    (dh-params (make-dh-parameters 1024)))
+                    (dh-params (import-dh-params "dh-parameters.pem")))
                 ;; Note: DH parameter generation can take some time.
                 (set-anonymous-server-dh-parameters! cred dh-params)
                 (set-session-credentials! server cred))
diff --git a/guile/tests/dh-parameters.pem b/guile/tests/dh-parameters.pem
new file mode 100644 (file)
index 0000000..9a824c3
--- /dev/null
@@ -0,0 +1,5 @@
+-----BEGIN DH PARAMETERS-----
+MIGGAoGAtkxw2jlsVCsrfLqxrN+IrF/3W8vVFvDzYbLmxi2GQv9s/PQGWP1d9i22
+P2DprfcJknWt7KhCI1SaYseOQIIIAYP78CfyIpGScW/vS8khrw0rlQiyeCvQgF3O
+GeGOEywcw+oQT4SmFOD7H0smJe2CNyjYpexBXQ/A0mbTF9QKm1cCAQU=
+-----END DH PARAMETERS-----
index e02db5fed233e6d3de0c0c73f9ce33acf4a09a55..fe3c0cf71f65253a218ed7c0b0277e2652a24f89 100644 (file)
   (import-something pkcs1-import-rsa-parameters file
                     x509-certificate-format/pem))
 
+(define (import-dh-params file)
+  (import-something pkcs3-import-dh-parameters file
+                    x509-certificate-format/pem))
+
 ;; Debugging.
 ;; (set-log-level! 3)
 ;; (set-log-procedure! (lambda (level str)
 
               (let ((server (make-session connection-end/server))
                     (rsa    (import-rsa-params "rsa-parameters.pem"))
-                    (dh     (make-dh-parameters 1024)))
+                    (dh     (import-dh-params "dh-parameters.pem")))
                 ;; server-side
                 (set-session-default-priority! server)
                 (set-session-certificate-type-priority! server %certs)
index 79f9aeebcf3bb77362c2aeb86fc7e5d58dbc3ac1..8900f159920ea006b42572faaa30957b916f27c8 100644 (file)
 (use-modules (gnutls)
              (srfi srfi-4))
 
+(define (import-something import-proc file fmt)
+  (let* ((path (search-path %load-path file))
+         (size (stat:size (stat path)))
+         (raw  (make-u8vector size)))
+    (uniform-vector-read! raw (open-input-file path))
+    (import-proc raw fmt)))
+
+(define (import-dh-params file)
+  (import-something pkcs3-import-dh-parameters file
+                    x509-certificate-format/pem))
+
 (dynamic-wind
 
     (lambda ()
@@ -32,7 +43,7 @@
 
     (lambda ()
       (exit
-       (let* ((dh-params (make-dh-parameters 1024))
+       (let* ((dh-params (import-dh-params "dh-parameters.pem"))
               (export
                (pkcs3-export-dh-parameters dh-params
                                            x509-certificate-format/pem)))
index 49eaa5f3e569356e315dc88dce3efdd2d7c43284..a41ea2cd63f009c0f76833ccea01dbcfdb66fd6c 100644 (file)
 ;; Message sent by the client.
 (define %message (apply u8vector (iota 256)))
 
+(define (import-something import-proc file fmt)
+  (let* ((path (search-path %load-path file))
+         (size (stat:size (stat path)))
+         (raw  (make-u8vector size)))
+    (uniform-vector-read! raw (open-input-file path))
+    (import-proc raw fmt)))
+
+(define (import-dh-params file)
+  (import-something pkcs3-import-dh-parameters file
+                    x509-certificate-format/pem))
+
 ;; Debugging.
 ;; (set-log-level! 100)
 ;; (set-log-procedure! (lambda (level str)
 
               (set-session-transport-port! server (cdr socket-pair))
               (let ((cred (make-anonymous-server-credentials))
-                    (dh-params (make-dh-parameters 1024)))
+                    (dh-params (import-dh-params "dh-parameters.pem")))
                 ;; Note: DH parameter generation can take some time.
                 (set-anonymous-server-dh-parameters! cred dh-params)
                 (set-session-credentials! server cred))
index 4363e434166b60a4530e7024fc8f25353ad676ad..83cf4238083020ef4cf6ac4a672e27421c344f57 100644 (file)
   (import-something pkcs1-import-rsa-parameters file
                     x509-certificate-format/pem))
 
+(define (import-dh-params file)
+  (import-something pkcs3-import-dh-parameters file
+                    x509-certificate-format/pem))
+
 ;; Debugging.
 ;; (set-log-level! 3)
 ;; (set-log-procedure! (lambda (level str)
@@ -95,7 +99,7 @@
 
               (let ((server (make-session connection-end/server))
                     (rsa    (import-rsa-params "rsa-parameters.pem"))
-                    (dh     (make-dh-parameters 1024)))
+                    (dh     (import-dh-params "dh-parameters.pem")))
                 ;; server-side
                 (set-session-default-priority! server)
                 (set-session-certificate-type-priority! server %certs)