Skip to content

Commit

Permalink
command line option --capture-comment for dumpcap
Browse files Browse the repository at this point in the history
svn path=/trunk/; revision=50945
  • Loading branch information
martin-kaiser committed Jul 27, 2013
1 parent a585b45 commit 82ea635
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 1 deletion.
3 changes: 3 additions & 0 deletions capture_opts.c
Original file line number Diff line number Diff line change
Expand Up @@ -627,6 +627,9 @@ capture_opts_add_opt(capture_options *capture_opts, int opt, const char *optarg_
int status, snaplen;

switch(opt) {
case LONGOPT_NUM_CAP_COMMENT: /* capture comment */
capture_opts->capture_comment = g_strdup(optarg_str_p);
break;
case 'a': /* autostop criteria */
if (set_autostop_criterion(capture_opts, optarg_str_p) == FALSE) {
cmdarg_err("Invalid or unknown -a flag \"%s\"", optarg_str_p);
Expand Down
2 changes: 2 additions & 0 deletions capture_opts.h
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,8 @@
extern "C" {
#endif /* __cplusplus */

#define LONGOPT_NUM_CAP_COMMENT 0

#ifdef HAVE_PCAP_REMOTE
/* Type of capture source */
typedef enum {
Expand Down
11 changes: 10 additions & 1 deletion dumpcap.c
Original file line number Diff line number Diff line change
Expand Up @@ -505,6 +505,9 @@ print_usage(gboolean print_ver)
fprintf(output, " files:NUM - ringbuffer: replace after NUM files\n");
fprintf(output, " -n use pcapng format instead of pcap (default)\n");
fprintf(output, " -P use libpcap format instead of pcapng\n");
fprintf(output, " --capture-comment <comment>\n");
fprintf(output, " add a capture comment to the output file\n");
fprintf(output, " (only for pcapng)\n");
fprintf(output, "\n");
fprintf(output, "Miscellaneous:\n");
fprintf(output, " -N <packet_limit> maximum number of packets buffered within dumpcap\n");
Expand Down Expand Up @@ -4126,6 +4129,11 @@ main(int argc, char *argv[])
GString *comp_info_str;
GString *runtime_info_str;
int opt;
struct option long_options[] = {
{"capture-comment", required_argument, NULL, LONGOPT_NUM_CAP_COMMENT },
{0, 0, 0, 0 }
};

gboolean arg_error = FALSE;

#ifdef _WIN32
Expand Down Expand Up @@ -4470,7 +4478,7 @@ main(int argc, char *argv[])
global_capture_opts.capture_child = capture_child;

/* Now get our args */
while ((opt = getopt_long(argc, argv, OPTSTRING, NULL, NULL)) != -1) {
while ((opt = getopt_long(argc, argv, OPTSTRING, long_options, NULL)) != -1) {
switch (opt) {
case 'h': /* Print help and exit */
print_usage(TRUE);
Expand All @@ -4497,6 +4505,7 @@ main(int argc, char *argv[])
case 's': /* Set the snapshot (capture) length */
case 'w': /* Write to capture file x */
case 'y': /* Set the pcap data link type */
case LONGOPT_NUM_CAP_COMMENT: /* add a capture comment */
#ifdef HAVE_PCAP_REMOTE
case 'u': /* Use UDP for data transfer */
case 'r': /* Capture own RPCAP traffic too */
Expand Down

0 comments on commit 82ea635

Please sign in to comment.