[Exim] Help on OS variations, please

Top Page
Delete this message
Reply to this message
Author: Philip Hazel
Date:  
To: exim-users
New-Topics: Re: [Exim] Help on OS variations : Redhat 6.0 Linux Reply
Subject: [Exim] Help on OS variations, please
The new code supporting AUTH in Exim includes a call to the crypt()
function. It appears that different OS handle this differently. I have
been able to check the following operating systems:

Solaris, RedHat 4.2, IRIX 6, Digital Unix 4, HP-UX 9 & 11, BSDI, NetBSD,
FreeBSD, and SCO 5.

Please can those of you running any other operating systems run a little
test for me. What I need to know, for each OS, is which #include is
needed for crypt(), and whether -lcrypt is needed for linking. Here is a
little test program:

#include <stdio.h>
#ifdef I_CRYPT
#include <crypt.h>
#endif
#ifdef I_UNISTD
#include <unistd.h>
#endif

int main(void)
{
printf("%s\n", crypt("MySecret", "az"));
return 0;
}

Please compile this with maximum warnings turned on, e.g.

gcc -Wall testprog.c

If you get warnings about an implicitly declared function, try

gcc -Wall -DI_UNISTD testprog.c

and if that also warns, try

gcc -Wall -DI_CRYPT testprog.c

If the program fails to link, try adding -lcrypt to the end of the
command. NetBSD and FreeBSD need this - can anybody test OpenBSD? BSDI
does not. I have also heard that some versions of Linux need it. RedHat
4.2 does not.

Let me know what you had to do to get a clean compile.

If you run the program, the output should be "azrazPWCQJhyg".

Many thanks.

Philip

-- 
Philip Hazel            University of Cambridge Computing Service,
ph10@???      Cambridge, England. Phone: +44 1223 334714.