From 8989302a3efb2122b5ae92293f2be32c603acd37 Mon Sep 17 00:00:00 2001 From: Michiel Broek Date: Sat, 19 Jun 2004 12:14:12 +0000 Subject: [PATCH] Improved ICM detection and added flag correction --- lib/nodelist.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/lib/nodelist.c b/lib/nodelist.c index dc4d4e67..cf31c4f5 100644 --- a/lib/nodelist.c +++ b/lib/nodelist.c @@ -1091,10 +1091,23 @@ node *getnlent(faddr *addr) if (addr->domain == NULL) addr->domain = xstrcpy(nodebuf.addr.domain); + /* + * FSP-1033, the ICM (IP Continuous Mail) flag. + */ nodebuf.can_pots = (nodebuf.mflags || nodebuf.dflags) ? TRUE : FALSE; nodebuf.can_ip = (nodebuf.iflags) ? TRUE : FALSE; nodebuf.is_cm = (nodebuf.oflags & 0x00000001) ? TRUE : FALSE; nodebuf.is_icm = (nodebuf.oflags & 0x00000002) ? TRUE : FALSE; + /* + * Now correct if node is ION with a CM flag instead of ICM flag. + * This is the case the first months after approval of the ICM flag + * and with nodes who won't change flags. + */ + if (!nodebuf.can_pots && nodebuf.can_ip && nodebuf.is_cm && !nodebuf.is_icm) { + Syslog('n', "getnlent: correct CM into ICM flag"); + nodebuf.is_cm = FALSE; + nodebuf.is_icm = TRUE; + } Syslog('n', "getnlent: system %s, %s", nodebuf.name, nodebuf.location); Syslog('n', "getnlent: sysop %s, %s", nodebuf.sysop, nodebuf.phone);