aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/actionhelper.c40
-rw-r--r--src/actionhelper.h6
-rw-r--r--src/confparser.c39
-rw-r--r--src/confparser.h2
4 files changed, 47 insertions, 40 deletions
diff --git a/src/actionhelper.c b/src/actionhelper.c
index 75cc03f..14e8782 100644
--- a/src/actionhelper.c
+++ b/src/actionhelper.c
@@ -11,6 +11,7 @@
#include <libgen.h>
#include "actionhelper.h"
+#include "confparser.h"
#include "ckerrlog.h"
ERRLOG(action);
@@ -155,6 +156,45 @@ void edit_print_suggested_configs(DB *db, const char *pName) {
list_free(paths);
}
+int init_create_config_file(UserOpt *opt) {
+ char absVCdir[STR_L];
+ if (!util_file_exists(list_get_at(opt->args, 0), absVCdir)) {
+ ERR("Version control directory: %s does not exist.", list_get_at(opt->args, 0));
+ return 1;
+ }
+
+ char absSRdir[STR_L];
+ if (!util_file_exists(list_get_at(opt->args, 1), absSRdir)) {
+ ERR("Secret directory: %s does not exist.", list_get_at(opt->args, 1));
+ return 1;
+ }
+
+ if (!util_file_exists(opt->confDir, NULL)) {
+ util_mkdir(opt->confDir);
+ }
+
+ char confName[STR_L];
+ make_config_name(confName, opt->confDir);
+ FILE *f;
+ if ((f = fopen(confName, "w")) == NULL) {
+ return 1;
+ }
+
+ char tmp[200];
+ strcpy(tmp, "version_control_dir = ");
+ strcat(tmp, absVCdir);
+ strcat(tmp, "\n");
+ fputs(tmp, f);
+
+ strcpy(tmp, "secret_dir = ");
+ strcat(tmp, absSRdir);
+ strcat(tmp, "\n");
+ fputs(tmp, f);
+
+ fclose(f);
+ return 0;
+}
+
ListOpt list_make_options(cklist *args) {
list_rewind(args);
ListOpt listOpt = {
diff --git a/src/actionhelper.h b/src/actionhelper.h
index d211df8..5bcb7ac 100644
--- a/src/actionhelper.h
+++ b/src/actionhelper.h
@@ -20,6 +20,12 @@
#include "cklist.h"
#include "dblayer.h"
+/********/
+/* INIT */
+/********/
+
+extern int init_create_config_file(UserOpt *opt);
+
/*******/
/* ADD */
/*******/
diff --git a/src/confparser.c b/src/confparser.c
index 2a11467..2463d79 100644
--- a/src/confparser.c
+++ b/src/confparser.c
@@ -142,42 +142,3 @@ void free_conf(Conf *conf) {
CONFIG_VARIABLES_TABLE
#undef X
}
-
-int init_create_config_file(UserOpt *opt) {
- char absVCdir[STR_L];
- if (!util_file_exists(list_get_at(opt->args, 0), absVCdir)) {
- ERR("Version control directory: %s\ndoes not exist.\n", list_get_at(opt->args, 0));
- return 1;
- }
-
- char absSRdir[STR_L];
- if (!util_file_exists(list_get_at(opt->args, 1), absSRdir)) {
- ERR("Secret directory: %s\ndoes not exist.\n", list_get_at(opt->args, 1));
- return 1;
- }
-
- if (!util_file_exists(opt->confDir, NULL)) {
- util_mkdir(opt->confDir);
- }
-
- char confName[STR_L];
- make_config_name(confName, opt->confDir);
- FILE *f;
- if ((f = fopen(confName, "w")) == NULL) {
- return 1;
- }
-
- char tmp[200];
- strcpy(tmp, "version_control_dir = ");
- strcat(tmp, absVCdir);
- strcat(tmp, "\n");
- fputs(tmp, f);
-
- strcpy(tmp, "secret_dir = ");
- strcat(tmp, absSRdir);
- strcat(tmp, "\n");
- fputs(tmp, f);
-
- fclose(f);
- return 0;
-}
diff --git a/src/confparser.h b/src/confparser.h
index b121a59..75201e4 100644
--- a/src/confparser.h
+++ b/src/confparser.h
@@ -52,6 +52,6 @@ struct ConfigValues {
/* Parse the configuration file and fill the conf struct */
extern int config_file_parse(Conf *conf, UserOpt *opt);
-extern int init_create_config_file(UserOpt *opt);
+extern void make_config_name(char * ret, const char *confPath);
extern void free_conf(Conf *conf);
#endif // CONFPARSER_H