calculate the directories in a central manner.
[citadel.git] / citadel / serv_smtp.c
index 8cc2b9bf5c64ef979908dbac527936d58257c050..3b5ddb9a971564d63656d5cbec01fb8ef89c0f9b 100644 (file)
@@ -1723,6 +1723,8 @@ void smtp_cleanup_function(void) {
 
 char *serv_smtp_init(void)
 {
+       char filename[256];
+
        CtdlRegisterServiceHook(config.c_smtp_port,     /* SMTP MTA */
                                NULL,
                                smtp_greeting,
@@ -1743,24 +1745,22 @@ char *serv_smtp_init(void)
                                smtp_command_loop,
                                NULL);
 
+       snprintf(filename, 
+                        sizeof filename,
+                        "%s/lmtp.sock",
+                        ctdl_run_dir);
        CtdlRegisterServiceHook(0,                      /* local LMTP */
-#ifndef HAVE_RUN_DIR
-                                                       "."
-#else
-                                                       RUN_DIR
-#endif
-                                                       "/lmtp.socket",
+                                                       filename,
                                                        lmtp_greeting,
                                                        smtp_command_loop,
                                                        NULL);
 
+       snprintf(filename, 
+                        sizeof filename,
+                        "%s/lmtp-unfiltered.sock",
+                        ctdl_run_dir);
        CtdlRegisterServiceHook(0,                      /* local LMTP */
-#ifndef HAVE_RUN_DIR
-                                                       "."
-#else
-                                                       RUN_DIR
-#endif
-                                                       "/lmtp-unfiltered.socket",
+                                                       filename,
                                                        lmtp_unfiltered_greeting,
                                                        smtp_command_loop,
                                                        NULL);