summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorrofl0r <rofl0r@users.noreply.github.com>2020-01-15 14:45:23 +0000
committerrofl0r <rofl0r@users.noreply.github.com>2020-01-15 14:45:23 +0000
commit40afaeb63754c8495b92696a3f663a9e42b7b7ac (patch)
tree5098ddd618429d0a4a97834effc50076f6c38bfd /src
parent25205fd1f328df935aa416c9478d6a0bcf1a7d96 (diff)
move commandline parsing to main()
Diffstat (limited to 'src')
-rw-r--r--src/main.c82
1 files changed, 35 insertions, 47 deletions
diff --git a/src/main.c b/src/main.c
index 7f6d947..aac9a5b 100644
--- a/src/main.c
+++ b/src/main.c
@@ -163,52 +163,6 @@ get_id (char *str)
}
/**
- * process_cmdline:
- * @argc: argc as passed to main()
- * @argv: argv as passed to main()
- *
- * This function parses command line arguments.
- **/
-static void
-process_cmdline (int argc, char **argv, struct config_s *conf)
-{
- int opt;
-
- while ((opt = getopt (argc, argv, "c:vdh")) != EOF) {
- switch (opt) {
- case 'v':
- display_version ();
- exit (EX_OK);
-
- case 'd':
- conf->godaemon = FALSE;
- break;
-
- case 'c':
- if (conf->config_file != NULL) {
- safefree (conf->config_file);
- }
- conf->config_file = safestrdup (optarg);
- if (!conf->config_file) {
- fprintf (stderr,
- "%s: Could not allocate memory.\n",
- argv[0]);
- exit (EX_SOFTWARE);
- }
- break;
-
- case 'h':
- display_usage ();
- exit (EX_OK);
-
- default:
- display_usage ();
- exit (EX_USAGE);
- }
- }
-}
-
-/**
* change_user:
* @program: The name of the program. Pass argv[0] here.
*
@@ -309,6 +263,8 @@ done:
int
main (int argc, char **argv)
{
+ int opt;
+
srand(time(NULL)); /* for hashmap seeds */
/* Only allow u+rw bits. This may be required for some versions
@@ -323,7 +279,39 @@ main (int argc, char **argv)
}
initialize_config_defaults (&config_defaults);
- process_cmdline (argc, argv, &config_defaults);
+
+ while ((opt = getopt (argc, argv, "c:vdh")) != EOF) {
+ switch (opt) {
+ case 'v':
+ display_version ();
+ exit (EX_OK);
+
+ case 'd':
+ (&config_defaults)->godaemon = FALSE;
+ break;
+
+ case 'c':
+ if ((&config_defaults)->config_file != NULL) {
+ safefree ((&config_defaults)->config_file);
+ }
+ (&config_defaults)->config_file = safestrdup (optarg);
+ if (!(&config_defaults)->config_file) {
+ fprintf (stderr,
+ "%s: Could not allocate memory.\n",
+ argv[0]);
+ exit (EX_SOFTWARE);
+ }
+ break;
+
+ case 'h':
+ display_usage ();
+ exit (EX_OK);
+
+ default:
+ display_usage ();
+ exit (EX_USAGE);
+ }
+ }
if (reload_config_file (config_defaults.config_file,
&config,