diff --git a/ChangeLog b/ChangeLog index f7a603bb..319b6a07 100644 --- a/ChangeLog +++ b/ChangeLog @@ -2,6 +2,10 @@ $Id$ v0.61.0 06-Jun-2004. + + libnodelist.a: + Prepared for ICM flag (FSP-1033). + mbmsg: With te post command, the right number of commandline options is checked, if this is wrong the help message is displayed. @@ -10,6 +14,13 @@ v0.61.0 06-Jun-2004. Added checks in the mbmsg post command if the To parameter has the correct syntax for netmail and all other areas. + mbout: + Prepared for ICM flag (FSP-1033). + + mbcico: + Prepared for ICM flag (FSP-1033). + + v0.60.0 09-Feb-2004 - 04-Jun-2004 diff --git a/lib/nodelist.c b/lib/nodelist.c index e6291b94..664dce59 100644 --- a/lib/nodelist.c +++ b/lib/nodelist.c @@ -1097,7 +1097,7 @@ node *getnlent(faddr *addr) // moflags(nodebuf.mflags); // diflags(nodebuf.dflags); // ipflags(nodebuf.iflags); -// olflags(nodebuf.oflags); + olflags(nodebuf.oflags); // rqflags(nodebuf.xflags); free(mydomain); @@ -1228,15 +1228,21 @@ void ipflags(unsigned long flags) unsigned long getCMmask(void) { - nodelist_flag **tmpm; + nodelist_flag **tmpm; + static unsigned long mask = 0L; for (tmpm = &nl_online; *tmpm; tmpm=&((*tmpm)->next)) { if (strcmp("CM", (*tmpm)->name) == 0) { - return (*tmpm)->value; + mask &= (*tmpm)->value; + } + if (strcmp("ICM", (*tmpm)->name) == 0) { + mask &= (*tmpm)->value; } } + if (mask) + return mask; - WriteError("CM mask not found in %s/etc/nodelist.conf", getenv("MBSE_ROOT")); + WriteError("CM and ICM mask not found in %s/etc/nodelist.conf", getenv("MBSE_ROOT")); return 0; } diff --git a/mbcico/outstat.c b/mbcico/outstat.c index e4c0c1c4..50c7a399 100644 --- a/mbcico/outstat.c +++ b/mbcico/outstat.c @@ -512,7 +512,7 @@ int pollnode(faddr *addr, int stop) } else { fclose(fp); cmmask = getCMmask(); - Syslog('s', "oflags %08x cmmask %08x", nlent->oflags, cmmask); + Syslog('s', "oflags %08x (i)cmmask %08x", nlent->oflags, cmmask); if (((nlent->oflags & cmmask) == 0) && (!IsZMH())) { Syslog('+', "Created poll for %s, non-CM node outside ZMH", ascfnode(addr, 0x1f)); if (!do_quiet)