netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* ss format bug
@ 2015-08-26 15:59 Mike Saal
  2015-08-31 23:23 ` Stephen Hemminger
  0 siblings, 1 reply; 2+ messages in thread
From: Mike Saal @ 2015-08-26 15:59 UTC (permalink / raw)
  To: netdev

[-- Attachment #1: Type: text/plain, Size: 573 bytes --]

Hi:

I found a formatting bug in the 4.1.1 ss command. The following line was 
incorrectly output due to passing a negative length to printf() when 
displaying the local address. In this instance hostapd does a "bind to 
device" on cdreth0 and then does a udp "in address any" port 67 bind. 
Please note the whitespace between the '*' and ' %cdreth0:67'

    'udp UNCONN 0 0 ** %cdreth0:67* *:* users:(("hostapd",pid=19241,fd=5))'

Attached is my patch for the bug fix, it might be prudent to add more 
guard code looking for negative length format codes.

Sincerely, Mike

[-- Attachment #2: ss.patch --]
[-- Type: text/x-patch, Size: 464 bytes --]

diff -Nuar iproute2-4.1.1.orig/misc/ss.c iproute2-4.1.1/misc/ss.c
--- iproute2-4.1.1.orig/misc/ss.c	2015-07-06 17:57:34.000000000 -0400
+++ iproute2-4.1.1/misc/ss.c	2015-08-20 10:37:17.615100588 -0400
@@ -1023,6 +1023,8 @@
 	if (ifindex) {
 		ifname   = ll_index_to_name(ifindex);
 		est_len -= strlen(ifname) + 1;  /* +1 for percent char */
+		if (est_len < 0)
+			est_len = 0;
 	}
 
 	sock_addr_print_width(est_len, ap, ":", serv_width, resolve_service(port),



^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: ss format bug
  2015-08-26 15:59 ss format bug Mike Saal
@ 2015-08-31 23:23 ` Stephen Hemminger
  0 siblings, 0 replies; 2+ messages in thread
From: Stephen Hemminger @ 2015-08-31 23:23 UTC (permalink / raw)
  To: Mike Saal; +Cc: netdev

On Wed, 26 Aug 2015 11:59:17 -0400
Mike Saal <msaal@qacafe.com> wrote:

> Hi:
> 
> I found a formatting bug in the 4.1.1 ss command. The following line was 
> incorrectly output due to passing a negative length to printf() when 
> displaying the local address. In this instance hostapd does a "bind to 
> device" on cdreth0 and then does a udp "in address any" port 67 bind. 
> Please note the whitespace between the '*' and ' %cdreth0:67'
> 
>     'udp UNCONN 0 0 ** %cdreth0:67* *:* users:(("hostapd",pid=19241,fd=5))'
> 
> Attached is my patch for the bug fix, it might be prudent to add more 
> guard code looking for negative length format codes.
> 
> Sincerely, Mike


I think the root cause of this is actually down in the main program
where it is computing addr_width. It is not accounting for the size correctly,
or maybe your case just occurs if screen is too narrow to fit the full width.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2015-08-31 23:23 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-08-26 15:59 ss format bug Mike Saal
2015-08-31 23:23 ` Stephen Hemminger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).