Uploaded image for project: 'Guacamole'
  1. Guacamole
  2. GUACAMOLE-205

libguac_common_ssh build fails with OpenSSL 1.1

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 0.9.11-incubating
    • 0.9.13-incubating
    • guacamole-server, SSH
    • None
    • Linux 4.9.0-1-686-pae #1 SMP Debian 4.9.2-2 (2017-01-12) i686 GNU/Linux

    Description

      There are a number of changes in OpenSSL 1.1 which break compatibility with older versions of the API, and which break the Guacamole build if OpenSSL 1.1 is present, particularly the removal of threading callbacks (replaced with no-op macros) and the migration to opaque structures with public accessor functions. The error below is due to the no-op macros, and fixing those reveals further errors due to the new and required public accessor functions.

      A rough list is here:

      https://wiki.openssl.org/index.php/1.1_API_Changes

      The Guacamole build will need to be updated to take these changes into account. The original issue report:

      I have compiled and used guacamole since v. 9.8 or so. I just downloaded the source for 9.11-incubating. ./configure works fine. Make terminates with the following error:

      make[2]: Entering directory '/home/xxx/guacamole-server-0.9.11-incubating/src/common-ssh'
        CC       libguac_common_ssh_la-guac_sftp.lo
        CC       libguac_common_ssh_la-guac_ssh.lo
      guac_ssh.c:89:22: error: ‘guac_common_ssh_openssl_id_callback’ defined but not used [-Werror=unused-function]
       static unsigned long guac_common_ssh_openssl_id_callback() {
                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      guac_ssh.c:70:13: error: ‘guac_common_ssh_openssl_locking_callback’ defined but not used [-Werror=unused-function]
       static void guac_common_ssh_openssl_locking_callback(int mode, int n,
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      cc1: all warnings being treated as errors
      Makefile:479: recipe for target 'libguac_common_ssh_la-guac_ssh.lo' failed
      make[2]: *** [libguac_common_ssh_la-guac_ssh.lo] Error 1
      make[2]: Leaving directory '/home/mark/guacamole-server-0.9.11-incubating/src/common-ssh'
      Makefile:486: recipe for target 'all-recursive' failed
      make[1]: *** [all-recursive] Error 1
      make[1]: Leaving directory '/home/xxx/guacamole-server-0.9.11-incubating'
      Makefile:418: recipe for target 'all' failed
      make: *** [all] Error 2
      

      Make files is not my strong suit, but it seems like there's a problem with the configure script?

      Attachments

        Activity

          People

            mjumper Mike Jumper
            mgoldey Mark Goldey
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: