diff --git a/src/sbbs3/logon.cpp b/src/sbbs3/logon.cpp index 69f84a65d044700351b63e3f817f6f71eef57a52..f179b5a412f6967524fc21c41f19ad44b8f632ec 100644 --- a/src/sbbs3/logon.cpp +++ b/src/sbbs3/logon.cpp @@ -71,8 +71,10 @@ bool sbbs_t::logon() if(useron.rest&FLAG('Q')) qwklogon=1; - if(SYSOP && !(cfg.sys_misc&SM_R_SYSOP)) + if(SYSOP && !(cfg.sys_misc&SM_R_SYSOP)) { + hangup(); return(false); + } if(useron.rest&FLAG('G')) { /* Guest account */ useron.misc=(cfg.new_misc&(~ASK_NSCAN)); @@ -103,6 +105,7 @@ bool sbbs_t::logon() sprintf(str,"(%04u) %-25s Insufficient node access" ,useron.number,useron.alias); logline(LOG_NOTICE,"+!",str); + hangup(); return(false); } @@ -114,6 +117,7 @@ bool sbbs_t::logon() sprintf(str,"(%04u) %-25s Locked node logon attempt" ,useron.number,useron.alias); logline(LOG_NOTICE,"+!",str); + hangup(); return(false); } if(yesno(text[RemoveNodeLockQ])) {