[Bug 261867] net-p2p/monero-cli doesn't build with security/libressl

From: <bugzilla-noreply_at_freebsd.org>
Date: Thu, 10 Feb 2022 16:26:08 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=261867

            Bug ID: 261867
           Summary: net-p2p/monero-cli doesn't build with
                    security/libressl
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: Individual Port(s)
          Assignee: ports-bugs@FreeBSD.org
          Reporter: cam@neo-zeon.de
                CC: brnrd@freebsd.org, vd@FreeBSD.org
                CC: brnrd@freebsd.org
 Attachment #231719 text/plain
         mime type:

Created attachment 231719
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=231719&action=edit
Full output of failed monero-cli build

net-p2p/monero-cli doesn't build with security/libressl. Here's the relevant
portion of the output. The full output is attached. I've reproduced this on 2
machines that are using LibreSSL:

In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.cpp:37:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.h:38:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/bootstrap_daemon.h:11:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/net/http.h:31:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/http_client.h:41:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/net_helper.h:40:
In file included from /usr/local/include/boost/asio/ssl.hpp:18:
In file included from /usr/local/include/boost/asio/ssl/context.hpp:757:
/usr/local/include/boost/asio/ssl/impl/context.ipp:395:32: error: member access
into incomplete type 'SSL_CTX' (aka 'ssl_ctx_st')
    void* cb_userdata = handle_->default_passwd_callback_userdata;
                               ^
/usr/local/include/openssl/ossl_typ.h:161:16: note: forward declaration of
'ssl_ctx_st'
typedef struct ssl_ctx_st SSL_CTX;
               ^
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.cpp:37:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.h:38:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/bootstrap_daemon.h:11:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/net/http.h:31:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/http_client.h:41:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/net_helper.h:40:
In file included from /usr/local/include/boost/asio/ssl.hpp:18:
In file included from /usr/local/include/boost/asio/ssl/context.hpp:757:
/usr/local/include/boost/asio/ssl/impl/context.ipp:408:14: error: member access
into incomplete type 'SSL_CTX' (aka 'ssl_ctx_st')
      handle_->default_passwd_callback_userdata = 0;
             ^
/usr/local/include/openssl/ossl_typ.h:161:16: note: forward declaration of
'ssl_ctx_st'
typedef struct ssl_ctx_st SSL_CTX;
               ^
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.cpp:37:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.h:38:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/bootstrap_daemon.h:11:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/net/http.h:31:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/http_client.h:41:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/net_helper.h:40:
In file included from /usr/local/include/boost/asio/ssl.hpp:18:
In file included from /usr/local/include/boost/asio/ssl/context.hpp:757:
/usr/local/include/boost/asio/ssl/impl/context.ipp:748:40: error: member access
into incomplete type 'SSL_CTX' (aka 'ssl_ctx_st')
    pem_password_cb* callback = handle_->default_passwd_callback;
                                       ^
/usr/local/include/openssl/ossl_typ.h:161:16: note: forward declaration of
'ssl_ctx_st'
typedef struct ssl_ctx_st SSL_CTX;
               ^
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.cpp:37:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.h:38:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/bootstrap_daemon.h:11:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/net/http.h:31:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/http_client.h:41:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/net_helper.h:40:
In file included from /usr/local/include/boost/asio/ssl.hpp:18:
In file included from /usr/local/include/boost/asio/ssl/context.hpp:757:
/usr/local/include/boost/asio/ssl/impl/context.ipp:749:32: error: member access
into incomplete type 'SSL_CTX' (aka 'ssl_ctx_st')
    void* cb_userdata = handle_->default_passwd_callback_userdata;
                               ^
/usr/local/include/openssl/ossl_typ.h:161:16: note: forward declaration of
'ssl_ctx_st'
typedef struct ssl_ctx_st SSL_CTX;
               ^
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.cpp:37:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.h:38:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/bootstrap_daemon.h:11:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/net/http.h:31:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/http_client.h:41:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/net_helper.h:40:
In file included from /usr/local/include/boost/asio/ssl.hpp:18:
In file included from /usr/local/include/boost/asio/ssl/context.hpp:757:
/usr/local/include/boost/asio/ssl/impl/context.ipp:776:16: error: member access
into incomplete type 'SSL_CTX' (aka 'ssl_ctx_st')
    if (handle_->extra_certs)
               ^
/usr/local/include/openssl/ossl_typ.h:161:16: note: forward declaration of
'ssl_ctx_st'
typedef struct ssl_ctx_st SSL_CTX;
               ^
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.cpp:37:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.h:38:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/bootstrap_daemon.h:11:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/net/http.h:31:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/http_client.h:41:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/net_helper.h:40:
In file included from /usr/local/include/boost/asio/ssl.hpp:18:
In file included from /usr/local/include/boost/asio/ssl/context.hpp:757:
/usr/local/include/boost/asio/ssl/impl/context.ipp:778:33: error: member access
into incomplete type 'SSL_CTX' (aka 'ssl_ctx_st')
      ::sk_X509_pop_free(handle_->extra_certs, X509_free);
                                ^
/usr/local/include/openssl/ossl_typ.h:161:16: note: forward declaration of
'ssl_ctx_st'
typedef struct ssl_ctx_st SSL_CTX;
               ^
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.cpp:37:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.h:38:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/bootstrap_daemon.h:11:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/net/http.h:31:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/http_client.h:41:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/net_helper.h:40:
In file included from /usr/local/include/boost/asio/ssl.hpp:18:
In file included from /usr/local/include/boost/asio/ssl/context.hpp:757:
/usr/local/include/boost/asio/ssl/impl/context.ipp:779:14: error: member access
into incomplete type 'SSL_CTX' (aka 'ssl_ctx_st')
      handle_->extra_certs = 0;
             ^
/usr/local/include/openssl/ossl_typ.h:161:16: note: forward declaration of
'ssl_ctx_st'
typedef struct ssl_ctx_st SSL_CTX;
               ^
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.cpp:37:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.h:38:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/bootstrap_daemon.h:11:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/net/http.h:31:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/http_client.h:41:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/net_helper.h:40:
In file included from /usr/local/include/boost/asio/ssl.hpp:18:
In file included from /usr/local/include/boost/asio/ssl/context.hpp:757:
/usr/local/include/boost/asio/ssl/impl/context.ipp:856:40: error: member access
into incomplete type 'SSL_CTX' (aka 'ssl_ctx_st')
    pem_password_cb* callback = handle_->default_passwd_callback;
                                       ^
/usr/local/include/openssl/ossl_typ.h:161:16: note: forward declaration of
'ssl_ctx_st'
typedef struct ssl_ctx_st SSL_CTX;
               ^
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.cpp:37:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.h:38:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/bootstrap_daemon.h:11:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/net/http.h:31:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/http_client.h:41:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/net_helper.h:40:
In file included from /usr/local/include/boost/asio/ssl.hpp:18:
In file included from /usr/local/include/boost/asio/ssl/context.hpp:757:
/usr/local/include/boost/asio/ssl/impl/context.ipp:857:32: error: member access
into incomplete type 'SSL_CTX' (aka 'ssl_ctx_st')
    void* cb_userdata = handle_->default_passwd_callback_userdata;
                               ^
/usr/local/include/openssl/ossl_typ.h:161:16: note: forward declaration of
'ssl_ctx_st'
typedef struct ssl_ctx_st SSL_CTX;
               ^
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.cpp:37:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.h:38:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/bootstrap_daemon.h:11:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/net/http.h:31:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/http_client.h:41:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/net_helper.h:40:
In file included from /usr/local/include/boost/asio/ssl.hpp:18:
In file included from /usr/local/include/boost/asio/ssl/context.hpp:757:
/usr/local/include/boost/asio/ssl/impl/context.ipp:925:40: error: member access
into incomplete type 'SSL_CTX' (aka 'ssl_ctx_st')
    pem_password_cb* callback = handle_->default_passwd_callback;
                                       ^
/usr/local/include/openssl/ossl_typ.h:161:16: note: forward declaration of
'ssl_ctx_st'
typedef struct ssl_ctx_st SSL_CTX;
               ^
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.cpp:37:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.h:38:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/bootstrap_daemon.h:11:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/net/http.h:31:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/http_client.h:41:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/net_helper.h:40:
In file included from /usr/local/include/boost/asio/ssl.hpp:18:
In file included from /usr/local/include/boost/asio/ssl/context.hpp:757:
/usr/local/include/boost/asio/ssl/impl/context.ipp:926:32: error: member access
into incomplete type 'SSL_CTX' (aka 'ssl_ctx_st')
    void* cb_userdata = handle_->default_passwd_callback_userdata;
                               ^
/usr/local/include/openssl/ossl_typ.h:161:16: note: forward declaration of
'ssl_ctx_st'
typedef struct ssl_ctx_st SSL_CTX;
               ^
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.cpp:37:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.h:38:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/bootstrap_daemon.h:11:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/net/http.h:31:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/http_client.h:41:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/net_helper.h:40:
In file included from /usr/local/include/boost/asio/ssl.hpp:18:
In file included from /usr/local/include/boost/asio/ssl/context.hpp:757:
/usr/local/include/boost/asio/ssl/impl/context.ipp:1166:31: error: member
access into incomplete type 'SSL_CTX' (aka 'ssl_ctx_st')
  void* old_callback = handle_->default_passwd_callback_userdata;
                              ^
/usr/local/include/openssl/ossl_typ.h:161:16: note: forward declaration of
'ssl_ctx_st'
typedef struct ssl_ctx_st SSL_CTX;
               ^
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.cpp:37:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.h:38:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/bootstrap_daemon.h:11:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/net/http.h:31:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/http_client.h:41:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/contrib/epee/include/net/net_helper.h:40:
In file included from /usr/local/include/boost/asio/ssl.hpp:18:
In file included from /usr/local/include/boost/asio/ssl/context.hpp:757:
/usr/local/include/boost/asio/ssl/impl/context.ipp:1167:10: error: member
access into incomplete type 'SSL_CTX' (aka 'ssl_ctx_st')
  handle_->default_passwd_callback_userdata = callback;
         ^
/usr/local/include/openssl/ossl_typ.h:161:16: note: forward declaration of
'ssl_ctx_st'
typedef struct ssl_ctx_st SSL_CTX;
               ^
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.cpp:37:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server.h:41:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/rpc/core_rpc_server_commands_defs.h:35:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/cryptonote_protocol/cryptonote_protocol_defs.h:35:
In file included from
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/cryptonote_basic/cryptonote_basic.h:41:
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/serialization/binary_archive.h:200:28:
warning: shift count >= width of type [-Wshift-count-overflow]
      if (1 < sizeof(T)) v >>= 8;
                           ^   ~
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/serialization/binary_archive.h:193:5:
note: in instantiation of function template specialization
'binary_archive<true>::serialize_uint<unsigned char>' requested here
    serialize_uint(static_cast<typename boost::make_unsigned<T>::type>(v));
    ^
/usr/ports/net-p2p/monero-cli/work/monero-0.17.3.0/src/serialization/binary_archive.h:233:5:
note: in instantiation of function template specialization
'binary_archive<true>::serialize_int<unsigned char>' requested here
    serialize_int(t);
    ^
1 warning and 13 errors generated.

-- 
You are receiving this mail because:
You are the assignee for the bug.