X-Git-Url: https://code.citadel.org/?a=blobdiff_plain;f=citadel%2Fmodules%2Fexpire%2Fexpire_policy.c;h=f3b27df7f9d82786299f1ad6490eadbb1835b4eb;hb=a7ba5521416e2e2d8f84065e2f5411450c612607;hp=5bf69953c44a527d27391f023a0e926d366b8163;hpb=db11feb1daa00ba67fff11deab49278607e07ae5;p=citadel.git diff --git a/citadel/modules/expire/expire_policy.c b/citadel/modules/expire/expire_policy.c index 5bf69953c..f3b27df7f 100644 --- a/citadel/modules/expire/expire_policy.c +++ b/citadel/modules/expire/expire_policy.c @@ -1,7 +1,14 @@ /* - * $Id$ + * Functions which manage expire policy for rooms + * Copyright (c) 1987-2015 by the citadel.org team * - * Functions which manage policy for rooms (such as message expiry) + * 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. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. */ #include "sysdep.h" @@ -31,11 +38,11 @@ #include "room_ops.h" #include "sysdep_decls.h" #include "support.h" -#include "user_ops.h" #include "msgbase.h" #include "citserver.h" - +#include "config.h" #include "ctdl_module.h" +#include "user_ops.h" /* * Retrieve the applicable expire policy for a specific room @@ -65,8 +72,7 @@ void GetExpirePolicy(struct ExpirePolicy *epbuf, struct ctdlroom *qrbuf) { */ if (qrbuf->QRflags & QR_MAILBOX) { if (config.c_mbxep.expire_mode != 0) { - memcpy(epbuf, &config.c_mbxep, - sizeof(struct ExpirePolicy)); + memcpy(epbuf, &config.c_mbxep, sizeof(struct ExpirePolicy)); return; } } @@ -85,7 +91,8 @@ void cmd_gpex(char *argbuf) { char which[128]; extract_token(which, argbuf, 0, '|', sizeof which); - if (!strcasecmp(which, strof(room))) { + if (!strcasecmp(which, strof(roompolicy))|| + !strcasecmp(which, "room")) { /* Deprecated version */ memcpy(&exp, &CC->room.QRep, sizeof(struct ExpirePolicy)); } else if (!strcasecmp(which, strof(floorpolicy))|| @@ -128,27 +135,33 @@ void cmd_spex(char *argbuf) { return; } - if (!strcasecmp(which, "room")) { + if ( (!strcasecmp(which, strof(roompolicy))) + || (!strcasecmp(which, "room")) + ) { if (!is_room_aide()) { - cprintf("%d Higher access required.\n", - ERROR + HIGHER_ACCESS_REQUIRED); + cprintf("%d Higher access required.\n", ERROR + HIGHER_ACCESS_REQUIRED); return; } CtdlGetRoomLock(&CC->room, CC->room.QRname); memcpy(&CC->room.QRep, &exp, sizeof(struct ExpirePolicy)); CtdlPutRoomLock(&CC->room); - cprintf("%d Room expire policy has been updated.\n", CIT_OK); + cprintf("%d Room expire policy for '%s' has been updated.\n", CIT_OK, CC->room.QRname); + syslog(LOG_DEBUG, "Room: %s , Policy: %d , Value: %d", + CC->room.QRname, + exp.expire_mode, + exp.expire_value + ); return; } if (CC->user.axlevel < AxAideU) { - cprintf("%d Higher access required.\n", - ERROR + HIGHER_ACCESS_REQUIRED); + cprintf("%d Higher access required.\n", ERROR + HIGHER_ACCESS_REQUIRED); return; } - if (!strcasecmp(which, strof(floorpolicy))|| - !strcasecmp(which, "floor")) { /* deprecated version */ + if ( (!strcasecmp(which, strof(floorpolicy))) + || (!strcasecmp(which, "floor")) + ) { lgetfloor(&flbuf, CC->room.QRfloor); memcpy(&flbuf.f_ep, &exp, sizeof(struct ExpirePolicy)); lputfloor(&flbuf, CC->room.QRfloor); @@ -156,17 +169,18 @@ void cmd_spex(char *argbuf) { return; } - else if (!strcasecmp(which, strof(mailboxespolicy))|| - !strcasecmp(which, "mailboxes")) { + else if ( (!strcasecmp(which, strof(mailboxespolicy))) + || (!strcasecmp(which, "mailboxes")) + ) { memcpy(&config.c_mbxep, &exp, sizeof(struct ExpirePolicy)); put_config(); - cprintf("%d Default expire policy for mailboxes set.\n", - CIT_OK); + cprintf("%d Default expire policy for mailboxes set.\n", CIT_OK); return; } - else if (!strcasecmp(which, strof(sitepolicy))|| - !strcasecmp(which, "site")) {/* deprecated version */ + else if ( (!strcasecmp(which, strof(sitepolicy))) + || (!strcasecmp(which, "site")) + ) { if (exp.expire_mode == EXPIRE_NEXTLEVEL) { cprintf("%d Invalid policy (no higher level)\n", ERROR + ILLEGAL_VALUE); @@ -178,10 +192,5 @@ void cmd_spex(char *argbuf) { return; } - else { - cprintf("%d Invalid keyword \"%s\"\n", ERROR + ILLEGAL_VALUE, which); - return; - } - + cprintf("%d Invalid keyword '%s'\n", ERROR + ILLEGAL_VALUE, which); } -