httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jens Schleusener <Jens.Schleuse...@t-systems-sfr.com>
Subject Re: [VOTE] 1.3.42 release candidate
Date Sat, 09 Jan 2010 19:06:11 GMT
Hi,

On Fri, 8 Jan 2010, Colm MacCárthaigh wrote:

> On Fri, Jan 8, 2010 at 7:50 PM, Brian Havard <brian.havard@gmail.com> wrote:
>> Colm MacCárthaigh wrote:
>>> There is a 1.3.42 release candidate for testing, and voting, at;
>>>
>>>          http://people.apache.org/~colm/1.3.42/
>>>
>>
>> I just tried building on a fairly stock Ubuntu Karmic system and ran
>> into this compile error:
>>
>> gcc -c  -I../os/unix -I../include   -DLINUX=22 -DHAVE_SET_DUMPABLE
>> -DUSE_HSREGEX -DNO_DL_NEEDED `../apaci` htpasswd.c
>> htpasswd.c:101: error: conflicting types for ?getline?
>> /usr/include/stdio.h:651: note: previous declaration of ?getline? was here
>>
>> So getline() is a system provided function here.
>>
>> I used the top level configure with /bin/sh changed to /bin/bash as
>> mentioned elsewhere, no options.
>> On fixing this I found that htdigest.c and logrotate.c have the same
>> problem.
>>
>> The obvious fix would be to namespace protect these getline
>> implementations,
>
> Thanks for the report - disinclined to fix anything that isn't a
> regression from 1.3.41 though. This is a security release, for
> upgraders only - so presumably people who've managed to work around
> these problems. Making life easy for new users is a deliberate
> non-goal :-) 2.2 is much much better for new users.

Just for information: Only out of curiosity (we use 2.2) I tried to 
compile 1.3.42 on a current OpenSUSE 11.2 system and found also the above 
described compile problem (but on OpenSUSE 11.1 compiling is ok).

The orign seems to lie in the used newer "glibc"-library respectively the 
changed file "stdio.h". In the "glibc"-ChangeLog I found

  2009-02-26  Ulrich Drepper  <drepper@redhat.com>
   * libio/stdio.h: dprintf, fmemopen, getdelim, getline, open_memstream,
     and vdprintf are in POSIX 2008.

The above patch would be better but for clarification I added in the Linux 
block of src/include/ap_config.h the following lines

  /* glibc 2.10 and later define getline in stdio.h if __USE_XOPEN2K8
   * is defined but that conflicts with getline definitions in
   * support/htpasswd.c, support/htdigest.c and support/logresolve.c.
   */

  #if  (__GLIBC__ == 2 && __GLIBC_MINOR__ > 9)
  #undef __USE_XOPEN2K8
  #endif

and it works also (but I am not a C expert).

But I accept the arguments of Colm and deleted the apache_1.3.42 directory 
but I expect some according bug reports after releasing 1.3.42 :-(

Regards,

Jens
Mime
  • Unnamed multipart/mixed (inline, None, 0 bytes)
View raw message