Have fileset_extract_prefix_suffix() print an error message if it fails,
so we don't just exit silently. Don't bother checking the validity of arguments - it shouldn't be passed NULL fprefix or fsuffix arguments in the first place, and isn't passed them. Exit with an exit status of 1 for command-line syntax errors and 2 for file open/close/IO errors. svn path=/trunk/; revision=28458
This commit is contained in:
parent
dc3b1136cc
commit
5e8e10cfa3
25
editcap.c
25
editcap.c
|
@ -186,9 +186,10 @@ fileset_extract_prefix_suffix(const char *fname, gchar **fprefix, gchar **fsuffi
|
||||||
gchar *save_file;
|
gchar *save_file;
|
||||||
|
|
||||||
save_file = g_strdup(fname);
|
save_file = g_strdup(fname);
|
||||||
|
if (save_file == NULL) {
|
||||||
if (!fprefix || !fsuffix || !save_file)
|
fprintf(stderr, "editcap: Out of memory\n");
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
last_pathsep = strrchr(save_file, G_DIR_SEPARATOR);
|
last_pathsep = strrchr(save_file, G_DIR_SEPARATOR);
|
||||||
pfx = strrchr(save_file,'.');
|
pfx = strrchr(save_file,'.');
|
||||||
|
@ -936,7 +937,7 @@ main(int argc, char *argv[])
|
||||||
g_free(err_info);
|
g_free(err_info);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
exit(1);
|
exit(2);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -976,7 +977,7 @@ main(int argc, char *argv[])
|
||||||
|
|
||||||
if (split_packet_count > 0 || secs_per_block > 0) {
|
if (split_packet_count > 0 || secs_per_block > 0) {
|
||||||
if (!fileset_extract_prefix_suffix(argv[optind+1], &fprefix, &fsuffix))
|
if (!fileset_extract_prefix_suffix(argv[optind+1], &fprefix, &fsuffix))
|
||||||
exit(5);
|
exit(2);
|
||||||
|
|
||||||
filename = fileset_get_filename_by_pattern(block_cnt++, &phdr->ts, fprefix, fsuffix);
|
filename = fileset_get_filename_by_pattern(block_cnt++, &phdr->ts, fprefix, fsuffix);
|
||||||
} else
|
} else
|
||||||
|
@ -988,7 +989,7 @@ main(int argc, char *argv[])
|
||||||
if (pdh == NULL) {
|
if (pdh == NULL) {
|
||||||
fprintf(stderr, "editcap: Can't open or create %s: %s\n", filename,
|
fprintf(stderr, "editcap: Can't open or create %s: %s\n", filename,
|
||||||
wtap_strerror(err));
|
wtap_strerror(err));
|
||||||
exit(1);
|
exit(2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1002,7 +1003,7 @@ main(int argc, char *argv[])
|
||||||
if (!wtap_dump_close(pdh, &err)) {
|
if (!wtap_dump_close(pdh, &err)) {
|
||||||
fprintf(stderr, "editcap: Error writing to %s: %s\n", filename,
|
fprintf(stderr, "editcap: Error writing to %s: %s\n", filename,
|
||||||
wtap_strerror(err));
|
wtap_strerror(err));
|
||||||
exit(1);
|
exit(2);
|
||||||
}
|
}
|
||||||
block_start.secs = block_start.secs + secs_per_block; /* reset for next interval */
|
block_start.secs = block_start.secs + secs_per_block; /* reset for next interval */
|
||||||
g_free(filename);
|
g_free(filename);
|
||||||
|
@ -1019,7 +1020,7 @@ main(int argc, char *argv[])
|
||||||
if (pdh == NULL) {
|
if (pdh == NULL) {
|
||||||
fprintf(stderr, "editcap: Can't open or create %s: %s\n", filename,
|
fprintf(stderr, "editcap: Can't open or create %s: %s\n", filename,
|
||||||
wtap_strerror(err));
|
wtap_strerror(err));
|
||||||
exit(1);
|
exit(2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1032,7 +1033,7 @@ main(int argc, char *argv[])
|
||||||
if (!wtap_dump_close(pdh, &err)) {
|
if (!wtap_dump_close(pdh, &err)) {
|
||||||
fprintf(stderr, "editcap: Error writing to %s: %s\n", filename,
|
fprintf(stderr, "editcap: Error writing to %s: %s\n", filename,
|
||||||
wtap_strerror(err));
|
wtap_strerror(err));
|
||||||
exit(1);
|
exit(2);
|
||||||
}
|
}
|
||||||
|
|
||||||
g_free(filename);
|
g_free(filename);
|
||||||
|
@ -1048,7 +1049,7 @@ main(int argc, char *argv[])
|
||||||
if (pdh == NULL) {
|
if (pdh == NULL) {
|
||||||
fprintf(stderr, "editcap: Can't open or create %s: %s\n", filename,
|
fprintf(stderr, "editcap: Can't open or create %s: %s\n", filename,
|
||||||
wtap_strerror(err));
|
wtap_strerror(err));
|
||||||
exit(1);
|
exit(2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1222,7 +1223,7 @@ main(int argc, char *argv[])
|
||||||
&err)) {
|
&err)) {
|
||||||
fprintf(stderr, "editcap: Error writing to %s: %s\n",
|
fprintf(stderr, "editcap: Error writing to %s: %s\n",
|
||||||
filename, wtap_strerror(err));
|
filename, wtap_strerror(err));
|
||||||
exit(1);
|
exit(2);
|
||||||
}
|
}
|
||||||
written_count++;
|
written_count++;
|
||||||
}
|
}
|
||||||
|
@ -1253,7 +1254,7 @@ main(int argc, char *argv[])
|
||||||
|
|
||||||
fprintf(stderr, "editcap: Error writing to %s: %s\n", filename,
|
fprintf(stderr, "editcap: Error writing to %s: %s\n", filename,
|
||||||
wtap_strerror(err));
|
wtap_strerror(err));
|
||||||
exit(1);
|
exit(2);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue