summaryrefslogtreecommitdiff
path: root/editcap.c
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2014-01-22 00:26:36 +0000
committerGuy Harris <guy@alum.mit.edu>2014-01-22 00:26:36 +0000
commit90d7c5f59b574e254bc1bb70aaaf12372fe97cc3 (patch)
tree7bc8e69b7cc459b8dfef190d1b33a7cb092a7bf3 /editcap.c
parent5c825d6a364d83dace7b6c682aa47678e89df79b (diff)
downloadwireshark-90d7c5f59b574e254bc1bb70aaaf12372fe97cc3.tar.gz
Don't write out packets that have a "captured length" bigger than we're
willing to read or that's bigger than will fit in the file format; instead, report an error. For the "I can't write a packet of that type in that file type" error, report the file type in question. svn path=/trunk/; revision=54882
Diffstat (limited to 'editcap.c')
-rw-r--r--editcap.c22
1 files changed, 19 insertions, 3 deletions
diff --git a/editcap.c b/editcap.c
index 2a62995847..ca4a327551 100644
--- a/editcap.c
+++ b/editcap.c
@@ -1529,11 +1529,27 @@ main(int argc, char *argv[])
case WTAP_ERR_UNSUPPORTED_ENCAP:
/*
* This is a problem with the particular frame we're
- * writing; note that, and give the frame number.
+ * writing and the file type and subtype we're
+ * writing; note that, and report the frame number
+ * and file type/subtype.
*/
fprintf(stderr,
- "editcap: Frame %u of \"%s\" has a network type that can't be saved in a file with that format\n.",
- read_count, argv[optind]);
+ "editcap: Frame %u of \"%s\" has a network type that can't be saved in a \"%s\" file\n.",
+ read_count, argv[optind],
+ wtap_file_type_subtype_string(out_file_type_subtype));
+ break;
+
+ case WTAP_ERR_PACKET_TOO_LARGE:
+ /*
+ * This is a problem with the particular frame we're
+ * writing and the file type and subtype we're
+ * writing; note that, and report the frame number
+ * and file type/subtype.
+ */
+ fprintf(stderr,
+ "editcap: Frame %u of \"%s\" is too large for a \"%s\" file\n.",
+ read_count, argv[optind],
+ wtap_file_type_subtype_string(out_file_type_subtype));
break;
default: