Uploaded image for project: 'ZABBIX BUGS AND ISSUES'
  1. ZABBIX BUGS AND ISSUES
  2. ZBX-11149

Zabbix does not compile with OpenSSL 1.1.0

    Details

      Description

      A new major version of OpenSSL was recently released: see https://www.openssl.org/news/openssl-1.1.0-notes.html .

      Unfortunately, trying to compile Zabbix with OpenSSL 1.1.0 fails with the following errors:

      $ make > /dev/null
      tls.c:1608:34: error: incomplete definition of type 'struct ssl_ctx_st'
                      num = sk_SSL_CIPHER_num(ciphers->cipher_list);
                                              ~~~~~~~^
      /home/asaveljevs/software/openssl-1.1.0-install/include/openssl/ossl_typ.h:145:16: note: forward declaration of 'struct ssl_ctx_st'
      typedef struct ssl_ctx_st SSL_CTX;
                     ^
      tls.c:1613:33: error: incomplete definition of type 'struct ssl_ctx_st'
                                              sk_SSL_CIPHER_value(ciphers->cipher_list, i)->name);
                                                                  ~~~~~~~^
      ../../../include/common.h:934:85: note: expanded from macro 'zbx_snprintf_alloc'
                              __zbx_zbx_snprintf_alloc(str, alloc_len, offset, ZBX_CONST_STRING(fmt), ##__VA_ARGS__)
                                                                                                        ^
      /home/asaveljevs/software/openssl-1.1.0-install/include/openssl/ossl_typ.h:145:16: note: forward declaration of 'struct ssl_ctx_st'
      typedef struct ssl_ctx_st SSL_CTX;
                     ^
      tls.c:3095:12: warning: 'TLSv1_2_client_method' is deprecated [-Wdeprecated-declarations]
                      method = TLSv1_2_client_method();
                               ^
      /home/asaveljevs/software/openssl-1.1.0-install/include/openssl/ssl.h:1610:45: note: 'TLSv1_2_client_method' has been explicitly marked deprecated here
      DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_2_client_method(void)) /* TLSv1.2 */
                                                  ^
      /home/asaveljevs/software/openssl-1.1.0-install/include/openssl/opensslconf.h:127:53: note: expanded from macro 'DEPRECATEDIN_1_1_0'
      # define DEPRECATEDIN_1_1_0(f)   DECLARE_DEPRECATED(f)
                                                          ^
      /home/asaveljevs/software/openssl-1.1.0-install/include/openssl/opensslconf.h:102:35: note: expanded from macro 'DECLARE_DEPRECATED'
      # define DECLARE_DEPRECATED(f)    f __attribute__ ((deprecated));
                                        ^
      tls.c:3097:12: warning: 'TLSv1_2_method' is deprecated [-Wdeprecated-declarations]
                      method = TLSv1_2_method();
                               ^
      /home/asaveljevs/software/openssl-1.1.0-install/include/openssl/ssl.h:1608:45: note: 'TLSv1_2_method' has been explicitly marked deprecated here
      DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *TLSv1_2_method(void)) /* TLSv1.2 */
                                                  ^
      /home/asaveljevs/software/openssl-1.1.0-install/include/openssl/opensslconf.h:127:53: note: expanded from macro 'DEPRECATEDIN_1_1_0'
      # define DEPRECATEDIN_1_1_0(f)   DECLARE_DEPRECATED(f)
                                                          ^
      /home/asaveljevs/software/openssl-1.1.0-install/include/openssl/opensslconf.h:102:35: note: expanded from macro 'DECLARE_DEPRECATED'
      # define DECLARE_DEPRECATED(f)    f __attribute__ ((deprecated));
                                        ^
      tls.c:5644:41: error: incomplete definition of type 'struct ssl_session_st'
                      if (NULL != (attr->psk_identity = sess->psk_identity))
                                                        ~~~~^
      /home/asaveljevs/software/openssl-1.1.0-install/include/openssl/ssl.h:228:16: note: forward declaration of 'struct ssl_session_st'
      typedef struct ssl_session_st SSL_SESSION;
                     ^
      2 warnings and 3 errors generated.
      make[3]: *** [libzbxcrypto_a-tls.o] Error 1
      make[2]: *** [all-recursive] Error 1
      make[1]: *** [all-recursive] Error 1
      make: *** [all-recursive] Error 1
      

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              asaveljevs Aleksandrs Saveljevs
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: