diff options
author | Ashok Narayanan <ashokn@cisco.com> | 2001-05-16 21:32:05 +0000 |
---|---|---|
committer | Ashok Narayanan <ashokn@cisco.com> | 2001-05-16 21:32:05 +0000 |
commit | 2914e811771b2895273313eaf087bd9048403f9d (patch) | |
tree | a2974ba39320800cf18e2a199f413bbb58a040e1 /text2pcap-scanner.l | |
parent | 5aafaef6c25f18c8a10322e6a7ece7162b62d448 (diff) | |
download | wireshark-2914e811771b2895273313eaf087bd9048403f9d.tar.gz wireshark-2914e811771b2895273313eaf087bd9048403f9d.tar.bz2 wireshark-2914e811771b2895273313eaf087bd9048403f9d.zip |
Added 'text2pcap', a utility to convert text hexdumps into pcap
files. See text2pcap.1 (built from doc/text2pcap.pod) for details.
Changed 'tethereal -x' output to match hex dump format of text2pcap,
Ethereal and others.
svn path=/trunk/; revision=3421
Diffstat (limited to 'text2pcap-scanner.l')
-rw-r--r-- | text2pcap-scanner.l | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/text2pcap-scanner.l b/text2pcap-scanner.l new file mode 100644 index 0000000000..63835a1e39 --- /dev/null +++ b/text2pcap-scanner.l @@ -0,0 +1,71 @@ +/* -*-mode: flex-*- */ + +%{ + +/******************************************************************************** + * + * text2pcap-scanner.l + * + * Utility to convert an ASCII hexdump into a libpcap-format capture file + * + * (c) Copyright 2001 Ashok Narayanan <ashokn@cisco.com> + * + * $Id: text2pcap-scanner.l,v 1.1 2001/05/16 21:32:04 ashokn Exp $ + * + * Ethereal - Network traffic analyzer + * By Gerald Combs <gerald@ethereal.com> + * Copyright 1998 Gerald Combs + * + * + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * + *******************************************************************************/ + +#include <stdio.h> +#include <stdlib.h> + +#include "text2pcap.h" + +%} + +hexdigit [0-9A-Fa-f] +directive #TEXT2PCAP.* +comment #[^W].* +byte [0-9A-Fa-f][0-9A-Fa-f][ \t] +byte_eol [0-9A-Fa-f][0-9A-Fa-f]\n +offset [0-9A-Fa-f]+[ \t\n] +text [^ \n\t]+ +mailfwd > +eol \r?\n\r? + +%% + +{byte} { parse_token(T_BYTE, yytext); } +{byte_eol} { parse_token(T_BYTE, yytext); parse_token(T_EOL, NULL); } +{offset} { parse_token(T_OFFSET, yytext); } +{mailfwd}{offset} { parse_token(T_OFFSET, yytext+1); } +{eol} { parse_token(T_EOL, NULL); } +[ \t] ; /* ignore whitespace */ +{directive} { parse_token(T_DIRECTIVE, yytext); } +{comment} ; /* ignore comments */ +{text} { parse_token(T_TEXT, yytext); } + +%% + +int yywrap() +{ + return 1; +} |