diff -ru ../tcpspy-1.7b/tcpspy.c ./tcpspy.c
--- ../tcpspy-1.7b/tcpspy.c	Thu Jan 10 16:03:11 2002
+++ ./tcpspy.c	Thu Jan 10 16:01:26 2002
@@ -229,8 +229,10 @@
 	while (fgets (buf, sizeof (buf), fp) != NULL) {
 		unsigned long st;
 
-		if (sscanf (buf, "%*d: %lx:%lx %lx:%lx %lx %*x:%*x %*x:%*x %*x %lu %*d %lu", &c.lcl, &c.lclp, &c.rmt, &c.rmtp, &st, &c.uid, &c.ino) != 7)
-			panic ("/proc/net/tcp: bad file format");
+		if (sscanf (buf, "%*d: %lx:%lx %lx:%lx %lx %*x:%*x %*x:%*x %*x %lu %*d %lu", &c.lcl, &c.lclp, &c.rmt, &c.rmtp, &st, &c.uid, &c.ino) != 7) {
+			logmsg ("/proc/net/tcp: warning: incomplete line");
+			continue;
+		}
 		if ((c.ino == 0) || (st != TCP_ESTABLISHED)) continue;
 		if (showprocs != 0)
 			huntinode ((ino_t) c.ino, c.exe, sizeof (c.exe));
@@ -622,7 +624,7 @@
 					strerror (errno));
 			exit (EXIT_FAILURE);
 		} else if (p != 0) {
-			fprintf (stderr, "tcpspy 1.7b started (pid %d)\n", 
+			fprintf (stderr, "tcpspy 1.7c started (pid %d)\n", 
 					(int) p);
 			exit (EXIT_SUCCESS);
 		}
@@ -634,7 +636,7 @@
 		setpgid (0, 0);
 		chdir ("/");
 	} else
-		fprintf (stderr, "tcpspy 1.7 started (debug)\n");
+		fprintf (stderr, "tcpspy 1.7c started (debug)\n");
 
 	signal (SIGTERM, stopsig);
 	if (debug != 0) signal (SIGINT, stopsig);
