gnu: oath-toolkit: Fix test failure with new xmlsec.
authorMarius Bakke <marius@gnu.org>
Sun, 20 Nov 2022 19:49:10 +0000 (20:49 +0100)
committerMarius Bakke <marius@gnu.org>
Sun, 20 Nov 2022 20:08:08 +0000 (21:08 +0100)
* gnu/packages/patches/oath-toolkit-xmlsec-compat.patch: New file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/authentication.scm (oath-toolkit)[source](patches): New field.

gnu/local.mk
gnu/packages/authentication.scm
gnu/packages/patches/oath-toolkit-xmlsec-compat.patch [new file with mode: 0644]

index 02cd182..949328b 100644 (file)
@@ -1587,6 +1587,7 @@ dist_patch_DATA =                                         \
   %D%/packages/patches/nvi-dbpagesize-binpower.patch           \
   %D%/packages/patches/nvi-db4.patch                           \
   %D%/packages/patches/nyacc-binary-literals.patch             \
+  %D%/packages/patches/oath-toolkit-xmlsec-compat.patch                \
   %D%/packages/patches/obs-modules-location.patch              \
   %D%/packages/patches/ocaml-dose3-add-unix-dependency.patch   \
   %D%/packages/patches/ocaml-dose3-Fix-for-ocaml-4.06.patch    \
index fa5199c..d9dd6fa 100644 (file)
@@ -43,6 +43,7 @@
        (method url-fetch)
        (uri (string-append "https://download.savannah.nongnu.org/releases/"
                            name "/" name "-" version ".tar.gz"))
+       (patches (search-patches "oath-toolkit-xmlsec-compat.patch"))
        (sha256
         (base32 "1aa620k05lsw3l3slkp2mzma40q3p9wginspn9zk8digiz7dzv9n"))))
     (build-system gnu-build-system)
diff --git a/gnu/packages/patches/oath-toolkit-xmlsec-compat.patch b/gnu/packages/patches/oath-toolkit-xmlsec-compat.patch
new file mode 100644 (file)
index 0000000..1858936
--- /dev/null
@@ -0,0 +1,79 @@
+Adjust tests for compatibility with newer xmlsec.
+
+Taken from upstream:
+
+  https://gitlab.com/oath-toolkit/oath-toolkit/-/commit/0ae59b9c72f69ee21044e736e292b73051df3272
+
+diff --git a/libpskc/examples/pskc-hotp-signed.xml b/libpskc/examples/pskc-hotp-signed.xml
+index 359dd4723cf2b5ae1ca53d793cc6900a15bd4969..396e0829ff245b3ad6953cc3523d77568c8a18f4 100644
+--- a/libpskc/examples/pskc-hotp-signed.xml
++++ b/libpskc/examples/pskc-hotp-signed.xml
+@@ -38,7 +38,8 @@ rIXbwqKhnBP943U4Ch31oEbZtbo+XRbiq11wv6dLNsi76TNGDqsjTKgEcSIYI6Vd
+ rMxnil6ChoIBvSSPGHhJuj1bW1EPW92JtIa6byrAj1m4RwSviQy2i65YoIdtrhRt
+ CWekj2zuL/0szv5rZMCCvxioOCA8znqELEPMfs0Aa/cACD2MZcC4gGXehNCvzYJr
+ TmB6lFpxP6f0g6eO7PVcqYN9NCwECxb5Cvx2j2uNlereY35/9oPR6YJx+V7sL+DB
+-n6F0mN8OUAFxDamepKdGRApU8uZ35624o/I4</X509Certificate>
++n6F0mN8OUAFxDamepKdGRApU8uZ35624o/I4
++</X509Certificate>
+ </X509Data>
+ </KeyInfo>
+ </Signature></KeyContainer>
+diff --git a/pskctool/tests/pskc-all-signed.xml b/pskctool/tests/pskc-all-signed.xml
+index 39cf8af5bb00e34fa5e1acb97cea59ff742758f4..5d44e72d928ccf1f46975e6ccca58297e235be95 100644
+--- a/pskctool/tests/pskc-all-signed.xml
++++ b/pskctool/tests/pskc-all-signed.xml
+@@ -38,7 +38,8 @@ rIXbwqKhnBP943U4Ch31oEbZtbo+XRbiq11wv6dLNsi76TNGDqsjTKgEcSIYI6Vd
+ rMxnil6ChoIBvSSPGHhJuj1bW1EPW92JtIa6byrAj1m4RwSviQy2i65YoIdtrhRt
+ CWekj2zuL/0szv5rZMCCvxioOCA8znqELEPMfs0Aa/cACD2MZcC4gGXehNCvzYJr
+ TmB6lFpxP6f0g6eO7PVcqYN9NCwECxb5Cvx2j2uNlereY35/9oPR6YJx+V7sL+DB
+-n6F0mN8OUAFxDamepKdGRApU8uZ35624o/I4</X509Certificate>
++n6F0mN8OUAFxDamepKdGRApU8uZ35624o/I4
++</X509Certificate>
+ </X509Data>
+ </KeyInfo>
+ </Signature></KeyContainer>
+diff --git a/pskctool/tests/tst_libexamples.sh b/pskctool/tests/tst_libexamples.sh
+index 0e8e558b4cbefbac9f2ca301fddb2ac4b8cfbdfa..5cb52ce44f40a78ab886ff12d2eac64e5b5c4c7e 100755
+--- a/pskctool/tests/tst_libexamples.sh
++++ b/pskctool/tests/tst_libexamples.sh
+@@ -1,7 +1,7 @@
+ #!/bin/sh
+ # tst_libexamples.sh - keep pskctool output in GTK-DOC manual up to date
+-# Copyright (C) 2012-2021 Simon Josefsson
++# Copyright (C) 2012-2022 Simon Josefsson
+ # This program is free software: you can redistribute it and/or modify
+ # it under the terms of the GNU General Public License as published by
+@@ -45,7 +45,8 @@ fi
+ $PSKCTOOL --sign --sign-key $srcdir/pskc-ee-key.pem \
+     --sign-crt $srcdir/pskc-ee-crt.pem \
+-    $srcdir/../../libpskc/examples/pskc-hotp.xml > foo
++    $srcdir/../../libpskc/examples/pskc-hotp.xml \
++    | sed 's,4</X509Cert,4\n</X509Cert,' > foo
+ if ! diff -ur $srcdir/../../libpskc/examples/pskc-hotp-signed.xml foo; then
+     echo "FAIL: pskctool --sign output change, commit updated file."
+     exit 1
+diff --git a/pskctool/tests/tst_sign.sh b/pskctool/tests/tst_sign.sh
+index b62757336061394746d60f706369127fe1db466d..2d452d69f2e6595ff85a34540939801324dbdfea 100755
+--- a/pskctool/tests/tst_sign.sh
++++ b/pskctool/tests/tst_sign.sh
+@@ -1,7 +1,7 @@
+ #!/bin/sh
+ # tst_sign.sh - test that pskctool can sign and verify
+-# Copyright (C) 2012-2021 Simon Josefsson
++# Copyright (C) 2012-2022 Simon Josefsson
+ # This program is free software: you can redistribute it and/or modify
+ # it under the terms of the GNU General Public License as published by
+@@ -32,7 +32,7 @@ $PSKCTOOL --info --strict --debug $pskc_all > tmp-pre-human.txt
+ $PSKCTOOL --sign \
+     --sign-key $pskc_ee_key \
+     --sign-crt $pskc_ee_crt \
+-    $pskc_all > tmp-signed.xml
++    $pskc_all | sed 's,4</X509Cert,4\n</X509Cert,' > tmp-signed.xml
+ diff -ur $pskc_all_signed tmp-signed.xml