Re: SO_LINGER used when not HAVE_STRUCT_LINGER_L_LINGER
- From: Pavel Roskin <proski gnu org>
- To: Leonard den Ottolander <leonard den ottolander nl>
- Cc: MC development <mc-devel gnome org>
- Subject: Re: SO_LINGER used when not HAVE_STRUCT_LINGER_L_LINGER
- Date: Thu, 25 May 2006 02:15:17 -0400
Hello!
On Wed, 2006-05-24 at 14:37 +0200, Leonard den Ottolander wrote:
> Hi,
>
> Building mc on Minix-3.1.2 last weekend I stumbled over this piece of
> code:
>
> vfs/ftpfs.c:1346
> #ifdef HAVE_STRUCT_LINGER_L_LINGER
> li.l_onoff = 1;
> li.l_linger = 120;
> setsockopt (sock, SOL_SOCKET, SO_LINGER, (char *) &li, sizeof (li));
> #else
> setsockopt (sock, SOL_SOCKET, SO_LINGER, &flag_one, sizeof
> (flag_one));
> #endif
>
> The build on Minix chokes on the fact that SO_LINGER is undefined. It
> seems a bit odd that constant is being used when
> HAVE_STRUCT_LINGER_L_LINGER is not defined.
Nothing odd. HAVE_STRUCT_LINGER_L_LINGER means that there is structure
linger with field l_linger. That field (and the whole structure) is not
used if HAVE_STRUCT_LINGER_L_LINGER is not defined.
> Any ideas on how to fix this
> cleanly?
Put #ifdef SO_LINGER ... #endif around the code you quoted. Also do the
same for the declaration.
--
Regards,
Pavel Roskin
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]