svn commit: r339557 - head/contrib/tcpdump

Kristof Provost kp at FreeBSD.org
Sun Oct 21 21:17:43 UTC 2018


Author: kp
Date: Sun Oct 21 21:17:42 2018
New Revision: 339557
URL: https://svnweb.freebsd.org/changeset/base/339557

Log:
  tcpdump: Log uid on pflog interfaces
  
  If pf logs the user id ('pass out log (user)') have tcpdump also print
  this.
  
  Example output:
   00:00:00.000000 rule 0/0(match) [uid 1001]: pass out on vtnet0: (tos 0x0, ttl 64, id 57539, offset 0, flags [none], proto UDP (17), length 55)
      172.16.2.2.18337 > 172.16.2.1.53: [bad udp cksum 0x5c58 -> 0x16e4!] 40222+ A? google.be. (27)
  
  PR:		122773
  Differential Revision:	https://reviews.freebsd.org/D17625

Modified:
  head/contrib/tcpdump/print-pflog.c

Modified: head/contrib/tcpdump/print-pflog.c
==============================================================================
--- head/contrib/tcpdump/print-pflog.c	Sun Oct 21 18:39:34 2018	(r339556)
+++ head/contrib/tcpdump/print-pflog.c	Sun Oct 21 21:17:42 2018	(r339557)
@@ -97,8 +97,12 @@ pflog_print(netdissect_options *ndo, const struct pflo
 	else
 		ND_PRINT((ndo, "rule %u.%s.%u/", rulenr, hdr->ruleset, subrulenr));
 
-	ND_PRINT((ndo, "%s: %s %s on %s: ",
-	    tok2str(pf_reasons, "unkn(%u)", hdr->reason),
+	ND_PRINT((ndo, "%s", tok2str(pf_reasons, "unkn(%u)", hdr->reason)));
+
+	if (hdr->uid != UID_MAX)
+		ND_PRINT((ndo, " [uid %u]", (unsigned)hdr->uid));
+
+	ND_PRINT((ndo, ": %s %s on %s: ",
 	    tok2str(pf_actions, "unkn(%u)", hdr->action),
 	    tok2str(pf_directions, "unkn(%u)", hdr->dir),
 	    hdr->ifname));


More information about the svn-src-head mailing list