On Wed, Mar 17, 2021 at 01:44:05PM +0100, Thomas Huth wrote: > On 17/03/2021 12.16, Peter Maydell wrote: > > On Wed, 17 Mar 2021 at 11:09, Thomas Huth <th...@redhat.com> wrote: > > > > > > FreeBSD version 12.1 is out of service now, and the task in the > > > Cirrus-CI is failing. Update to 12.2 to get it working again. > > > Unfortunately, there is a bug in libtasn1 that triggers with the > > > new version of Clang that is used there (see this thread for details: > > > https://lists.gnu.org/archive/html/qemu-devel/2021-02/msg00739.html ), > > > so we have to disable gnutls for now to make it work again. We can > > > enable it later again once libtasn1 has been fixed in FreeBSD. > > > > > > Signed-off-by: Thomas Huth <th...@redhat.com> > > > > Is it feasible to make configure check for "is libtasn1 broken"? > > I guess since it only shows up as "when you try to use it > > it fails" that would be a runtime check rather than compile > > time, which isn't really possible :-( > > I don't really have a clue about this crypto stuff... Daniel, Stefan, Roman, > Christian, Eric ... you debugged the original problem on macOS, do you think > it's possible to add a check for this libtasn1 problem to our "configure" > (or meson.build file)? >
Hi, We need to define an ASN.1 object https://gitlab.com/gnutls/libtasn1/-/blob/master/tests/Test_tree.c#L230 {ACT_CREATE, "TEST_TREE.OidAndTimeTest", 0, 0, ASN1_SUCCESS, __LINE__}, The object is: OidAndTimeTest ::= SEQUENCE{ set SET OF INTEGER, oid OBJECT IDENTIFIER, time2 GeneralizedTime, bol BOOLEAN, oct OCTET STRING, bit BIT STRING OPTIONAL, bol2 BOOLEAN DEFAULT TRUE, enum ENUMERATED {v1(1),v2(2)} DEFAULT v1, any [1] ANY OPTIONAL, gen GeneralString OPTIONAL, time1 UTCTime } Create it with: asn1_create_element (definitions, "TEST.OidAndTimeTest", &asn1_element); and try to get it's DER length to mimic the part of the failing test: https://gitlab.com/gnutls/libtasn1/-/blob/master/tests/Test_tree.c#L254 result = asn1_der_coding (asn1_element, "", NULL, &der_len, errorDescription); The result should be ASN1_MEM_ERROR. Something like this should work as configure-time test. Thanks, Roman