#include <wsutil/privileges.h>
#include <wsutil/filesystem.h>
+#include <wsutil/file_util.h>
#ifdef HAVE_PLUGINS
#include <wsutil/plugins.h>
#ifdef HAVE_PLUGINS
if ((init_progfile_dir_error = init_progfile_dir(argv[0], main))) {
- g_warning("capinfos: init_progfile_dir(): %s", init_progfile_dir_error);
+ g_warning("captype: init_progfile_dir(): %s", init_progfile_dir_error);
g_free(init_progfile_dir_error);
} else {
/* Register all the plugin types we have. */
/* Set the C-language locale to the native environment. */
setlocale(LC_ALL, "");
- if ((argc - optind) < 1) {
+ if (argc < 2) {
usage();
return 1;
}
for (i = 1; i < argc; i++) {
wth = wtap_open_offline(argv[i], &err, &err_info, FALSE);
- if (!wth) {
- fprintf(stderr, "capinfos: Can't open %s: %s\n", argv[i],
- wtap_strerror(err));
- switch (err) {
+ if(wth) {
+ printf("%s: %s\n", argv[i], wtap_file_type_subtype_short_string(wtap_file_type_subtype(wth)));
+ wtap_close(wth);
+ } else {
+ if (err == WTAP_ERR_FILE_UNKNOWN_FORMAT)
+ printf("%s: unknown\n", argv[i]);
+ else {
+ fprintf(stderr, "captype: Can't open %s: %s\n", argv[i],
+ wtap_strerror(err));
+ switch (err) {
case WTAP_ERR_UNSUPPORTED:
case WTAP_ERR_UNSUPPORTED_ENCAP:
fprintf(stderr, "(%s)\n", err_info);
g_free(err_info);
break;
+ }
+ overall_error_status = 1; /* remember that an error has occurred */
}
- overall_error_status = 1; /* remember that an error has occurred */
}
- if(wth) {
- printf("%s: %s\n", argv[i], wtap_file_type_subtype_short_string(wtap_file_type_subtype(wth)));
- wtap_close(wth);
- }
}
return overall_error_status;