Bug#1106675: lasso ftbfs with libxml 2.14.x and xmlsec1 from experimental

2025-08-14 Thread Frederic Peters

Upstream maintainer here. I tried to reproduce the reported failure in
the test suite on latest lasso (2.9.0) by compiling xmlsec 1.3.7 locally
with the same configuration flags as the experimental package on Debian
but I cannot reproduce the problem.


This bug has been merged with 1106894, and marked as fixed upstream, 
with https://dev.entrouvert.org/issues/106375, so it's expected an 
upcoming newer release wouldn't have it.


I didn't upload a package with the backported patch as "[this bug is 
NOT targeted to the upcoming trixie release]".




Bug#1106675: lasso ftbfs with libxml 2.14.x and xmlsec1 from experimental

2025-08-14 Thread Benjamin Dauvergne

Hi,

Upstream maintainer here. I tried to reproduce the reported failure in
the test suite on latest lasso (2.9.0) by compiling xmlsec 1.3.7 locally
with the same configuration flags as the experimental package on Debian
but I cannot reproduce the problem.

Is there something specific on the machine where the build was done ?
Lile custom configuration of available algorithm in /etc/ssl/openssl.cnf
? Maybe xmlsec was compiled with the flag `--disable-rsa-pkcs15` ?

Whas does `openssl list -disabled` reports ?

On my system for example:

$ openssl list  -disabled
Disabled algorithms:
IDEA
MD2
MDC2
RC5
SCTP
SSL3
ZLIB



Bug#1106675: lasso ftbfs with libxml 2.14.x and xmlsec1 from experimental

2025-05-31 Thread Matthias Klose

Control: tags -1 + patch

On 27.05.25 19:24, Frederic Peters wrote:

forwarded -1 https://dev.entrouvert.org/issues/106375
thanks


I didn't investigate yet, maybe more a xmlsec1 issue ...


ftr I orwarded the report upstream to have a look.


it looks like the needed fixes are all in the upstream VCS.  However I 
based my effort on the patches of the Fedora package, plus one more 
upstream commit.  It might be an alternative to grab all these changes 
into a git-updates.diff.


See
https://patches.ubuntu.com/l/lasso/lasso_2.8.2-9ubuntu2.patch

One of the python bindings tests is still failing, attaching here the 
test log.  That might be worth forwarding.
===
   lasso 2.8.2: bindings/python/tests/test-suite.log
===

# TOTAL: 2
# PASS:  1
# SKIP:  0
# XFAIL: 0
# FAIL:  1
# XPASS: 0
# ERROR: 0

System information (uname -a): Linux 6.14.0-15-generic #15-Ubuntu SMP PREEMPT_DYNAMIC Sun Apr 6 15:05:05 UTC 2025 x86_64 x86_64 x86_64
Distribution information (/etc/os-release):
PRETTY_NAME="Ubuntu Questing Quokka (development branch)"
NAME="Ubuntu"
VERSION_ID="25.10"
VERSION="25.10 (Questing Quokka)"
VERSION_CODENAME=questing
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/";

.. contents:: :depth: 2

FAIL: profiles_tests


test01 (__main__.ServerTestCase.test01)
Server construction, dump & newFromDump. ... ok
test02 (__main__.ServerTestCase.test02)
Server construction without argument, dump & newFromDump. ... ok
test01 (__main__.LoginTestCase.test01)
SP login; testing access to authentication request. ... ok
test02 (__main__.LoginTestCase.test02)
SP login; testing processing of an empty Response. ... ERROR:Lasso:2025-05-30 09:52:51 (login.c/:2324) Invalid message
ok
test03 (__main__.LoginTestCase.test03)
Conversion of a lib:AuthnRequest with an AuthnContext into a query and back. ... ok
test04 (__main__.LoginTestCase.test04)
Conversion of a lib:AuthnRequest with extensions into a query and back. ... ok
test05 (__main__.LoginTestCase.test05)
SAMLv2 Authn request emitted and received using Artifact binding ... ok
test07 (__main__.LoginTestCase.test07)
SAMLv2 SSO with DSA key for the IdP ... ok
test08 (__main__.LoginTestCase.test08)
Verify KeyEncryptionMethod support ... WARNING:Lasso:2025-05-30 09:52:51	Encryption failed
FAIL
test_06 (__main__.LoginTestCase.test_06)
Login test between SP and IdP with encrypted private keys ... ok
test01 (__main__.LogoutTestCase.test01)
SP logout without session and identity; testing initRequest. ... ERROR:Lasso:2025-05-30 09:52:51 (logout.c/:535) Session not found
ok
test02 (__main__.LogoutTestCase.test02)
IDP logout without session and identity; testing logout.getNextProviderId. ... ok
test03 (__main__.LogoutTestCase.test03)
IDP logout; testing processRequestMsg with non Liberty query. ... ERROR:Lasso:2025-05-30 09:52:51 (logout.c/:675) Invalid message
ok
test04 (__main__.LogoutTestCase.test04)
IDP logout; testing processResponseMsg with non Liberty query. ... ok
test05 (__main__.LogoutTestCase.test05)
Test parsing of a logout request with more than one session index ... ok
test01 (__main__.DefederationTestCase.test01)
IDP initiated defederation; testing processNotificationMsg with non Liberty query. ... ERROR:Lasso:2025-05-30 09:52:51 (defederation.c/:323) Invalid message
ok
test01 (__main__.IdentityTestCase.test01)
Identity newFromDump & dump. ... ok
test01 (__main__.AttributeAuthorityTestCase.test01)
Attribute request and response test between sp5 and idp6 ... ok

==
FAIL: test08 (__main__.LoginTestCase.test08)
Verify KeyEncryptionMethod support
--
Traceback (most recent call last):
  File "/home/packages/tmp/lasso-2.8.2/bindings/python/tests/./profiles_tests.py", line 343, in test08
assert 'xmlenc#rsa-1_5' in run()
   ^
AssertionError

--
Ran 18 tests in 0.027s

FAILED (failures=1)
FAIL profiles_tests.py (exit status: 1)



Bug#1106675: lasso ftbfs with libxml 2.14.x and xmlsec1 from experimental

2025-05-27 Thread Matthias Klose

Package: src:lasso
Version: 2.8.2-9
Tags: ftbfs sid forky
User: [email protected]
Usertags: libxml2.14

[this bug is NOT targeted to the upcoming trixie release]

I didn't investigate yet, maybe more a xmlsec1 issue ...


[...]
tools.c: In function 'lasso_get_public_key_from_pem_file':
tools.c:312:35: error: implicit declaration of function 
'xmlSecCryptoAppKeyLoad'; did you mean 'xmlSecCryptoAppKeyLoadEx'? 
[-Wimplicit-function-declaration]

  312 | pub_key = xmlSecCryptoAppKeyLoad(file,
  |   ^~
  |   xmlSecCryptoAppKeyLoadEx
tools.c:312:33: error: assignment to 'xmlSecKeyPtr' {aka 'struct 
_xmlSecKey *'} from 'int' makes pointer from integer without a cast 
[-Wint-conversion]

  312 | pub_key = xmlSecCryptoAppKeyLoad(file,
  | ^
tools.c: In function 'lasso_get_public_key_from_private_key_file':
tools.c:381:16: error: returning 'int' from a function with return type 
'xmlSecKeyPtr' {aka 'struct _xmlSecKey *'} makes pointer from integer 
without a cast [-Wint-conversion]

  381 | return xmlSecCryptoAppKeyLoad(private_key_file,
  |^~~~
  382 | xmlSecKeyDataFormatPem, NULL, NULL, NULL);
  | ~
tools.c: In function 'lasso_xml_parse_memory_with_error':
tools.c:2220:9: warning: 'recovery' is deprecated 
[-Wdeprecated-declarations]

 2220 | ctxt->recovery = 0;
  | ^~~~
In file included from /usr/include/libxml2/libxml/tree.h:17,
 from xml.h:37,
 from private.h:31,
 from tools.c:37:
/usr/include/libxml2/libxml/parser.h:377:9: note: declared here
  377 | int recovery XML_DEPRECATED_MEMBER;
  | ^~~~
tools.c:2235:17: warning: 'lastError' is deprecated 
[-Wdeprecated-declarations]

 2235 | xmlCopyError(&ctxt->lastError, error);
  | ^~~~
/usr/include/libxml2/libxml/parser.h:439:14: note: declared here
  439 | xmlError lastError XML_DEPRECATED_MEMBER;
  |  ^
tools.c: In function 'xmlDetectSAX2':
tools.c:2291:17: warning: 'sax2' is deprecated [-Wdeprecated-declarations]
 2291 | ctxt->sax2 = 1;
  | ^~~~
/usr/include/libxml2/libxml/parser.h:401:9: note: declared here
  401 | int sax2 XML_DEPRECATED_MEMBER;
  | ^~~~
tools.c:2296:9: warning: 'str_xml' is deprecated [-Wdeprecated-declarations]
 2296 | ctxt->str_xml = xmlDictLookup(ctxt->dict, BAD_CAST 
"xml", 3);

  | ^~~~
/usr/include/libxml2/libxml/parser.h:392:20: note: declared here
  392 | const xmlChar *str_xml XML_DEPRECATED_MEMBER;
  |^~~
tools.c:2297:9: warning: 'str_xmlns' is deprecated 
[-Wdeprecated-declarations]
 2297 | ctxt->str_xmlns = xmlDictLookup(ctxt->dict, BAD_CAST 
"xmlns", 5);

  | ^~~~
/usr/include/libxml2/libxml/parser.h:393:20: note: declared here
  393 | const xmlChar *str_xmlns XML_DEPRECATED_MEMBER;
  |^
tools.c:2298:9: warning: 'str_xml_ns' is deprecated 
[-Wdeprecated-declarations]
 2298 | ctxt->str_xml_ns = xmlDictLookup(ctxt->dict, 
XML_XML_NAMESPACE, 36);

  | ^~~~
/usr/include/libxml2/libxml/parser.h:394:20: note: declared here
  394 | const xmlChar *str_xml_ns XML_DEPRECATED_MEMBER;
  |^~
tools.c:2299:9: warning: 'str_xml' is deprecated [-Wdeprecated-declarations]
 2299 | if ((ctxt->str_xml==NULL) || (ctxt->str_xmlns==NULL) ||
  | ^~
/usr/include/libxml2/libxml/parser.h:392:20: note: declared here
  392 | const xmlChar *str_xml XML_DEPRECATED_MEMBER;
  |^~~
tools.c:2299:9: warning: 'str_xmlns' is deprecated 
[-Wdeprecated-declarations]

 2299 | if ((ctxt->str_xml==NULL) || (ctxt->str_xmlns==NULL) ||
  | ^~
/usr/include/libxml2/libxml/parser.h:393:20: note: declared here
  393 | const xmlChar *str_xmlns XML_DEPRECATED_MEMBER;
  |^
tools.c:2300:25: warning: 'str_xml_ns' is deprecated 
[-Wdeprecated-declarations]

 2300 | (ctxt->str_xml_ns == NULL)) {
  | ^
/usr/include/libxml2/libxml/parser.h:394:20: note: declared here
  394 | const xmlChar *str_xml_ns XML_DEPRECATED_MEMBER;
  |^~
In file included from private.h:36:
tools.c: In function 'lasso_base64_decode':
tools.c:2553:50: warning: dereferencing type-punned pointer will break 
strict-aliasing rules [-Wstrict-aliasing]

 2553 | lasso_transfer_string(*buffer, *((char**)&out));
  | ~^
../utils.h:501

Bug#1106675: lasso ftbfs with libxml 2.14.x and xmlsec1 from experimental

2025-05-27 Thread Frederic Peters

forwarded -1 https://dev.entrouvert.org/issues/106375
thanks


I didn't investigate yet, maybe more a xmlsec1 issue ...


ftr I orwarded the report upstream to have a look.


Fred