Added experimental support for the ICM flag (FSP-1033)
This commit is contained in:
@@ -102,7 +102,6 @@ int call(faddr *addr)
|
||||
{
|
||||
int rc = 1;
|
||||
char *p, temp[81];
|
||||
unsigned long cmmask;
|
||||
|
||||
/*
|
||||
* First check if node is locked, if not lock it immediatly
|
||||
@@ -136,7 +135,6 @@ int call(faddr *addr)
|
||||
*/
|
||||
noderecord(addr);
|
||||
rdoptions(TRUE);
|
||||
cmmask = getCMmask();
|
||||
|
||||
/*
|
||||
* Fill default history info in case we get a FTS0001 session
|
||||
@@ -205,7 +203,8 @@ int call(faddr *addr)
|
||||
}
|
||||
}
|
||||
|
||||
if (((nlent->oflags & cmmask) == 0) && (!IsZMH())) {
|
||||
if (((nlent->can_pots && nlent->is_cm) == FALSE) && ((nlent->can_ip && nlent->is_icm) == FALSE) && (!IsZMH())) {
|
||||
// if (((nlent->oflags & cmmask) == 0) && (!IsZMH())) {
|
||||
Syslog('?', "Warning: calling non-CM system outside ZMH");
|
||||
}
|
||||
|
||||
|
@@ -171,7 +171,6 @@ int main(int argc, char *argv[])
|
||||
faddr *addr = NULL;
|
||||
node *nlent;
|
||||
FILE *fl;
|
||||
unsigned long cmmask;
|
||||
|
||||
most_debug = TRUE;
|
||||
|
||||
@@ -316,14 +315,14 @@ int main(int argc, char *argv[])
|
||||
free(nlent->url);
|
||||
nlent->url = NULL;
|
||||
|
||||
cmmask = getCMmask();
|
||||
if (nlent->pflag == NL_DUMMY)
|
||||
Fatal((char *)"Node is not in nodelist", MBERR_NODE_NOT_IN_LIST);
|
||||
if (nlent->pflag == NL_DOWN)
|
||||
Fatal((char *)"Node has status Down", MBERR_NODE_MAY_NOT_CALL);
|
||||
if (nlent->pflag == NL_HOLD)
|
||||
Fatal((char *)"Node has status Hold", MBERR_NODE_MAY_NOT_CALL);
|
||||
if (((nlent->oflags & cmmask) == 0) && (flavor == 'c'))
|
||||
if (((nlent->can_pots && nlent->is_cm) == FALSE) && ((nlent->can_ip && nlent->is_icm) == FALSE) && (flavor == 'c'))
|
||||
// if (((nlent->oflags & cmmask) == 0) && (flavor == 'c'))
|
||||
Fatal((char *)"Node is not CM, must use Immediate, Normal or Hold flavor", MBERR_NODE_MAY_NOT_CALL);
|
||||
|
||||
if (argv[4][0] == '-')
|
||||
|
@@ -457,7 +457,6 @@ int pollnode(faddr *addr, int stop)
|
||||
{
|
||||
char *pol;
|
||||
int rc = 0;
|
||||
unsigned long cmmask;
|
||||
FILE *fp;
|
||||
callstat *cst;
|
||||
node *nlent;
|
||||
@@ -511,9 +510,8 @@ int pollnode(faddr *addr, int stop)
|
||||
rc = MBERR_CANNOT_MAKE_POLL;
|
||||
} else {
|
||||
fclose(fp);
|
||||
cmmask = getCMmask();
|
||||
Syslog('s', "oflags %08x (i)cmmask %08x", nlent->oflags, cmmask);
|
||||
if (((nlent->oflags & cmmask) == 0) && (!IsZMH())) {
|
||||
if (((nlent->can_pots && nlent->is_cm) == FALSE) && ((nlent->can_ip && nlent->is_icm) == FALSE) && (!IsZMH())) {
|
||||
// if (((nlent->oflags & cmmask) == 0) && (!IsZMH())) {
|
||||
Syslog('+', "Created poll for %s, non-CM node outside ZMH", ascfnode(addr, 0x1f));
|
||||
if (!do_quiet)
|
||||
printf("Created poll for %s, non-CM node outside ZMH\n", ascfnode(addr, 0x1f));
|
||||
|
Reference in New Issue
Block a user