lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 15 Mar 2010 16:37:04 -0000
From:	"MacCana, Mike" <mike.maccana@...dit-suisse.com>
To:	"Eric Dumazet" <eric.dumazet@...il.com>
Cc:	<linux-kernel@...r.kernel.org>
Subject: RE: Seeing TCP socket options (nodelay, cork, etc) in Linux procfs or elsewhere?

 

-----Original Message-----
From: Eric Dumazet [mailto:eric.dumazet@...il.com] 
Sent: 15 March 2010 16:21
To: MacCana, Mike
Cc: linux-kernel@...r.kernel.org
Subject: Re: Seeing TCP socket options (nodelay, cork, etc) in Linux procfs or elsewhere?

>Le lundi 15 mars 2010 à 15:49 +0000, MacCana, Mike a écrit :
>> Hi kernel folks,
>>  
>> I was wondering if there was a standard location to see TCP socket 
>> options (eg, nodelay, cork, etc), perhaps via procfs or some other 
>> means? I'd like to check whether arbitrary apps (for which I don't 
>> have
>> code) are using particular TCP options. 
>>  
>> Wandering round /proc/net hasn't turned up anything yet, and after a
>> quick:
>> socket.setsockopt(0, 1, 1)
>> to enable NODELAY I can't see any obvious difference in procfs or 
>> netstat output (where other Unixes seem to put this info). hat's the 
>> best way to see TCP options on sockets created by others' code?
>> 

>There is limited support given by ss command (part of iproute2) :
>
>ss -emoi
>
>ESTAB       0      0                                55.225.18.5:4900
>55.225.18.5:50000    uid:501 ino:135421 sk:c3b405c0
>	 mem:(r0,w0,f4096,t0) ts bic wscale:6,6 rto:201 rtt:1/0.5 ato:40 cwnd:3 send 393.2Mbps rcv_space:32768
>
> But CORK flag is not exported yet (its usually a volatile flag, at least with Apache server)

Thanks Eric. Checking here:

> sockettest.settcpoption(serversocket,'nodelay',True)    
> LISTEN     0      5                 127.0.0.1:7778                     *:*      ino:4095699 sk:0a53b500ffff8100

I can't get NODELAY either. Looking at lsof FAQ Linux seems to be limited in this regard. 

3.14.1	Why doesn't lsof report socket options, socket states, and TCP
	flags and values for my dialect?

Linux
		No socket options and values, socket states, or TCP
		flags and values are reported.  The support for "-Tf"
		could not be added to Linux, because socket options,
		socket states, and TCP flags and values are not
		available via the /proc file system.

However the SystemTap Networking Tapset provides a tcp.setsockopt breakpoint which I can 








=============================================================================== 
 Please access the attached hyperlink for an important electronic communications disclaimer: 
 http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html 
 =============================================================================== 
 
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ