]> git.ipfire.org Git - thirdparty/gnutls.git/commitdiff
Add self-test of RFC 2253 escaping.
authorSimon Josefsson <simon@josefsson.org>
Wed, 5 Aug 2009 10:03:01 +0000 (12:03 +0200)
committerSimon Josefsson <simon@josefsson.org>
Wed, 5 Aug 2009 10:03:01 +0000 (12:03 +0200)
tests/Makefile.am
tests/rfc2253-escape-test [new file with mode: 0755]

index b27c881371d9eab3c20cceb267389b9da2459c8d..63b24972122257e4170d601dcfbae6be0a21200c 100644 (file)
@@ -58,7 +58,7 @@ ctests = simple gc set_pkcs12_cred certder mpi                                \
        finished hostname-check cve-2008-4989 pkcs12_s2k chainverify    \
        crq_key_id x509sign-verify cve-2009-1415 cve-2009-1416          \
        crq_apis init_roundtrip pkcs12_s2k_pem dn2 mini-eagain          \
-       nul-in-x509-names
+       nul-in-x509-names rfc2231-escape-test
 
 if ENABLE_OPENSSL
 ctests +=  openssl
@@ -93,4 +93,5 @@ TESTS_ENVIRONMENT = \
        PKCS12PASSWORD=foobar \
        PKCS12FILE_2=$(srcdir)/pkcs12-decode/pkcs12_2certs.p12  \
        PKCS12PASSWORD_2="" \
+       EXEEXT=$(EXEEXT) \
        $(VALGRIND)
diff --git a/tests/rfc2253-escape-test b/tests/rfc2253-escape-test
new file mode 100755 (executable)
index 0000000..35cd35e
--- /dev/null
@@ -0,0 +1,53 @@
+#!/bin/sh
+
+# Copyright (C) 2009 Free Software Foundation
+#
+# Author: Simon Josefsson
+#
+# This file is part of GNUTLS.
+#
+# GNUTLS is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the
+# Free Software Foundation; either version 3 of the License, or (at
+# your option) any later version.
+#
+# GNUTLS is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with GNUTLS; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
+set -e
+
+srcdir=${srcdir:-.}
+CERTTOOL=${CERTTOOL:-../src/certtool$EXEEXT}
+
+if cat<<EOF \
+    | $CERTTOOL --certificate-info \
+    | grep -q 'Issuer: O=RFC 2253 escape test,OU=Plus \\+ Comma \\,'
+-----BEGIN CERTIFICATE-----
+MIICETCCAXygAwIBAgIESnlIMTALBgkqhkiG9w0BAQUwODEdMBsGA1UEChMUUkZD
+IDIyNTMgZXNjYXBlIHRlc3QxFzAVBgNVBAsTDlBsdXMgKyBDb21tYSAsMB4XDTA5
+MDgwNTA4NTIwMVoXDTM2MTIyMTA4NTIwNFowODEdMBsGA1UEChMUUkZDIDIyNTMg
+ZXNjYXBlIHRlc3QxFzAVBgNVBAsTDlBsdXMgKyBDb21tYSAsMIGcMAsGCSqGSIb3
+DQEBAQOBjAAwgYgCgYC7ZkP18sXXtozMxd/1iDuxyUtqDqGtIFBACIChT1yj0Phs
+z+Y89+wEdhMXi2SJIlvA3VN8O+18BLuAuSi+jpvGjqClEsv1Vx6i57u3M0mf47tK
+rmpNaP/JEeIyjc49gAuNde/YAIGPKAQDoCKNYQQH+rY3fSEHSdIJYWmYkKNYqQID
+AQABoy8wLTAMBgNVHRMBAf8EAjAAMB0GA1UdDgQWBBRMuQqb+h00437ey9IHFf6h
+2stokTALBgkqhkiG9w0BAQUDgYEAmvr55otCWJx8ReDt5jFKd8aDk3jm6RSogV/P
++fBYR69w25NxgSWVsQeoSi2Jklpqa20koynCya087TM8ODl3lO0XbmG1YGksnM6R
+RMCUzqiqC2be1s2N+Bml4cIWTHzPZfnF/qXfbbkouepfbdscprXu07Z317kdAG8+
+iptEYYo=
+-----END CERTIFICATE-----
+EOF
+then
+    :
+else
+    echo "RFC 2253 escaping not working?"
+    exit 1
+fi
+
+exit 0