Bug 1519

Summary: zlib version check is fake in the configure script. installation failure.
Product: Portable OpenSSH Reporter: Rod B. <re.bmgr>
Component: Build systemAssignee: Assigned to nobody <unassigned-bugs>
Status: CLOSED INVALID    
Severity: major CC: djm
Priority: P2    
Version: 5.1p1   
Hardware: ix86   
OS: Linux   

Description Rod B. 2008-09-01 20:15:08 AEST
It seems like whatever the version of zlib is, the message "zlib too old" which
precedes the installation failure always appears if the option
--without-zlib-version-check
 is not used while calling the configure script. 

Reminder : Openssh needs at least zlib version 1.2.3.

If someone checks the configure script then check the line 10672 :
one can see that the script checks if the variable $zlib_check_nonfatal is set
:
[line10672] if test -z "$zlib_check_nonfatal" ; then
    - If the variable $zlib_check_nonfatal is set then "zlib too old" does not
happen.

The big problem is that the only other place where $zlib_check_nonfatal could
be set
is at line 10598 :
[line 10598] zlib_check_nonfatal=1

which ONLY happens if --without-zlib-version-check is used.


May be my mistake... so if someone could check that and have a correct zlib
version check
that would be nice.

Best regards.
Comment 1 Damien Miller 2008-09-01 20:22:58 AEST
Your analysis is incorrect - the test for $zlib_check_nonfatal checks whether it is blank or not. An unset shell variable is equivalent to a blank one, so this is fine.

I'm not sure I understand what your problem is: are you saying that configure misdetects your zlib as too old? If so you will need to provide more information, such as the version of zlib you have installed and the generated config.log.
Comment 2 Rod B. 2008-09-01 20:58:48 AEST
Ok, I try to explain the problem.

The point is that the configure script misdetects my non-local zlib version.

I have zlib version 1.2.3 installed /usr/lib /lib /usr/include
and I have zlib version 1.2.1 in /usr/local/lib /usr/local/include

Sorry for reporting it as a bug but the version detected by the configure script
is version 1.2.1. I have just taken off  /usr/local/include/zlib.h and the configure
script works perfectly.

Is that normal that the configure script checks a local version in  /usr/local/include/zlib.h against the root system-wide version in /usr/include/zlib.h ?
It must be my mistake with my environment definition.

I am sorry I haven't seen the full "if" condition line 10696 of the configure script
which certainly needs some smarter indentation.
Comment 3 Damien Miller 2009-02-23 13:36:19 AEDT
Close bugs fixed/reviewed for openssh-5.2 release