summaryrefslogtreecommitdiffstats
path: root/src/daemon/abrt-action-save-package-data.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/daemon/abrt-action-save-package-data.cpp')
-rw-r--r--src/daemon/abrt-action-save-package-data.cpp27
1 files changed, 12 insertions, 15 deletions
diff --git a/src/daemon/abrt-action-save-package-data.cpp b/src/daemon/abrt-action-save-package-data.cpp
index d72f46c0..1c2f6051 100644
--- a/src/daemon/abrt-action-save-package-data.cpp
+++ b/src/daemon/abrt-action-save-package-data.cpp
@@ -267,16 +267,20 @@ static int SavePackageDescriptionToDebugDump(const char *dump_dir_name)
return error;
}
-static char *d_opt;
-static int s_opt;
+enum {
+ OPT_v = 1 << 0,
+ OPT_d = 1 << 1,
+ OPT_s = 1 << 2,
+};
+
+static const char *dump_dir_name = ".";
static const char abrt_action_save_package_data_usage[] = "abrt-action-save-package-data [options] -d DIR";
static struct options abrt_action_save_package_data_options[] = {
OPT__VERBOSE(&g_verbose),
- OPT_GROUP(""),
- OPT_STRING( 'd' , 0, &d_opt, "dir", "Crash dump directory"),
- OPT_BOOL( 's' , 0, &s_opt, "Log to syslog"),
+ OPT_STRING( 'd' , 0, &dump_dir_name, "dir", "Crash dump directory"),
+ OPT_BOOL( 's' , 0, NULL, "Log to syslog"),
OPT_END()
};
@@ -286,20 +290,13 @@ int main(int argc, char **argv)
if (env_verbose)
g_verbose = atoi(env_verbose);
- const char *dump_dir_name = ".";
-
- parse_opts(argc, argv, abrt_action_save_package_data_options,
+ unsigned opts = parse_opts(argc, argv, abrt_action_save_package_data_options,
abrt_action_save_package_data_usage);
- if (!d_opt)
- parse_usage_and_die(abrt_action_save_package_data_usage,
- abrt_action_save_package_data_options);
-
- dump_dir_name = d_opt;
-
putenv(xasprintf("ABRT_VERBOSE=%u", g_verbose));
msg_prefix = xasprintf("abrt-action-save-package-data[%u]", getpid());
- if (s_opt)
+
+ if (opts & OPT_s)
{
openlog(msg_prefix, 0, LOG_DAEMON);
logmode = LOGMODE_SYSLOG;