File report-iface.patch of Package arpwatch
--- a/arpsnmp.c
+++ b/arpsnmp.c
@@ -68,6 +68,7 @@ int snmp_add(u_int32_t, u_char *, time_t
__dead void usage(void) __attribute__((volatile));
char *prog;
+char *interface;
extern int optind;
extern int opterr;
--- a/arpwatch.c
+++ b/arpwatch.c
@@ -118,6 +118,7 @@ struct rtentry;
#endif
char *prog;
+char *interface;
int can_checkpoint;
int swapped;
@@ -214,7 +215,7 @@ main(int argc, char **argv)
register int fd;
#endif
register pcap_t *pd;
- register char *interface, *rfilename;
+ register char *rfilename;
struct bpf_program code;
char errbuf[PCAP_ERRBUF_SIZE];
char* serveruser = NULL;
--- a/report.c
+++ b/report.c
@@ -73,6 +73,8 @@ struct rtentry;
char *watcher = WATCHER;
char *watchee = WATCHEE;
+extern char *interface;
+
static int cdepth; /* number of outstanding children */
static char *fmtdate(time_t);
@@ -339,6 +341,8 @@ report(register char *title, register u_
(void)fprintf(f, fmt, "previous timestamp", fmtdate(*t2p));
if (t1p && t2p && *t1p && *t2p)
(void)fprintf(f, fmt, "delta", fmtdelta(*t1p - *t2p));
+ if (interface)
+ (void)fprintf(f, fmt, "interface", interface);
if (debug) {
fflush(f);