Subject: Re: rare bad TCP checksum with 2.6.19?

From: Eric Dumazet <[email-masked]>
Date: Tue, 16 Jan 2007 00:36:50 +0100

Michael Tokarev a écrit :
> Eric Dumazet wrote:
>> Michael Tokarev a e'crit :
>>> Any idea how to force sending FIN-with-data?
>> int flag_on = 1;
>> setsockopt(fd, SOL_TCP, TCP_CORK, &flag_on, sizeof(int));
>> send(fd, data, datalen, 0);
>> close(fd);
> 
> That produces two packets - one (or more - depending on the
> size) data packet and one FIN packet w/o any data.
> 
> This is the first thing I've tried.

This may be because I forgot the shutdown() ?

int flag_on = 1;
setsockopt(fd, SOL_TCP, TCP_CORK, &flag_on, sizeof(int));
send(fd, data, datalen, 0);
shutdown(fd, 1);
close(fd);

At least this is working on my machines (with and without shutdown())

Eric