openssl: 81-test_cmp_cli.t fails in MSYS2

I am installing openssl in windows 10 using MSYS2 and using mingw64 as compiler.

Configuration output:


Command line (with current working directory = .):

    perl ./Configure mingw64

Perl information:

    perl
    5.32.1 for x86_64-msys-thread-multi

Enabled features:

    aria
    asm
    async
    autoalginit
    autoerrinit
    autoload-config
    bf
    blake2
    bulk
    cached-fetch
    camellia
    capieng
    cast
    chacha
    cmac
    cmp
    cms
    comp
    ct
    deprecated
    des
    dgram
    dh
    dsa
    dso
    dtls
    dynamic-engine
    ec
    ec2m
    ecdh
    ecdsa
    engine
    err
    filenames
    gost
    idea
    legacy
    loadereng
    md4
    mdc2
    module
    multiblock
    nextprotoneg
    ocb
    ocsp
    padlockeng
    pic
    pinshared
    poly1305
    posix-io
    psk
    rc2
    rc4
    rdrand
    rfc3779
    rmd160
    scrypt
    secure-memory
    seed
    shared
    siphash
    siv
    sm2
    sm3
    sm4
    sock
    srp
    srtp
    sse2
    ssl
    ssl-trace
    static-engine
    stdio
    tests
    threads
    tls
    ts
    ui-console
    whirlpool
    tls1
    tls1-method
    tls1_1
    tls1_1-method
    tls1_2
    tls1_2-method
    tls1_3
    dtls1
    dtls1-method
    dtls1_2
    dtls1_2-method

Disabled features:

    acvp-tests          [cascade]        OPENSSL_NO_ACVP_TESTS
    afalgeng            [not-linux]      OPENSSL_NO_AFALGENG
    asan                [default]        OPENSSL_NO_ASAN
    buildtest-c++       [default]        
    crypto-mdebug       [default]        OPENSSL_NO_CRYPTO_MDEBUG
    devcryptoeng        [default]        OPENSSL_NO_DEVCRYPTOENG
    ec_nistp_64_gcc_128 [default]        OPENSSL_NO_EC_NISTP_64_GCC_128
    egd                 [default]        OPENSSL_NO_EGD
    external-tests      [default]        OPENSSL_NO_EXTERNAL_TESTS
    fips                [default]        
    fips-securitychecks [cascade]        OPENSSL_NO_FIPS_SECURITYCHECKS
    fuzz-afl            [default]        OPENSSL_NO_FUZZ_AFL
    fuzz-libfuzzer      [default]        OPENSSL_NO_FUZZ_LIBFUZZER
    ktls                [default]        OPENSSL_NO_KTLS
    makedepend          [unavailable]    
    md2                 [default]        OPENSSL_NO_MD2 (skip crypto/md2)
    msan                [default]        OPENSSL_NO_MSAN
    rc5                 [default]        OPENSSL_NO_RC5 (skip crypto/rc5)
    sctp                [default]        OPENSSL_NO_SCTP
    tfo                 [default]        OPENSSL_NO_TFO
    trace               [default]        OPENSSL_NO_TRACE
    ubsan               [default]        OPENSSL_NO_UBSAN
    unit-test           [default]        OPENSSL_NO_UNIT_TEST
    uplink              [no uplink_arch] OPENSSL_NO_UPLINK
    weak-ssl-ciphers    [default]        OPENSSL_NO_WEAK_SSL_CIPHERS
    zlib                [default]        
    zlib-dynamic        [default]        
    ssl3                [default]        OPENSSL_NO_SSL3
    ssl3-method         [default]        OPENSSL_NO_SSL3_METHOD

Config target attributes:

    AR => "ar",
    ARFLAGS => "qc",
    CC => "gcc",
    CFLAGS => "-Wall -O3",
    HASHBANGPERL => "/usr/bin/env perl",
    RANLIB => "ranlib",
    RC => "windres",
    asm_arch => "x86_64",
    bn_ops => "SIXTY_FOUR_BIT",
    build_file => "Makefile",
    build_scheme => [ "unified", "unix" ],
    cflags => "-m64",
    cppflags => "-DUNICODE -D_UNICODE -DWIN32_LEAN_AND_MEAN -D_MT",
    defines => [ "OPENSSL_BUILDING_OPENSSL" ],
    disable => [  ],
    dso_scheme => "win32",
    enable => [  ],
    ex_libs => "-lws2_32 -lgdi32 -lcrypt32",
    includes => [  ],
    lflags => "",
    lib_cflags => "",
    lib_cppflags => "-DL_ENDIAN",
    lib_defines => [  ],
    module_cflags => "",
    module_cxxflags => undef,
    module_ldflags => "-static-libgcc -shared -Wl,--enable-auto-image-base",
    multilib => "64",
    perl_platform => "mingw",
    perlasm_scheme => "mingw64",
    shared_argfileflag => "\@",
    shared_cflag => "",
    shared_cppflags => "_WINDLL",
    shared_defflag => "",
    shared_defines => [  ],
    shared_impflag => "-Wl,--out-implib=",
    shared_ldflag => "-static-libgcc -shared -Wl,--enable-auto-image-base",
    shared_rcflag => "--target=pe-x86-64",
    shared_target => "mingw-shared",
    sys_id => "MINGW64",
    thread_defines => [  ],
    thread_scheme => "winthreads",
    unistd => "<unistd.h>",

Recorded environment:

    AR = 
    ARFLAGS = 
    AS = 
    ASFLAGS = 
    BUILDFILE = 
    CC = 
    CFLAGS = 
    CPP = 
    CPPDEFINES = 
    CPPFLAGS = 
    CPPINCLUDES = 
    CROSS_COMPILE = 
    CXX = 
    CXXFLAGS = 
    HASHBANGPERL = 
    LD = 
    LDFLAGS = 
    LDLIBS = 
    MT = 
    MTFLAGS = 
    OPENSSL_LOCAL_CONFIG_DIR = 
    PERL = 
    RANLIB = 
    RC = 
    RCFLAGS = 
    RM = 
    WINDRES = 
    __CNF_CFLAGS = 
    __CNF_CPPDEFINES = 
    __CNF_CPPFLAGS = 
    __CNF_CPPINCLUDES = 
    __CNF_CXXFLAGS = 
    __CNF_LDFLAGS = 
    __CNF_LDLIBS = 

Makevars:

    AR              = ar
    ARFLAGS         = qc
    CC              = gcc
    CFLAGS          = -Wall -O3
    CPPDEFINES      = 
    CPPFLAGS        = 
    CPPINCLUDES     = 
    CXXFLAGS        = 
    HASHBANGPERL    = /usr/bin/env perl
    LDFLAGS         = 
    LDLIBS          = 
    PERL            = perl
    RANLIB          = ranlib
    RC              = windres
    RCFLAGS         = 

NOTE: These variables only represent the configuration view.  The build file
template may have processed these variables further, please have a look at the
build file for more exact data:
    Makefile

build file:

    Makefile

build file templates:

    Configurations/common0.tmpl
    Configurations/unix-Makefile.tmpl

When I run the test test_cmp_cli, it throws me this error:

# setup_srv_ctx:apps/cmp.c:1072:CMP warning: mock server will not be able to handle signature-protected requests since -srv_trusted is not given
# setup_request_ctx:apps/cmp.c:1584:CMP warning: missing -recipient, -srvcert, -issuer, -oldcert or -cert; recipient will be set to "NULL-DN"
# setup_client_ctx:apps/cmp.c:1977:CMP info: will contact mock server
# CMP info: sending CR
# CMP info: received CP
# CMP info: received 'waiting' PKIStatus, starting to poll for response
# CMP info: sending POLLREQ
# CMP info: received CP
# CMP info: received ip/cp/kup after polling
# CMP info: sending CERTCONF
# CMP info: received PKICONF
# save_free_certs:apps/cmp.c:2024:CMP info: received 1 enrolled certificate(s), saving to file './test.certout.pem'
../../util/wrap.pl ../../apps/openssl.exe cmp -config '' -poll_count 1 -use_mock_srv -srv_ref 'mock server' -srv_secret 'pass:test' -rsp_cert ../../test/certs/ee-cert-1024.pem -cmd cr -subject /CN=any -newkey ../../test/certs/ee-key-1024.pem -secret 'pass:test' -ref 'client under test' -certout ./test.certout.pem => 0
not ok 8 - with polling
# ------------------------------------------------------------------------------
#   Failed test 'with polling'
#   at test/recipes/81-test_cmp_cli.t line 75.
Engine "loader_attic" set.
# setup_srv_ctx:apps/cmp.c:1072:CMP warning: mock server will not be able to handle signature-protected requests since -srv_trusted is not given
# setup_request_ctx:apps/cmp.c:1584:CMP warning: missing -recipient, -srvcert, -issuer, -oldcert or -cert; recipient will be set to "NULL-DN"
# setup_client_ctx:apps/cmp.c:1977:CMP info: will contact mock server
# CMP info: sending CR
# CMP info: received CP
# CMP info: sending CERTCONF
# CMP info: received PKICONF
# save_free_certs:apps/cmp.c:2024:CMP info: received 1 enrolled certificate(s), saving to file './test.certout.pem'
../../util/wrap.pl ../../apps/openssl.exe cmp -config '' -engine loader_attic -use_mock_srv -srv_ref 'mock server' -srv_secret 'pass:test' -rsp_cert ../../test/certs/ee-cert-1024.pem -cmd cr -subject /CN=any -newkey ../../test/certs/ee-key-1024.pem -secret 'pass:test' -ref 'client under test' -certout ./test.certout.pem => 0
not ok 9 - with loader_attic engine
# ------------------------------------------------------------------------------
#   Failed test 'with loader_attic engine'
#   at test/recipes/81-test_cmp_cli.t line 75.

It seems that the problem is similar than that reported on #12514, and resolved in #12537 where the solution was made by skipping the test with mock servers

About this issue

  • Original URL
  • State: closed
  • Created 2 years ago
  • Comments: 15 (9 by maintainers)

Most upvoted comments

I don’t know. Is this the only build/test issue you are facing?

At least if you do not use CMP, a quick workaround of course would be to ignore these test failures or to disable CMP: perl ./Configure mingw64 no-cmp

I only have issues with this test (81-test_cmp_cli.t) and with 80-test_pkcs12.t (the same error that happens in #18017 for this test only)