On Tue, Sep 28, 1999, Ralf S. Engelschall wrote:

> On Tue, Sep 28, 1999, Magnus Stenman wrote:
> 
> > 2.4.3 compiled OK on my redhat 5.2 box, but 2.4.4 barfs:
> > 
> > gcc -c -I../../../../mm-1.0.11 -I../../os/unix -I../../include  -O2 -m486 
>-fno-strength-reduce
> > -DLINUX=2 -DMOD_SSL=204104 -DEAPI -DEAPI_MM -DUSE_EXPAT -I../../lib/expat-lite 
>`../../apaci` -fpic
> > -DSHARED_MODULE -DSSL_COMPAT -I/usr/include -DMOD_SSL_VERSION=\"2.4.4\" 
>ssl_engine_mutex.c && mv
> > ssl_engine_mutex.o ssl_engine_mutex.lo
> > ssl_engine_mutex.c: In function `ssl_mutex_sem_create':
> > ssl_engine_mutex.c:293: incompatible type for argument 4 of `semctl'
> > ssl_engine_mutex.c:302: incompatible type for argument 4 of `semctl'
> 
> As always, shit happens twice. Hell, why are Linux boxes such nasty? I still
> do not understand why a semctl(x,x,x,...) function can complain about an
> incompatible type for the forth argument. Hmmm... seems like I've to try
> it now myself on a Linux box to make it running.  As a workaround, just
> remove line 260 in mod_ssl.h.

Argl... I've now checked it myself on a RedHat 5.2 box and HELL, Linux is such
brain-dead. semctl(2) is defined by Single Unix Specification (SUSv2) to be 

int semctl(int semid, int semnum, int cmd, ...);

but RedHat 5.2 defined it incorrectly as:

extern int semctl __P ((int __semid, int __semnum, int __cmd,
                        union semun __arg));

That's unbelievable. Every time mod_ssl is broken on Linux it's because Linux
platforms are such broken theirself. Ok, ok, seems like we have to use IPC
semaphores only on glibc 2.1 platforms or we get more problems-of-the-week
with those old Linux beasts. Because RedHat 6.0 has the correct one in
sys/sem.h:

extern int semctl __P ((int __semid, int __semnum, int __cmd, ...));

Tz, I really love my FreeBSD if it comes to such things...

                                       Ralf S. Engelschall
                                       [EMAIL PROTECTED]
                                       www.engelschall.com
______________________________________________________________________
Apache Interface to OpenSSL (mod_ssl)                   www.modssl.org
User Support Mailing List                      [EMAIL PROTECTED]
Automated List Manager                            [EMAIL PROTECTED]

Reply via email to