svn commit: r197425 - head/usr.bin/netstat

Mike Silbersack silby at FreeBSD.org
Wed Sep 23 05:32:34 UTC 2009


Author: silby
Date: Wed Sep 23 05:32:33 2009
New Revision: 197425
URL: http://svn.freebsd.org/changeset/base/197425

Log:
  In netstat -x, do not try to print out tcp timer status for udp sockets.

Modified:
  head/usr.bin/netstat/inet.c

Modified: head/usr.bin/netstat/inet.c
==============================================================================
--- head/usr.bin/netstat/inet.c	Wed Sep 23 02:45:02 2009	(r197424)
+++ head/usr.bin/netstat/inet.c	Wed Sep 23 05:32:33 2009	(r197425)
@@ -355,6 +355,7 @@ protopr(u_long off, const char *name, in
 		} else {
 			inp = &((struct xinpcb *)xig)->xi_inp;
 			so = &((struct xinpcb *)xig)->xi_socket;
+			timer = NULL;
 		}
 
 		/* Ignore sockets for protocols other than the desired one. */
@@ -425,7 +426,7 @@ protopr(u_long off, const char *name, in
 					printf("%7.7s %7.7s %7.7s %7.7s %7.7s %7.7s %s\n",
 						"rexmt", "persist", "keep",
 						"2msl", "delack", "rcvtime",
-                                               "(state)");
+						"(state)");
 				} else
 					printf("(state)\n");
 			}
@@ -529,13 +530,14 @@ protopr(u_long off, const char *name, in
 				       so->so_rcv.sb_lowat, so->so_snd.sb_lowat,
 				       so->so_rcv.sb_mbcnt, so->so_snd.sb_mbcnt,
 				       so->so_rcv.sb_mbmax, so->so_snd.sb_mbmax);
-				printf("%4d.%02d %4d.%02d %4d.%02d %4d.%02d %4d.%02d %4d.%02d ",
-					timer->tt_rexmt / 1000, (timer->tt_rexmt % 1000) / 10,
-					timer->tt_persist / 1000, (timer->tt_persist % 1000) / 10,
-					timer->tt_keep / 1000, (timer->tt_keep % 1000) / 10,
-					timer->tt_2msl / 1000, (timer->tt_2msl % 1000) / 10,
-					timer->tt_delack / 1000, (timer->tt_delack % 1000) / 10,
-					timer->t_rcvtime / 1000, (timer->t_rcvtime % 1000) / 10);
+				if (timer != NULL)
+					printf("%4d.%02d %4d.%02d %4d.%02d %4d.%02d %4d.%02d %4d.%02d ",
+					    timer->tt_rexmt / 1000, (timer->tt_rexmt % 1000) / 10,
+					    timer->tt_persist / 1000, (timer->tt_persist % 1000) / 10,
+					    timer->tt_keep / 1000, (timer->tt_keep % 1000) / 10,
+					    timer->tt_2msl / 1000, (timer->tt_2msl % 1000) / 10,
+					    timer->tt_delack / 1000, (timer->tt_delack % 1000) / 10,
+					    timer->t_rcvtime / 1000, (timer->t_rcvtime % 1000) / 10);
 			}
 		}
 		if (istcp && !Lflag) {


More information about the svn-src-all mailing list