*
* This module handles self-service subscription/unsubscription to mail lists.
*
- * Copyright (C) 2002-2005 by Art Cancro and others.
- * This code is released under the terms of the GNU General Public License.
+ * Copyright (c) 2002-2009 by the citadel.org team
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * 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.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
*/
#include <sys/wait.h>
#include <string.h>
#include <limits.h>
+#include <libcitadel.h>
#include "citadel.h"
#include "server.h"
#include "citserver.h"
#include "policy.h"
#include "database.h"
#include "msgbase.h"
-#include "tools.h"
#include "internet_addressing.h"
-#include "serv_network.h"
#include "clientsocket.h"
#include "file_ops.h"
);
/* Convert it to base64 so it looks cool */
- CtdlEncodeBase64(buf, sourcebuf, strlen(sourcebuf));
+ CtdlEncodeBase64(buf, sourcebuf, strlen(sourcebuf), 0);
}
/* Generate and send the confirmation request */
- urlesc(urlroom, qrbuf.QRname);
+ urlesc(urlroom, ROOMNAMELEN, qrbuf.QRname);
snprintf(confirmation_request, sizeof confirmation_request,
/* Generate and send the confirmation request */
- urlesc(urlroom, qrbuf.QRname);
+ urlesc(urlroom, ROOMNAMELEN, qrbuf.QRname);
snprintf(confirmation_request, sizeof confirmation_request,
* make another pass at the file, stripping out lines referring to
* that address.
*/
- if (strlen(address_to_unsubscribe) > 0) {
+ if (!IsEmptyStr(address_to_unsubscribe)) {
holdbuf = malloc(SIZ);
begin_critical_section(S_NETCONFIGS);
ncfp = fopen(filename, "r+");
*/
if (success) {
cprintf("%d %d operation(s) confirmed.\n", CIT_OK, success);
- lprintf(CTDL_NOTICE, "Mailing list: %s %ssubscribed to %s with token %s\n", email, (strlen(address_to_unsubscribe) > 0) ? "un" : "", room, token);
+ CtdlLogPrintf(CTDL_NOTICE,
+ "Mailing list: %s %ssubscribed to %s with token %s\n",
+ email,
+ (!IsEmptyStr(address_to_unsubscribe)) ? "un" : "",
+ room,
+ token);
}
else {
cprintf("%d Invalid token.\n", ERROR + ILLEGAL_VALUE);
*/
CTDL_MODULE_INIT(listsub)
{
- CtdlRegisterProtoHook(cmd_subs, "SUBS", "List subscribe/unsubscribe");
-
+ if (!threading)
+ {
+ CtdlRegisterProtoHook(cmd_subs, "SUBS", "List subscribe/unsubscribe");
+ }
+
/* return our Subversion id for the Log */
return "$Id$";
}