From: xixiliguo Date: Sat, 20 Jul 2024 15:23:27 +0000 (+0800) Subject: ss: fix expired time format of timer X-Git-Tag: v6.11.0~19 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3e807112fdf3d7b89a8295379dd8474f08a38b4b;p=thirdparty%2Fiproute2.git ss: fix expired time format of timer When expired time of time-wait timer is less than or equal to 9 seconds, as shown below, result that below 1 sec is incorrect. Expect output should be show 9 seconds and 373 millisecond, but 9.373ms mean only 9 millisecond and 373 microseconds Before: TIME-WAIT 0 0 ... timer:(timewait,12sec,0) TIME-WAIT 0 0 ... timer:(timewait,11sec,0) TIME-WAIT 0 0 ... timer:(timewait,10sec,0) TIME-WAIT 0 0 ... timer:(timewait,9.373ms,0) TIME-WAIT 0 0 ... timer:(timewait,8.679ms,0) TIME-WAIT 0 0 ... timer:(timewait,1.574ms,0) TIME-WAIT 0 0 ... timer:(timewait,954ms,0) TIME-WAIT 0 0 ... timer:(timewait,303ms,0) After: TIME-WAIT 0 0 ... timer:(timewait,13sec,0) TIME-WAIT 0 0 ... timer:(timewait,12sec,0) TIME-WAIT 0 0 ... timer:(timewait,10sec,0) TIME-WAIT 0 0 ... timer:(timewait,9.501sec,0) TIME-WAIT 0 0 ... timer:(timewait,8.990sec,0) TIME-WAIT 0 0 ... timer:(timewait,7.865sec,0) TIME-WAIT 0 0 ... timer:(timewait,1.098sec,0) TIME-WAIT 0 0 ... timer:(timewait,476ms,0) Signed-off-by: xixiliguo Signed-off-by: Stephen Hemminger --- diff --git a/misc/ss.c b/misc/ss.c index 27f0f20d..620f4c8f 100644 --- a/misc/ss.c +++ b/misc/ss.c @@ -1516,7 +1516,7 @@ static const char *print_ms_timer(unsigned int timeout) sprintf(buf+strlen(buf), "%d%s", secs, msecs ? "." : "sec"); } if (msecs) - sprintf(buf+strlen(buf), "%03dms", msecs); + sprintf(buf+strlen(buf), "%03d%s", msecs, secs ? "sec" : "ms"); return buf; }