Fixes for mbfido

This commit is contained in:
Michiel Broek 2003-01-03 20:51:25 +00:00
parent e5965591bf
commit cdc8e40843
3 changed files with 10 additions and 11 deletions

View File

@ -46,6 +46,7 @@ v0.37.00 26-Dec-2002.
mbfido:
Echomail from other zones showed the address of your own zone.
Added logging when other errors are found.
mbsetup:
Removed global flags No-IBN, IFC and ITN from the setup.

View File

@ -156,12 +156,6 @@ int postecho(faddr *p_from, faddr *f, faddr *t, char *orig, char *subj, time_t m
crc = 0xffffffff;
echo_in++;
p = xstrcpy(ascfnode(f, 0x1f));
q = xstrcpy(ascfnode(t, 0x1f));
Syslog('m', "postecho %s to %s \"%s\"", p, q, subj);
free(q);
free(p);
/*
* p_from is set for tossed echomail, it is NULL for local posted echomail and gated news.
*/
@ -227,13 +221,16 @@ int postecho(faddr *p_from, faddr *f, faddr *t, char *orig, char *subj, time_t m
if (!strncmp(buf, "\001MSGID: ", 8)) {
msgid = xstrcpy(buf + 8);
/*
* Extra test to see if the mail comes from a pointaddress.
* Extra test to see if the address is correct.
*/
p = strtok(buf, " \n");
p = strtok(NULL, " \n");
if ((ta = parsefnode(p))) {
Syslog('m', "MSGID aka is %d", ascfnode(ta, 0x1f));
tidy_faddr(ta);
if ((ta->zone != f->zone) || (ta->point != f->point) || (ta->node != f->node) || (ta->net != f->net)) {
p = xstrcpy(ascfnode(f, 0x1f));
Syslog('!', "ERROR: f=%s, ta=%s", p, ascfnode(ta, 0x1f));
free(p);
}
}
}
if (!strncmp(buf, "\001REPLY: ", 8))

View File

@ -236,8 +236,9 @@ int importmsg(faddr *p_from, faddr *f, faddr *t, char *orig, char *subj, time_t
} /* end of checking kludges */
if (echomail) {
if (!f->zone)
f->zone = p_from->zone;
/*
* At this point, the destination zone is not yet set.
*/
if (!t->zone)
t->zone = tzone;
rc = postecho(p_from, f, t, orig, subj, mdate, flags, cost, fp, TRUE);