Ticket Change Details
Overview

Artifact ID: 0fb4157e5638e7c028f1582c0de3b8af273866fc2fecb3fd1f1cee87f47a11bb
Ticket: cfba27dc078fdc30b866d896df921346897c2d1a
Build against LibreSSL 3.5.3 has missing definitions
User & Date: anonymous on 2022-09-19 14:23:33
Changes

  1. foundin changed to: "3.5.3"
  2. icomment:
    When building against LibreSSL 3.5.3, TclTLS needs to include private header files from LibreSSL.  Specifically,
    
    File tcltls-1.7.22/tls.c
    -- needs libressl-3.5.3/crypto/dh/dh_local.h
    File tcltls-1.7.22/tlsBIO.c
    -- needs libressl-3.5.3/crypto/bio/bio_local.h
    
    Without including these files, the build fails with error messages, e.g.
    
    In file included from ../../src/tcltls-1.7.22/tls.c:84:
    ./dh_params.h: In function ‘get_dhParams’:
    ./dh_params.h:33: error: dereferencing pointer to incomplete type
    ./dh_params.h:34: error: dereferencing pointer to incomplete type
    ./dh_params.h:35: error: dereferencing pointer to incomplete type
    ./dh_params.h:35: error: dereferencing pointer to incomplete type
    make: *** [tls.o] Error 1
    
    The reason is that some definitions in LibreSSL are no longer present in the installed headers.  From the LibreSSL Changelog file:
    
    3.5.0 - Development release
    
            * Compatibility Changes
              - Most structs that were previously defined in the following headers
                are now opaque as they are in OpenSSL 1.1:
                bio.h, bn.h, comp.h, dh.h, dsa.h, evp.h, hmac.h, ocsp.h, rsa.h,
                x509.h, x509v3.h, x509_vfy.h
    
  3. login: "anonymous"
  4. mimetype: "text/plain"
  5. private_contact changed to: "a774b1f5653dc3360e29ea7d635a64e94c9f1dab"
  6. severity changed to: "Critical"
  7. status changed to: "Open"
  8. title changed to:
    Build against LibreSSL 3.5.3 has missing definitions
    
  9. type changed to: "Build Problem"