Hi again,

Thanks Burton for the suggestion:

> Read config.log - you'll see the ACTUAL test program and error message -

It turns out that -I/usr/kerberos/include is present in RedHat9, and it's
not there on RHAS 3.

I traced it back to configureextra/LINUXredhat9 which contains these lines:

# If we have krb5.h and openssl was compiled with it, we need the -I setting
# since there's no way to easily test the latter and no harm from an extra
# -I, just do it...
if test -d /usr/kerberos/include &&
   test -f /usr/kerberos/include/krb5.h; then
    CPPFLAGS="-I/usr/kerberos/include/ ${CPPFLAGS}"
fi

These lines are also necessary for RedHad Advanced Server 3 but there
doesn't seem to be a configureextra for RHAS 3... Should such a file be
added? What should be its name?

I did a bit of digging and found that the name of the file comes from the
execution of "utils/linuxrelease --release" which will have to be revised
for RHAS as it returns she string "3\n3)" where \n is a newline character:

on RedHat 9:
$ utils/linuxrelease --debug --release
DEBUG01: /etc/xxxxx-release found /etc/redhat-release
DEBUG04: /etc/lsb-release found
DEBUG06: /etc/UnitedLinux-release found
DEBUG11: Distribution is redhat
DEBUG12: fullrelease is Red Hat Linux release 9 (Shrike)
DEBUG16: Release is 9
9


On RHAS 3:
$ utils/linuxrelease --debug --release
DEBUG01: /etc/xxxxx-release found /etc/redhat-release
DEBUG04: /etc/lsb-release found /etc/lsb-release
DEBUG05: lsb release is 1.3
DEBUG06: /etc/UnitedLinux-release found
DEBUG11: Distribution is redhat
DEBUG12: fullrelease is Red Hat Enterprise Linux AS release 3 (Taroon Update
3)
DEBUG16: Release is 3
3)
3 3)


The problem is in this part of the script which tries to find a numeric
argument in /etc/redhat-release:

    release=`cat ${releaseFile} | \
        head -n 1 | \
        awk '{ for (i=1; i<=NF; i++) { if (0 + $i != 0) { print $i } } }'`

This doesn't work if the redhat-release file contains more than one word
that is numeric (or that starts with a number), which is the case with RHAS
3 as shown above.

As an indication, here is the content of /etc/redhat-release for different
versions of Linux we have running:

Red Hat Linux release 7.0 (Guinness)
Red Hat Linux release 7.2 (Enigma)
Red Hat Linux release 7.3 (Valhalla)
Red Hat Linux release 9 (Shrike)
Red Hat Linux Advanced Server release 2.1AS (Pensacola)
Red Hat Enterprise Linux AS release 3 (Taroon Update 3)
Red Hat Enterprise Linux WS release 3 (Taroon Update 3)

I don't know a lot about the 2.1AS branch, but I know there's also an ES
release in the "Red Hat Enterprise Linux release 3" branch.

Just for fun, I changed the redhat-release file from:

    Red Hat Enterprise Linux AS release 3 (Taroon Update 3)

to:

    Red Hat Enterprise Linux AS release 3 (Taroon Update three)

and added a symbolic link in configureextra:

lrwxrwxrwx    1 root     root           12 Sep 27 14:53 LINUXredhat3 ->
LINUXredhat9*

and ./configure stopped complaining about openssl/ssl.h!


By the way, I suspect that the other lines in configureextra/LINUXredhat9
(XML dump plugin stuff) are also needed for RHAS 3 as the ./configure script
also complains about some of the libs and includes necessary for the XML
plugin (in fact, it still complains even after the symbolic link trick
described above; I still have some digging around to do about this one).

Regards,

Marc Mazuhelli
Computer security analyst
Service des technologies de l'information
Universit� de Sherbrooke




On 04/09/27 10:46, Burton M. Strauss III at [EMAIL PROTECTED] wrote�:

> Read config.log - you'll see the ACTUAL test program and error message -
> that's usually the most important clue (sometimes it's just not failing for
> the reason you think!).
> 
> -----Burton
> 
>> -----Original Message-----
>> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
>> Behalf Of Marc Mazuhelli
>> Sent: Monday, September 27, 2004 9:09 AM
>> To: [EMAIL PROTECTED]
>> Subject: [Ntop-dev] Ntop3 cvs on RHAS 3: Openssl/ssl.h declared missing!
>> 
>> 
>> Hi,
>> 
>> I'm upgrading my ntop box from:
>> 
>>     $ cat /etc/redhat-release
>>     Red Hat Linux release 9 (Shrike)
>> to:
>>     $ cat /etc/redhat-release
>>     Red Hat Enterprise Linux AS release 3 (Taroon Update 3)
>> 
>> I'm having problems compiling ntop from the cvs (I've tried at least 4
>> different versions in the last few weeks with the same results).
>> 
>> One of the problems I have is that openssl/ssl.h is declared
>> "missing", but
>> it's there in /usr/include/openssl/ssl.h, in the same (standard) place as
>> all the other openssl includes (crypto.h, err.h, ...) which were
>> found. This
>> problem does not occur in RedHat 9.
>> 
>> When I do:
>> 
>>     ./configure --prefix=/usr/local/ntop3cvs
>> 
>> I get this:
>> 
>> ...
>> <snip>
>> ...
>> checking for openSSL... configure: WARNING: error
>> 
>> *******************************************************************
>> *
>> * WARNING:  One or more items required for openSSL are missing:
>> *           (yes means it was found, no means it was not found)
>> *
>> *                  openssl/crypto.h...yes
>> *                  openssl/err.h...yes
>> *                  openssl/pem.h...yes
>> *                  openssl/rsa.h...yes
>> *                  openssl/ssl.h...no
>> *                  openssl/x509.h...yes
>> *                  libssl.so or libssl.a...yes
>> *
>> *>>>    ntop will be built without openSSL
>> *
>> *???     1. Install the necessary headers and libraries.
>> *???    and rerun ./configure
>> *
>> *******************************************************************
>> 
>> 
>> I know the configure script doesn't only check for the existence
>> of a header
>> file, it also checks its usability, so I tried a dummy test program
>> containing only this:
>> 
>>     #include <openssl/ssl.h>
>>     main()
>>     { }
>> 
>> This program compiles without error if I add
>> -I/usr/kerberos/include on the
>> command line. If I don't, krb5.h (included in kssl.h which is itself
>> included in ssl.h) is not found. I also noticed that in kssl.h, krb5.h is
>> included only if OPENSSL_NO_KRB5 is not defined, so the test program also
>> compiles if I add -DOPENSSL_NO_KRB5 instead of -I/usr/kerberos/include.
>> 
>> But the exact same thing happens with the test program on my old RedHat 9
>> box, and there, ntop's configure doesn't complain about openssl/ssl.h.
>> 
>> So either -I/usr/kerberos/include gets added on the usability test on RH9
>> and not on RHAS 3, or OPENSSL_NO_KRB5 gets defined on the
>> usability test in
>> RH9 and not in RHAS 3, or it's something else I'm missing that's different
>> between the two...
>> 
>> Any suggestions on how to fix this problem?
>> 
>> Regards,
>> 
>> Marc.
>> --
>> Marc Mazuhelli
>> Computer security analyst
>> Service des technologies de l'information
>> Universit� de Sherbrooke
>> 
>> 
>> _______________________________________________
>> Ntop-dev mailing list
>> [EMAIL PROTECTED]
>> http://listgateway.unipi.it/mailman/listinfo/ntop-dev
> 
> _______________________________________________
> Ntop-dev mailing list
> [EMAIL PROTECTED]
> http://listgateway.unipi.it/mailman/listinfo/ntop-dev
> 
> 



_______________________________________________
Ntop-dev mailing list
[EMAIL PROTECTED]
http://listgateway.unipi.it/mailman/listinfo/ntop-dev

Reply via email to