gnu: oath-toolkit: Fix test failure with new xmlsec.

* 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.
This commit is contained in:
Marius Bakke 2022-11-20 20:49:10 +01:00
parent 225dc9dc63
commit 49a7232c5d
No known key found for this signature in database
GPG key ID: A2A06DF2A33A54FA
3 changed files with 81 additions and 0 deletions

View file

@ -1587,6 +1587,7 @@ dist_patch_DATA = \
%D%/packages/patches/nvi-dbpagesize-binpower.patch \ %D%/packages/patches/nvi-dbpagesize-binpower.patch \
%D%/packages/patches/nvi-db4.patch \ %D%/packages/patches/nvi-db4.patch \
%D%/packages/patches/nyacc-binary-literals.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/obs-modules-location.patch \
%D%/packages/patches/ocaml-dose3-add-unix-dependency.patch \ %D%/packages/patches/ocaml-dose3-add-unix-dependency.patch \
%D%/packages/patches/ocaml-dose3-Fix-for-ocaml-4.06.patch \ %D%/packages/patches/ocaml-dose3-Fix-for-ocaml-4.06.patch \

View file

@ -43,6 +43,7 @@ (define-public oath-toolkit
(method url-fetch) (method url-fetch)
(uri (string-append "https://download.savannah.nongnu.org/releases/" (uri (string-append "https://download.savannah.nongnu.org/releases/"
name "/" name "-" version ".tar.gz")) name "/" name "-" version ".tar.gz"))
(patches (search-patches "oath-toolkit-xmlsec-compat.patch"))
(sha256 (sha256
(base32 "1aa620k05lsw3l3slkp2mzma40q3p9wginspn9zk8digiz7dzv9n")))) (base32 "1aa620k05lsw3l3slkp2mzma40q3p9wginspn9zk8digiz7dzv9n"))))
(build-system gnu-build-system) (build-system gnu-build-system)

View file

@ -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