X-Git-Url: https://code.citadel.org/?a=blobdiff_plain;f=citadel%2Futillib%2Fcitadel_dirs.c;h=dfaaee8dbd51f708f073c0b8ce32982c7f72981b;hb=373b01806f2c2949b86b0ef83b28e15d38af5ee6;hp=dca1e3d61985614f1071d60275514ecd3a278c27;hpb=7b9d3ecad044318bdd54b8b80acbf85fc89d25ab;p=citadel.git diff --git a/citadel/utillib/citadel_dirs.c b/citadel/utillib/citadel_dirs.c index dca1e3d61..dfaaee8db 100644 --- a/citadel/utillib/citadel_dirs.c +++ b/citadel/utillib/citadel_dirs.c @@ -1,7 +1,7 @@ /* * citadel_dirs.c : calculate pathnames for various files used in the Citadel system * - * Copyright (c) 1987-2018 by the citadel.org team + * Copyright (c) 1987-2021 by the citadel.org team * * This program is open source software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 3. @@ -26,7 +26,6 @@ /* our directories... */ char ctdl_home_directory[PATH_MAX] = ""; -char ctdl_bio_dir[PATH_MAX]="bio"; char ctdl_data_dir[PATH_MAX]="data"; char ctdl_file_dir[PATH_MAX]="files"; char ctdl_shared_dir[PATH_MAX]=""; @@ -36,12 +35,10 @@ char ctdl_key_dir[PATH_MAX]=SSL_DIR; 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]=""; char ctdl_autoetc_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_netdigest_dir[PATH_MAX]="network/digest"; char ctdl_nettmp_dir[PATH_MAX]="network/spooltmp"; char ctdl_netcfg_dir[PATH_MAX]="netconfigs"; @@ -50,9 +47,7 @@ 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]=""; char file_citadel_config[PATH_MAX]=""; -char file_citadel_urlshorteners[PATH_MAX]=""; char file_lmtp_socket[PATH_MAX]=""; char file_lmtp_unfiltered_socket[PATH_MAX]=""; char file_arcq[PATH_MAX]=""; @@ -65,7 +60,6 @@ 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]=""; char file_guesstimezone[PATH_MAX]=""; @@ -119,9 +113,7 @@ void calc_dirs_n_files(int relh, int home, const char *relhome, char *ctdldir, basedir=ETC_DIR; #endif COMPUTE_DIRECTORY(ctdl_netcfg_dir); - COMPUTE_DIRECTORY(ctdl_etc_dir); StripSlashes(ctdl_netcfg_dir, 1); - StripSlashes(ctdl_etc_dir, 1); #ifndef HAVE_UTILBIN_DIR basedir=ctdldir; @@ -152,7 +144,6 @@ void calc_dirs_n_files(int relh, int home, const char *relhome, char *ctdldir, #else basedir=DATA_DIR; #endif - COMPUTE_DIRECTORY(ctdl_bio_dir); COMPUTE_DIRECTORY(ctdl_data_dir); COMPUTE_DIRECTORY(ctdl_file_dir); COMPUTE_DIRECTORY(ctdl_image_dir); @@ -160,7 +151,6 @@ void calc_dirs_n_files(int relh, int home, const char *relhome, char *ctdldir, COMPUTE_DIRECTORY(ctdl_usrpic_dir); COMPUTE_DIRECTORY(ctdl_bbsbase_dir); - StripSlashes(ctdl_bio_dir, 1); StripSlashes(ctdl_data_dir, 1); StripSlashes(ctdl_file_dir, 1); StripSlashes(ctdl_image_dir, 1); @@ -174,12 +164,10 @@ void calc_dirs_n_files(int relh, int home, const char *relhome, char *ctdldir, basedir=SPOOL_DIR; #endif COMPUTE_DIRECTORY(ctdl_spool_dir); - COMPUTE_DIRECTORY(ctdl_netout_dir); COMPUTE_DIRECTORY(ctdl_netdigest_dir); COMPUTE_DIRECTORY(ctdl_nettmp_dir); StripSlashes(ctdl_spool_dir, 1); - StripSlashes(ctdl_netout_dir, 1); StripSlashes(ctdl_netdigest_dir, 1); StripSlashes(ctdl_nettmp_dir, 1); @@ -190,22 +178,12 @@ void calc_dirs_n_files(int relh, int home, const char *relhome, char *ctdldir, "%srefcount_adjustments.dat", ctdl_autoetc_dir); StripSlashes(file_arcq, 0); - snprintf(file_citadel_control, - sizeof file_citadel_control, - "%scitadel.control", - ctdl_autoetc_dir - ); - StripSlashes(file_citadel_control, 0); + snprintf(file_citadel_config, sizeof file_citadel_config, "%scitadel.config", ctdl_autoetc_dir); StripSlashes(file_citadel_config, 0); - snprintf(file_citadel_urlshorteners, - sizeof file_citadel_urlshorteners, - "%scitadel_urlshorteners.rc", - ctdl_etc_dir); - StripSlashes(file_citadel_urlshorteners, 0); snprintf(file_lmtp_socket, sizeof file_lmtp_socket, "%slmtp.socket", @@ -256,11 +234,6 @@ void calc_dirs_n_files(int relh, int home, const char *relhome, char *ctdldir, "%schkpwd", ctdl_utilbin_dir); StripSlashes(file_chkpwd, 0); - snprintf(file_base64, - sizeof file_base64, - "%sbase64", - ctdl_utilbin_dir); - StripSlashes(file_base64, 0); snprintf(file_guesstimezone, sizeof file_guesstimezone, "%sguesstimezone.sh", @@ -273,15 +246,10 @@ void calc_dirs_n_files(int relh, int home, const char *relhome, char *ctdldir, snprintf(file_mail_aliases, sizeof file_mail_aliases, "%smail.aliases", -#ifdef HAVE_ETC_DIR - ctdl_etc_dir -#else ctdl_spool_dir -#endif ); StripSlashes(file_mail_aliases, 0); - DBG_PRINT(ctdl_bio_dir); DBG_PRINT(ctdl_data_dir); DBG_PRINT(ctdl_file_dir); DBG_PRINT(ctdl_image_dir); @@ -289,10 +257,8 @@ void calc_dirs_n_files(int relh, int home, const char *relhome, char *ctdldir, DBG_PRINT(ctdl_key_dir); DBG_PRINT(ctdl_message_dir); DBG_PRINT(ctdl_usrpic_dir); - DBG_PRINT(ctdl_etc_dir); DBG_PRINT(ctdl_run_dir); DBG_PRINT(ctdl_spool_dir); - DBG_PRINT(ctdl_netout_dir); DBG_PRINT(ctdl_netdigest_dir); DBG_PRINT(ctdl_nettmp_dir); DBG_PRINT(ctdl_netcfg_dir); @@ -300,7 +266,6 @@ void calc_dirs_n_files(int relh, int home, const char *relhome, char *ctdldir, DBG_PRINT(ctdl_sbin_dir); DBG_PRINT(ctdl_bin_dir); DBG_PRINT(ctdl_utilbin_dir); - DBG_PRINT(file_citadel_control); DBG_PRINT(file_citadel_config); DBG_PRINT(file_lmtp_socket); DBG_PRINT(file_lmtp_unfiltered_socket); @@ -313,7 +278,6 @@ void calc_dirs_n_files(int relh, int home, const char *relhome, char *ctdldir, DBG_PRINT(file_crpt_file_csr); DBG_PRINT(file_crpt_file_cer); DBG_PRINT(file_chkpwd); - DBG_PRINT(file_base64); DBG_PRINT(file_guesstimezone); } @@ -321,33 +285,27 @@ void calc_dirs_n_files(int relh, int home, const char *relhome, char *ctdldir, /* * Generate an associated file name for a room */ -size_t assoc_file_name(char *buf, size_t n, - struct ctdlroom *qrbuf, const char *prefix) -{ +size_t assoc_file_name(char *buf, size_t n, struct ctdlroom *qrbuf, const char *prefix) { return snprintf(buf, n, "%s%ld", prefix, qrbuf->QRnumber); } -void remove_digest_file(struct ctdlroom *room) -{ + +void remove_digest_file(struct ctdlroom *room) { char buf[PATH_MAX]; - snprintf(buf, PATH_MAX, "%s/%ld.eml", - ctdl_netdigest_dir, - room->QRnumber); + snprintf(buf, PATH_MAX, "%s/%ld.eml", ctdl_netdigest_dir, room->QRnumber); StripSlashes(buf, 0); unlink(buf); } -FILE *create_digest_file(struct ctdlroom *room, int forceCreate) -{ + +FILE *create_digest_file(struct ctdlroom *room, int forceCreate) { struct stat stbuf; char fn[PATH_MAX]; int exists; FILE *fp; - snprintf(fn, PATH_MAX, "%s/%ld.eml", - ctdl_netdigest_dir, - room->QRnumber); + snprintf(fn, PATH_MAX, "%s/%ld.eml", ctdl_netdigest_dir, room->QRnumber); StripSlashes(fn, 0); exists = stat(fn, &stbuf); @@ -356,21 +314,17 @@ FILE *create_digest_file(struct ctdlroom *room, int forceCreate) fp = fopen(fn, "w+"); if (fp == NULL) { - syslog(LOG_EMERG, - "failed to create digest file %s: %s", - fn, - strerror(errno)); + syslog(LOG_ERR, "failed to create digest file %s: %s", fn, strerror(errno)); } return fp; } -int create_dir(char *which, long ACCESS, long UID, long GID) -{ +int create_dir(char *which, long ACCESS, long UID, long GID) { int rv; rv = mkdir(which, ACCESS); if ((rv == -1) && (errno != EEXIST)) { - syslog(LOG_EMERG, + syslog(LOG_ERR, "failed to create directory %s: %s", which, strerror(errno)); @@ -378,7 +332,7 @@ int create_dir(char *which, long ACCESS, long UID, long GID) } rv = chmod(which, ACCESS); if (rv == -1) { - syslog(LOG_EMERG, + syslog(LOG_ERR, "failed to set permissions for directory %s: %s", which, strerror(errno)); @@ -386,7 +340,7 @@ int create_dir(char *which, long ACCESS, long UID, long GID) } rv = chown(which, UID, GID); if (rv == -1) { - syslog(LOG_EMERG, + syslog(LOG_ERR, "failed to set owner for directory %s: %s", which, strerror(errno)); @@ -395,13 +349,12 @@ int create_dir(char *which, long ACCESS, long UID, long GID) return rv; } -int create_run_directories(long UID, long GID) -{ + +int create_run_directories(long UID, long GID) { int rv = 0; rv += create_dir(ctdl_message_dir , S_IRUSR|S_IWUSR|S_IXUSR, UID, -1); rv += create_dir(ctdl_file_dir , S_IRUSR|S_IWUSR|S_IXUSR, UID, -1); rv += create_dir(ctdl_spool_dir , S_IRUSR|S_IWUSR|S_IXUSR, UID, -1); - rv += create_dir(ctdl_netout_dir , S_IRUSR|S_IWUSR|S_IXUSR, UID, -1); rv += create_dir(ctdl_netdigest_dir , S_IRUSR|S_IWUSR|S_IXUSR, UID, -1); rv += create_dir(ctdl_nettmp_dir , S_IRUSR|S_IWUSR|S_IXUSR, UID, -1); rv += create_dir(ctdl_key_dir , S_IRUSR|S_IWUSR|S_IXUSR, UID, -1);