#include "citadel_dirs.h"
#include "threads.h"
#include "context.h"
-#include "netconfig.h"
+#include "ctdl_module.h"
#include "netspool.h"
#include "netmail.h"
-#include "ctdl_module.h"
/*
char *precps;
size_t recps_len = SIZ;
struct recptypes *valid;
- namelist *nptr;
+ RoomNetCfgLine *nptr;
char bounce_to[256];
if (sc->num_msgs_spooled < 1) {
* Figure out how big a buffer we need to allocate
*/
for (nptr = sc->NetConfigs[digestrecp]; nptr != NULL; nptr = nptr->next) {
- recps_len = recps_len + StrLength(nptr->Value) + 2;
+ recps_len = recps_len + StrLength(nptr->Value[0]) + 2;
}
recps = NewStrBufPlain(NULL, recps_len);
if (nptr != sc->NetConfigs[digestrecp]) {
StrBufAppendBufPlain(recps, HKEY(","), 0);
}
- StrBufAppendBuf(recps, nptr->Value, 0);
+ StrBufAppendBuf(recps, nptr->Value[0], 0);
}
/* Where do we want bounces and other noise to be heard?
char *precps = NULL;
size_t recps_len = SIZ;
struct recptypes *valid;
- namelist *nptr;
+ RoomNetCfgLine *nptr;
char bounce_to[256];
/* Don't do this if there were no recipients! */
* Figure out how big a buffer we need to allocate
*/
for (nptr = sc->NetConfigs[listrecp]; nptr != NULL; nptr = nptr->next) {
- recps_len = recps_len + StrLength(nptr->Value) + 2;
+ recps_len = recps_len + StrLength(nptr->Value[0]) + 2;
}
recps = NewStrBufPlain(NULL, recps_len);
if (nptr != sc->NetConfigs[listrecp]) {
StrBufAppendBufPlain(recps, HKEY(","), 0);
}
- StrBufAppendBuf(recps, nptr->Value, 0);
+ StrBufAppendBuf(recps, nptr->Value[0], 0);
}
/* Where do we want bounces and other noise to be heard?
void network_spool_msg(long msgnum,
void *userdata)
{
+ RoomNetCfgLine* mptr;
struct CitContext *CCC = CC;
StrBuf *Buf = NULL;
SpoolControl *sc;
int i;
char *newpath = NULL;
struct CtdlMessage *msg = NULL;
- namelist *nptr;
- maplist *mptr;
+ RoomNetCfgLine *nptr;
struct ser_ret sermsg;
FILE *fp;
char filename[PATH_MAX];
}
Buf = NewStrBufPlain(msg->cm_fields['N'], -1);
- if (is_valid_node(NULL,
- NULL,
- Buf,
- sc->working_ignetcfg,
- sc->the_netmap) == 0)
+ if (CtdlIsValidNode(NULL,
+ NULL,
+ Buf,
+ sc->working_ignetcfg,
+ sc->the_netmap) == 0)
{
ok_to_participate = 1;
}
free(msg->cm_fields['R']);
}
msg->cm_fields['R'] =
- strdup(ChrPtr(nptr->Value));
+ strdup(ChrPtr(nptr->Value[0]));
valid = validate_recipients(msg->cm_fields['R'],
NULL, 0);
/* Now send it to every node */
if (sc->NetConfigs[ignet_push_share] != NULL)
- for (mptr = (maplist*)sc->NetConfigs[ignet_push_share]; mptr != NULL;
+ for (mptr = sc->NetConfigs[ignet_push_share]; mptr != NULL;
mptr = mptr->next) {
send = 1;
- NewStrBufDupAppendFlush(&Buf, mptr->remote_nodename, NULL, 1);
+ NewStrBufDupAppendFlush(&Buf, mptr->Value[0], NULL, 1);
/* Check for valid node name */
- if (is_valid_node(NULL,
- NULL,
- Buf,
- sc->working_ignetcfg,
- sc->the_netmap) != 0)
+ if (CtdlIsValidNode(NULL,
+ NULL,
+ Buf,
+ sc->working_ignetcfg,
+ sc->the_netmap) != 0)
{
QN_syslog(LOG_ERR,
"Invalid node <%s>\n",
- ChrPtr(mptr->remote_nodename));
+ ChrPtr(mptr->Value[0]));
send = 0;
}
sizeof buf);
QN_syslog(LOG_DEBUG, "Compare <%s> to <%s>\n",
- buf, ChrPtr(mptr->remote_nodename)) ;
- if (!strcasecmp(buf, ChrPtr(mptr->remote_nodename))) {
+ buf, ChrPtr(mptr->Value[0])) ;
+ if (!strcasecmp(buf, ChrPtr(mptr->Value[0]))) {
send = 0;
break;
}
QN_syslog(LOG_INFO,
"%sSending to %s\n",
(send)?"":"Not ",
- ChrPtr(mptr->remote_nodename));
+ ChrPtr(mptr->Value[0]));
}
/* Send the message */
if (msg->cm_fields['C'] != NULL) {
free(msg->cm_fields['C']);
}
- if (StrLength(mptr->remote_roomname) > 0) {
+ if (StrLength(mptr->Value[0]) > 0) {
msg->cm_fields['C'] =
- strdup(ChrPtr(mptr->remote_roomname));
+ strdup(ChrPtr(mptr->Value[0]));
}
else {
msg->cm_fields['C'] =
sizeof(filename),
"%s/%s@%lx%x",
ctdl_netout_dir,
- ChrPtr(mptr->remote_nodename),
+ ChrPtr(mptr->Value[0]),
time(NULL),
rand()
);
}
/* update lastsent */
- sc->lastsent = msgnum;
+ ///sc->lastsent = msgnum; ////// TODO
/* Delete this message if delete-after-send is set */
if (delete_after_send) {