Re: [Exim] segfault in 4.21 on Linux

Page principale
Supprimer ce message
Répondre à ce message
Auteur: Arkadiusz Miskiewicz
Date:  
À: Andreas J Mueller
CC: exim-users
Sujet: Re: [Exim] segfault in 4.21 on Linux
On Sunday 17 of August 2003 22:43, you wrote:

> Did you have strange warnings during compile of daemon.c?

Yes, but these warning are not strange :).

> If yes,
> does the following patch make the segfault go away? If again yes,
> your build environment has defined errno as a macro. Philip already
> knows about this typo.

It fixes it. Thanks. errno is no longer int on glibc 2.3 (afaik it's function
now) so using this name is really problematic.

> Andy
>
> diff -urN exim-4.21.orig/src/daemon.c exim-4.21/src/daemon.c
> --- src/daemon.c        Tue Aug 12 17:39:54 2003
> +++ src/daemon.c        Thu Aug 14 15:35:15 2003
> @@ -656,7 +656,7 @@
>  */

>
> static BOOL
> -check_special_case(int errno, ip_address_item *addresses, ip_address_item
> *ipa, +check_special_case(int eno, ip_address_item *addresses,
> ip_address_item *ipa, BOOL back)
> {
> ip_address_item *ipa2;
> @@ -667,7 +667,7 @@
>
>  if (back)
>    {
> -  if (errno != EADDRINUSE || ipa->address[0] != 0) return FALSE;
> +  if (eno != EADDRINUSE || ipa->address[0] != 0) return FALSE;
>    for (ipa2 = addresses; ipa2 != ipa; ipa2 = ipa2->next)
>      if (ipa2->address[1] == 0 && ipa2->port == ipa->port)
>        return TRUE;


--
Arkadiusz Miśkiewicz    CS at FoE, Wroclaw University of Technology
arekm@???   AM2-6BONE, 1024/3DB19BBD, arekm(at)ircnet, PLD/Linux