]> code.citadel.org Git - citadel.git/blobdiff - citadel/citadel_dirs.c
Add a forward slash to the generated paths for citadel.key,
[citadel.git] / citadel / citadel_dirs.c
index 14be715592edf0a8b7815a9f1422c5658fc26165..e4255823c652189c5a591fa544837dffdc3cd906 100644 (file)
@@ -39,13 +39,15 @@ char ctdl_message_dir[PATH_MAX]="messages";
 char ctdl_usrpic_dir[PATH_MAX]="userpics";
 char ctdl_bbsbase_dir[PATH_MAX]="";
 char ctdl_etc_dir[PATH_MAX]="";
+/* attention! this may be non volatile on some oses */
 char ctdl_run_dir[PATH_MAX]="";
 char ctdl_spool_dir[PATH_MAX]="network";
 char ctdl_netout_dir[PATH_MAX]="network/spoolout";
 char ctdl_netin_dir[PATH_MAX]="network/spoolin";
 char ctdl_netcfg_dir[PATH_MAX]="netconfigs";
-char ctdl_sbin_dir[PATH_MAX];
-char ctdl_bin_dir[PATH_MAX];
+char ctdl_utilbin_dir[PATH_MAX]="";
+char ctdl_sbin_dir[PATH_MAX]="";
+char ctdl_bin_dir[PATH_MAX]="";
 
 /* some of our files, that are needed in several places */
 char file_citadel_control[PATH_MAX]="";
@@ -61,6 +63,7 @@ char file_crpt_file_key[PATH_MAX]="";
 char file_crpt_file_csr[PATH_MAX]="";
 char file_crpt_file_cer[PATH_MAX]="";
 char file_chkpwd[PATH_MAX]="";
+char file_base64[PATH_MAX]="";
 
 int home_specified = 0;
 
@@ -109,8 +112,13 @@ void calc_dirs_n_files(int relh, int home, const char *relhome,const char  *ctdl
 #endif
        COMPUTE_DIRECTORY(ctdl_netcfg_dir);
        COMPUTE_DIRECTORY(ctdl_etc_dir);
-       COMPUTE_DIRECTORY(ctdl_hlp_dir);
-       COMPUTE_DIRECTORY(ctdl_message_dir);
+
+#ifndef HAVE_UTILBIN_DIR
+       basedir=ctdldir;
+#else
+       basedir=UTILBIN_DIR;
+#endif
+       COMPUTE_DIRECTORY(ctdl_utilbin_dir);
 
 #ifndef HAVE_RUN_DIR
        basedir=ctdldir;
@@ -119,6 +127,14 @@ void calc_dirs_n_files(int relh, int home, const char *relhome,const char  *ctdl
 #endif
        COMPUTE_DIRECTORY(ctdl_run_dir);
 
+#ifndef HAVE_STATICDATA_DIR
+       basedir=ctdldir;
+#else
+       basedir=STATICDATA_DIR;
+#endif
+       COMPUTE_DIRECTORY(ctdl_hlp_dir);
+       COMPUTE_DIRECTORY(ctdl_message_dir);
+
 #ifndef HAVE_DATA_DIR
        basedir=ctdldir;
 #else
@@ -143,6 +159,11 @@ void calc_dirs_n_files(int relh, int home, const char *relhome,const char  *ctdl
 
        /* ok, now we know the dirs, calc some commonly used files */
 
+       snprintf(file_arcq, 
+                        sizeof file_arcq,
+                        "%srefcount_adjustments.dat",
+                        ctdl_etc_dir);
+
        snprintf(file_citadel_control, 
                         sizeof file_citadel_control,
                         "%scitadel.control",
@@ -178,28 +199,30 @@ void calc_dirs_n_files(int relh, int home, const char *relhome,const char  *ctdl
                                "%scitadel.pid",
                         ctdl_run_dir);
 
-       snprintf(file_arcq, 
-                        sizeof file_arcq,
-                        "%srefcount_adjustments.dat",
-                        ctdl_run_dir);
-
        snprintf(file_crpt_file_key,
                 sizeof file_crpt_file_key, 
-                "%scitadel.key",
+                "%s/citadel.key",
                 ctdl_key_dir);
        snprintf(file_crpt_file_csr,
                 sizeof file_crpt_file_csr, 
-                "%scitadel.csr",
+                "%s/citadel.csr",
                 ctdl_key_dir);
        snprintf(file_crpt_file_cer,
                 sizeof file_crpt_file_cer, 
-                "%scitadel.cer",
+                "%s/citadel.cer",
                 ctdl_key_dir);
 
        snprintf(file_chkpwd,
                 sizeof file_chkpwd, 
                 "%schkpwd",
                 ctdl_sbin_dir);
+
+       snprintf(file_base64,
+                sizeof file_chkpwd,
+                "%sbase64",
+                ctdl_utilbin_dir);
+
+
        /* 
         * DIRTY HACK FOLLOWS! due to configs in the network dir in the 
         * legacy installations, we need to calculate ifdeffed here.