Apache won't load and "Document failed to print" after upgrade to OES 2018

  • 7023334
  • 06-Sep-2018
  • 06-Sep-2018

Environment

Open Enterprise Server 2018
iPrint Client 6.15

Situation

After upgrading to OES 2018, sending a print job thru the Windows iPrint Client returns the error:
Document failed to print
iPrint Client properties, iPrint document status shows "Creation failed" error
ipsmd (Print Manager) and idsd (Driver Store) are running fine.

Apache is not loaded.  When loading Apache, the following is returned:
[DATE + TIME] server start_apache2[6338]: httpd-prefork: Syntax error on line 204 of /etc/apache2/httpd.conf: Syntax error on line 119 of /etc/apache2/default-server.conf: Syntax error on line 5 of /etc/apache2/conf.d/oes_httpd.conf: Syntax error on line 9 of /etc/opt/novell/httpd/conf.d/iprint_g.conf: Cannot load /opt/novell/iprint/httpd/lib64/mod_ipp.so into server: /usr/lib64/libcurl.so.4: undefined symbol: libssh2_agent_disconnect
[DATE + TIME] server systemd[1]: apache2.service: Main process exited, code=exited, status=1/FAILURE


Resolution

Remove the incorrect link
Follow these steps to find the incorrect link and link the correct library:
1. Run the following command on both a working and non-working OES 2018 server:
ldd -r /usr/lib64/libcurl.so.4
The following will be returned on a working server:
linux-vdso.so.1 (0x00007ffe50bac000)
libidn.so.11 => /usr/lib64/libidn.so.11 (0x00007fa924d73000)
libssh2.so.1 => /usr/lib64/libssh2.so.1 (0x00007fa924b47000)
libssl.so.1.0.0 => /lib64/libssl.so.1.0.0 (0x00007fa9248dc000)
libcrypto.so.1.0.0 => /lib64/libcrypto.so.1.0.0 (0x00007fa924483000)
libgssapi_krb5.so.2 => /usr/lib64/libgssapi_krb5.so.2 (0x00007fa92423b000)
liblber-2.4.so.2 => /usr/lib64/liblber-2.4.so.2 (0x00007fa92402c000)
libldap-2.4.so.2 => /usr/lib64/libldap-2.4.so.2 (0x00007fa923de0000)
libz.so.1 => /lib64/libz.so.1 (0x00007fa923bca000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fa9239ad000)
libc.so.6 => /lib64/libc.so.6 (0x00007fa923608000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007fa923404000)
libkrb5.so.3 => /usr/lib64/libkrb5.so.3 (0x00007fa923134000)
libk5crypto.so.3 => /usr/lib64/libk5crypto.so.3 (0x00007fa922f04000)
libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00007fa922d00000)
libkrb5support.so.0 => /usr/lib64/libkrb5support.so.0 (0x00007fa922af3000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007fa9228dc000)
libsasl2.so.3 => /usr/lib64/libsasl2.so.3 (0x00007fa9226bf000)
/lib64/ld-linux-x86-64.so.2 (0x00007fa925217000)
libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x00007fa9224bb000)
libselinux.so.1 => /lib64/libselinux.so.1 (0x00007fa922295000)
libpcre.so.1 => /usr/lib64/libpcre.so.1 (0x00007fa922026000)

The following will is an example of what was returned from one non-working server:
linux-vdso.so.1 (0x00007ffec170d000)
libidn.so.11 => /usr/lib64/libidn.so.11 (0x00007f62ea6e4000)
libssh2.so.1 => /lib64/libssh2.so.1 (0x00007f62eac5f000)
libssl.so.1.0.0 => /lib64/libssl.so.1.0.0 (0x00007f62ea479000)
libcrypto.so.1.0.0 => /lib64/libcrypto.so.1.0.0 (0x00007f62ea020000)
libgssapi_krb5.so.2 => /usr/lib64/libgssapi_krb5.so.2 (0x00007f62e9dd8000)
liblber-2.4.so.2 => /usr/lib64/liblber-2.4.so.2 (0x00007f62e9bc9000)
libldap-2.4.so.2 => /usr/lib64/libldap-2.4.so.2 (0x00007f62e997d000)
libz.so.1 => /lib64/libz.so.1 (0x00007f62e9767000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f62e954a000)
libc.so.6 => /lib64/libc.so.6 (0x00007f62e91a5000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f62e8fa1000)
libcrypto.so.0.9.8 => /usr/lib64/libcrypto.so.0.9.8 (0x00007f62e8c01000)
libkrb5.so.3 => /usr/lib64/libkrb5.so.3 (0x00007f62e8931000)
libk5crypto.so.3 => /usr/lib64/libk5crypto.so.3 (0x00007f62e8701000)
libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00007f62e84fd000)
libkrb5support.so.0 => /usr/lib64/libkrb5support.so.0 (0x00007f62e82f0000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f62e80d9000)
libsasl2.so.3 => /usr/lib64/libsasl2.so.3 (0x00007f62e7ebc000)
/lib64/ld-linux-x86-64.so.2 (0x00007f62eab88000)
libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x00007f62e7cb8000)
libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f62e7a92000)
libpcre.so.1 => /usr/lib64/libpcre.so.1 (0x00007f62e7823000)
undefined symbol: libssh2_agent_disconnect    (/usr/lib64/libcurl.so.4)
undefined symbol: libssh2_knownhost_init    (/usr/lib64/libcurl.so.4)
undefined symbol: libssh2_agent_free    (/usr/lib64/libcurl.so.4)
undefined symbol: libssh2_knownhost_free    (/usr/lib64/libcurl.so.4)
undefined symbol: libssh2_knownhost_readfile    (/usr/lib64/libcurl.so.4)
undefined symbol: libssh2_agent_get_identity    (/usr/lib64/libcurl.so.4)
undefined symbol: libssh2_knownhost_check    (/usr/lib64/libcurl.so.4)
undefined symbol: libssh2_session_hostkey    (/usr/lib64/libcurl.so.4)
undefined symbol: libssh2_agent_userauth    (/usr/lib64/libcurl.so.4)
undefined symbol: libssh2_session_block_directions    (/usr/lib64/libcurl.so.4)
undefined symbol: libssh2_knownhost_writefile    (/usr/lib64/libcurl.so.4)
undefined symbol: libssh2_agent_init    (/usr/lib64/libcurl.so.4)
undefined symbol: libssh2_agent_connect    (/usr/lib64/libcurl.so.4)
undefined symbol: libssh2_knownhost_add    (/usr/lib64/libcurl.so.4)
undefined symbol: libssh2_scp_send64    (/usr/lib64/libcurl.so.4)
undefined symbol: libssh2_sftp_seek64    (/usr/lib64/libcurl.so.4)
undefined symbol: libssh2_agent_list_identities    (/usr/lib64/libcurl.so.4)

2. Compare the working and non-working output to the ldd command.  In the above scenario, the 3rd line shows a library linked to an incorrect file:
libssh2.so.1 => /lib64/libssh2.so.1 (0x00007f62eac5f000)
3. Do a listing on the incorrect module:
l /lib64/libssh2.so.1
In this scenario, the following is returned:
lrwxrwxrwx 1 root root 49 Nov 21 2012 /lib64/libssh2.so.1 -> /usr/openv/pdde/pdopensource/lib/libssh2.so.1.0.0*
4. Execute an RPM query on the incorrect package:
rpm -qf /lib64/libssh2.so.1
In this scenario, the following is returned:
file /lib64/libssh2.so.1 is not owned by any package
5. Delete the link:
rm /lib64/libssh2.so.1
6. Refresh the library links:
lddconfig
7. Start Apache
rcapache2 start

Cause

There was a wrong library link.