summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/libpcap/scanner.l12
1 files changed, 9 insertions, 3 deletions
diff --git a/lib/libpcap/scanner.l b/lib/libpcap/scanner.l
index 1f5ba302335..e26c5a0a657 100644
--- a/lib/libpcap/scanner.l
+++ b/lib/libpcap/scanner.l
@@ -1,5 +1,5 @@
%{
-/* $OpenBSD: scanner.l,v 1.16 2005/10/07 19:32:39 mpf Exp $ */
+/* $OpenBSD: scanner.l,v 1.17 2006/04/18 16:59:02 deraadt Exp $ */
/*
* Copyright (c) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997
@@ -24,7 +24,7 @@
#ifndef lint
static const char rcsid[] =
- "@(#) $Header: /cvs/OpenBSD/src/lib/libpcap/scanner.l,v 1.16 2005/10/07 19:32:39 mpf Exp $ (LBL)";
+ "@(#) $Header: /cvs/OpenBSD/src/lib/libpcap/scanner.l,v 1.17 2006/04/18 16:59:02 deraadt Exp $ (LBL)";
#endif
#include <sys/types.h>
@@ -33,6 +33,7 @@ static const char rcsid[] =
#include <ctype.h>
#include <string.h>
#include <unistd.h>
+#include <vis.h>
#include "pcap-int.h"
@@ -269,7 +270,12 @@ action return PF_ACTION;
"\\"[^ !()\n\t]+ { yylval.s = sdup((char *)yytext + 1); return ID; }
[^ \[\]\t\n\-_.A-Za-z0-9!<>()&|=]+i {
bpf_error("illegal token: %s\n", yytext); }
-. { bpf_error("illegal char '%c'", *yytext); }
+. {
+ char v[5];
+
+ vis(v, *yytext, VIS_OCTAL, 0);
+ bpf_error("illegal char '%s'", v);
+ }
%%
void
lex_init(buf)