forked from osmocom/wireshark
text2pcap: Support OFFSET_NONE
parent
f63571c3e8
commit
8cafcfa5a9
|
@ -23,7 +23,7 @@ text2pcap - Generate a capture file from an ASCII hexdump of packets
|
|||
[ *-n* ]
|
||||
[ *-N* <intf-name> ]
|
||||
[ *-m* <max-packet> ]
|
||||
[ *-o* hex|oct|dec ]
|
||||
[ *-o* hex|oct|dec|none ]
|
||||
[ *-q* ]
|
||||
[ *-s* <srcport>,<destport>,<tag> ]
|
||||
[ *-S* <srcport>,<destport>,<ppi> ]
|
||||
|
@ -202,11 +202,14 @@ Specify a name for the interface included when writing a pcapng format
|
|||
file. By default no name is defined.
|
||||
--
|
||||
|
||||
-o hex|oct|dec::
|
||||
-o hex|oct|dec|none::
|
||||
+
|
||||
--
|
||||
Specify the radix for the offsets (hex, octal or decimal). Defaults to
|
||||
Specify the radix for the offsets (hex, octal, decimal, or none). Defaults to
|
||||
hex. This corresponds to the `-A` option for __od__.
|
||||
|
||||
*NOTE:* With __-o none__, only one packet will be created, ignoring any
|
||||
direction indicators or timestamps after the first byte along with any offsets.
|
||||
--
|
||||
|
||||
-q::
|
||||
|
@ -243,15 +246,12 @@ into the SCTP header.
|
|||
+
|
||||
--
|
||||
Treats the text before the packet as a date/time code; __timefmt__ is a
|
||||
format string of the sort supported by strftime(3).
|
||||
Example: The time "10:15:14.5476" has the format code "%H:%M:%S."
|
||||
format string supported by strftime(3), supplemented with the field
|
||||
descriptor "%f" for fractional seconds up to nanoseconds.
|
||||
Example: The time "10:15:14.5476" has the format code "%H:%M:%S.%f"
|
||||
The special format string __ISO__ indicates that the string should be
|
||||
parsed according to the ISO-8601 specification.
|
||||
|
||||
*NOTE:* The subsecond component delimiter must be specified (.) but no
|
||||
pattern is required; the remaining number is assumed to be fractions of
|
||||
a second.
|
||||
|
||||
*NOTE:* Date/time fields from the current date/time are
|
||||
used as the default for unspecified fields.
|
||||
--
|
||||
|
|
21
text2pcap.c
21
text2pcap.c
|
@ -171,9 +171,6 @@ static char *output_filename;
|
|||
|
||||
static wtap_dumper* wdh;
|
||||
|
||||
/* Offset base to parse */
|
||||
static guint32 offset_base = 16;
|
||||
|
||||
/* Encapsulation type; see wiretap/wtap.h for details */
|
||||
static guint32 wtap_encap_type = 1; /* Default is WTAP_ENCAP_ETHERNET */
|
||||
|
||||
|
@ -259,7 +256,7 @@ print_usage (FILE *output)
|
|||
" <outfile> specifies output filename (use - for standard output)\n"
|
||||
"\n"
|
||||
"Input:\n"
|
||||
" -o hex|oct|dec parse offsets as (h)ex, (o)ctal or (d)ecimal;\n"
|
||||
" -o hex|oct|dec|none parse offsets as (h)ex, (o)ctal, (d)ecimal, or (n)one;\n"
|
||||
" default is hex.\n"
|
||||
" -t <timefmt> treat the text before the packet as a date/time code;\n"
|
||||
" the specified argument is a format string of the sort\n"
|
||||
|
@ -375,6 +372,7 @@ parse_options(int argc, char *argv[], text_import_info_t * const info, wtap_dump
|
|||
int err;
|
||||
char* err_info;
|
||||
|
||||
info->hexdump.offset_type = OFFSET_HEX;
|
||||
/* Initialize the version information. */
|
||||
ws_init_version_info("Text2pcap (Wireshark)", NULL, NULL, NULL);
|
||||
|
||||
|
@ -394,15 +392,16 @@ parse_options(int argc, char *argv[], text_import_info_t * const info, wtap_dump
|
|||
case 'n': use_pcapng = TRUE; break;
|
||||
case 'N': interface_name = ws_optarg; break;
|
||||
case 'o':
|
||||
if (ws_optarg[0] != 'h' && ws_optarg[0] != 'o' && ws_optarg[0] != 'd') {
|
||||
if (ws_optarg[0] != 'h' && ws_optarg[0] != 'o' && ws_optarg[0] != 'd' && ws_optarg[0] != 'n') {
|
||||
cmdarg_err("Bad argument for '-o': %s", ws_optarg);
|
||||
print_usage(stderr);
|
||||
return INVALID_OPTION;
|
||||
}
|
||||
switch (ws_optarg[0]) {
|
||||
case 'o': offset_base = 8; break;
|
||||
case 'h': offset_base = 16; break;
|
||||
case 'd': offset_base = 10; break;
|
||||
case 'o': info->hexdump.offset_type = OFFSET_OCT; break;
|
||||
case 'h': info->hexdump.offset_type = OFFSET_HEX; break;
|
||||
case 'd': info->hexdump.offset_type = OFFSET_DEC; break;
|
||||
case 'n': info->hexdump.offset_type = OFFSET_NONE; break;
|
||||
}
|
||||
break;
|
||||
case 'e':
|
||||
|
@ -743,12 +742,6 @@ parse_options(int argc, char *argv[], text_import_info_t * const info, wtap_dump
|
|||
info->import_text_filename = input_filename;
|
||||
info->output_filename = output_filename;
|
||||
info->hexdump.import_text_FILE = input_file;
|
||||
switch (offset_base) {
|
||||
case (16): info->hexdump.offset_type = OFFSET_HEX; break;
|
||||
case (10): info->hexdump.offset_type = OFFSET_DEC; break;
|
||||
case (8): info->hexdump.offset_type = OFFSET_OCT; break;
|
||||
default: info->hexdump.offset_type = OFFSET_HEX; break;
|
||||
}
|
||||
info->hexdump.has_direction = has_direction;
|
||||
info->timestamp_format = ts_fmt;
|
||||
|
||||
|
|
Loading…
Reference in New Issue