* This module handles shared rooms, inter-Citadel mail, and outbound
* mailing list processing.
*
- * Copyright (c) 2000-2015 by the citadel.org team
+ * Copyright (c) 2000-2016 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.
+ * 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.
+ * 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.
*
* ** NOTE ** A word on the S_NETCONFIGS semaphore:
* This is a fairly high-level type of critical section. It ensures that no
int i;
size_t recps_len = 0;
RoomNetCfgLine *nptr;
- struct CitContext *CCC = CC;
*recps = NULL;
/*
*recps = NewStrBufPlain(NULL, recps_len);
if (*recps == NULL) {
- QN_syslog(LOG_EMERG,
- "Cannot allocate %ld bytes for recps...\n",
- (long)recps_len);
+ syslog(LOG_ERR, "netmail: cannot allocate %ld bytes for recps", (long)recps_len);
abort();
}
sc->working_ignetcfg,
sc->the_netmap) != 0)
{
- QN_syslog(LOG_ERR,
- "Invalid node <%s>\n",
- ChrPtr(Recipient));
-
+ syslog(LOG_ERR, "netmail: invalid node <%s>", ChrPtr(Recipient));
send = 0;
}
/* Check for split horizon */
- QN_syslog(LOG_DEBUG, "Path is %s\n", msg->cm_fields[eMessagePath]);
+ syslog(LOG_DEBUG, "netmail: path is %s", msg->cm_fields[eMessagePath]);
bang = num_tokens(msg->cm_fields[eMessagePath], '!');
if (bang > 1) {
for (i=0; i<(bang-1); ++i) {
i, '!',
sizeof buf);
- QN_syslog(LOG_DEBUG, "Compare <%s> to <%s>\n",
- buf, ChrPtr(Recipient)) ;
+ syslog(LOG_DEBUG, "netmail: compare <%s> to <%s>", buf, ChrPtr(Recipient)) ;
if (!strcasecmp(buf, ChrPtr(Recipient))) {
send = 0;
break;
}
}
- QN_syslog(LOG_INFO,
- " %sSending to %s\n",
- (send)?"":"Not ",
- ChrPtr(Recipient));
+ syslog(LOG_INFO, "netmail: %ssending to %s", (send)?"":"not ", ChrPtr(Recipient));
}
/* Send the message */
/* write it to a spool file */
snprintf(filename,
- sizeof(filename),
- "%s/%s@%lx%x",
- ctdl_netout_dir,
- ChrPtr(Recipient),
- time(NULL),
- rand()
- );
+ sizeof(filename),
+ "%s/%s@%lx%x-mail",
+ ctdl_netout_dir,
+ ChrPtr(Recipient),
+ time(NULL),
+ rand()
+ );
- QN_syslog(LOG_DEBUG,
- "Appending to %s\n",
- filename);
+ syslog(LOG_DEBUG, "netmail: appending to %s", filename);
fp = fopen(filename, "ab");
if (fp != NULL) {
- fwrite(sermsg.ser,
- sermsg.len, 1, fp);
+ fwrite(sermsg.ser, sermsg.len, 1, fp);
fclose(fp);
}
else {
- QN_syslog(LOG_ERR,
- "%s: %s\n",
- filename,
- strerror(errno));
+ syslog(LOG_ERR, "%s: %s\n", filename, strerror(errno));
}
/* free the serialized version */
/*
* Spools out one message from the list.
*/
-void network_spool_msg(long msgnum,
- void *userdata)
+void network_spool_msg(long msgnum, void *userdata)
{
- struct CitContext *CCC = CC;
struct CtdlMessage *msg = NULL;
long delete_after_send = 0; /* Set to 1 to delete after spooling */
SpoolControl *sc;
sc = (SpoolControl *)userdata;
-
msg = CtdlFetchMessage(msgnum, 1, 1);
if (msg == NULL)
{
- QN_syslog(LOG_ERR,
- "failed to load Message <%ld> from disk\n",
- msgnum);
+ syslog(LOG_ERR, "netmail: failed to load Message <%ld> from disk", msgnum);
return;
}
network_process_list(sc, msg, &delete_after_send);