Re: [exim] [exim-dev] Exim 4.88 RC3 uploaded

Top Page
Delete this message
Reply to this message
Author: list2@captainnet.net
Date:  
To: The Doctor, Jeremy Harris
CC: exim-users
Subject: Re: [exim] [exim-dev] Exim 4.88 RC3 uploaded
System Version: macOS 10.12.1 (16B2553a)
       Kernel Version: Darwin 16.1.0


cc queuefile.c
queuefile.c:73:3: warning: add explicit braces to avoid dangling else 
[-Wdangling-else]
   else if (j < 0)
   ^
queuefile.c:129:2: warning: '&&' within '||' [-Wlogical-op-parentheses]
         && (s = srcpath, (srcfd = openat(sdfd, CCS filename, O_RDONLY)) 
< 0)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
queuefile.c:129:2: note: place parentheses around the '&&' expression to 
silence this warning
         && (s = srcpath, (srcfd = openat(sdfd, CCS filename, O_RDONLY)) 
< 0)
         ^
2 warnings generated.
cc smtp.c
smtp.c:2584:5: warning: add explicit braces to avoid dangling else 
[-Wdangling-else]
     else
     ^
smtp.c:4152:5: warning: add explicit braces to avoid dangling else 
[-Wdangling-else]
     else
     ^
2 warnings generated.
cc smtp_socks.c
cc tf_maildir.c
ar cq transports.a
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: 
file: transports.a(smtp_socks.o) has no symbols
ranlib transports.a
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: 
file: transports.a(smtp_socks.o) has no symbols


cc acl.c
acl.c:1656:7: warning: add explicit braces to avoid dangling else 
[-Wdangling-else]
       else
       ^
acl.c:3649:5: warning: add explicit braces to avoid dangling else 
[-Wdangling-else]
     else if (rc == FAIL || rc == FAIL_DROP) rc = OK;
     ^
acl.c:4358:2: warning: add explicit braces to avoid dangling else 
[-Wdangling-else]
         else
         ^
3 warnings generated.
cc base64.c
cc child.c
cc crypt16.c
cc daemon.c
daemon.c:1457:7: warning: add explicit braces to avoid dangling else 
[-Wdangling-else]
       else
       ^
daemon.c:1461:40: error: use of undeclared identifier 'SOL_TCP'
     if (setsockopt(listen_sockets[sk], SOL_TCP, TCP_FASTOPEN, 
&smtp_connect_backlog,
                                        ^
1 warning and 1 error generated.
make[1]: *** [daemon.o] Error 1
make: *** [all] Error 2



On 10/24/16 7:38 AM, The Doctor wrote:
> On Mon, Oct 24, 2016 at 12:43:26PM +0100, Jeremy Harris wrote:
>> On 24/10/16 04:05, Phil Pennock wrote:
>>> On 2016-10-24 at 02:34 +0100, Jeremy Harris wrote:
>>>> Of course, secondary thoughts, we don't know that the same sequences
>>>> of library calls on FreeBSD as on Linux will do what's wanted.
>>>    https://people.freebsd.org/~pkelsey/tfo-tools/
>> server:
>>         rc = setsockopt(listen_fd, IPPROTO_TCP, TCP_FASTOPEN,
>>                 &on, sizeof(on));

>>
>>> * Need to guard against flag being undef
>> Done for TCP_FASTOPEN, probably need to do for MSG_FASTOPEN.
>>
>>> * Need to gracefully handle the setsockopt() call failing
>>
>>
>> OK, so
>>
>> - The library call sequence is identical
>>
>> - Use IPPROTO_TCP where Linux has SOL_TCP
>>
>> - The current coding for failures on the server side is
>>    ok (just ignore the setsockopt failure; we get a
>>    non-fastopen socket as before) for non-supporting kernels

>>
>> - The current coding for failures on the client side
>>    needs thought.  I made it log-noisy but functional
>>    on the grounds that you do an extra syscall
>>    [the sendto(..., MSG_FASTOPEN, ...)] getting a fail
>>    every time on non-supporting kernels.  There is
>>    a transport control, defaulting to enabled.

>>
>>    Adding probe code in process startup might help, though
>>    the re-execs we do defeat that.  Queue-runners would be
>>    ok but most deliveries are probably foreground.

>>
>>    Should I change the default to not-enabled, for the
>>    medium-term?
> Well there are other BSDs to here from.

>
> Anyone from NetBsd, OpenBSD, DragonFly et al
> get the same error?
>
>> -- 
>> Cheers,
>>    jeremy

>>
>> --
>> ## List details at https://lists.exim.org/mailman/listinfo/exim-users
>> ## Exim details at http://www.exim.org/
>> ## Please use the Wiki with this list - http://wiki.exim.org/