]> code.citadel.org Git - citadel.git/blobdiff - citadel/citadel_dirs.c
* purge ctdlsvc.c
[citadel.git] / citadel / citadel_dirs.c
index 4b04f6a79e519c8adb673aa5118e97b16f81b781..321f00f2b5e3ade4f5ff80e03e3fab338b7dc601 100644 (file)
@@ -44,6 +44,8 @@ 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];
 
 /* some of our files, that are needed in several places */
 char file_citadel_control[PATH_MAX]="";
@@ -51,6 +53,10 @@ char file_citadel_rc[PATH_MAX]="";
 char file_citadel_config[PATH_MAX]="";
 char file_lmtp_socket[PATH_MAX]="";
 char file_lmtp_unfiltered_socket[PATH_MAX]="";
+char file_arcq[PATH_MAX]="";
+char file_citadel_socket[PATH_MAX]="";
+char file_mail_aliases[PATH_MAX]="";
+char file_pid_file[PATH_MAX]="";
 
 int home_specified = 0;
 
@@ -77,11 +83,20 @@ int home_specified = 0;
 
 void calc_dirs_n_files(int relh, int home, const char *relhome,const char  *ctdldir)
 {
-       const char* basedir;
-       char dirbuffer[PATH_MAX]="";
-
-
-
+       const char* basedir = "";
+       char dirbuffer[PATH_MAX] = "";
+
+       /*
+        * Ok, we keep our binaries either in the citadel base dir,
+        * or in /usr/sbin / /usr/bin
+        */
+#ifdef HAVE_ETC_DIR
+       snprintf(ctdl_sbin_dir, sizeof ctdl_sbin_dir, "/usr/sbin/");
+       snprintf(ctdl_bin_dir, sizeof ctdl_bin_dir, "/usr/bin/");
+#else
+       snprintf(ctdl_sbin_dir, sizeof ctdl_sbin_dir, basedir);
+       snprintf(ctdl_bin_dir, sizeof ctdl_bin_dir, basedir);
+#endif
 
 #ifndef HAVE_ETC_DIR
        basedir=ctdldir;
@@ -150,6 +165,34 @@ void calc_dirs_n_files(int relh, int home, const char *relhome,const char  *ctdl
                         "%slmtp-unfiltered.socket",
                         ctdl_run_dir);
 
+       snprintf(file_citadel_socket, 
+                        sizeof file_citadel_socket,
+                               "%scitadel.socket",
+                        ctdl_run_dir);
+       snprintf(file_pid_file, 
+                        sizeof file_pid_file,
+                               "%scitadel.pid",
+                        ctdl_run_dir);
+
+       snprintf(file_arcq, 
+                        sizeof file_arcq,
+                        "%srefcount_adjustments.dat",
+                        ctdl_run_dir);
+
+       /* 
+        * DIRTY HACK FOLLOWS! due to configs in the network dir in the 
+        * legacy installations, we need to calculate ifdeffed here.
+        */
+               snprintf(file_mail_aliases, 
+                                sizeof file_mail_aliases,
+                                "%smail.aliases",
+#ifdef HAVE_ETC_DIR
+                                ctdl_etc_dir
+#else
+                                ctdl_spool_dir
+#endif
+                                );
+
 }