- Made the link::options::quarantine actually do something... People that get global

oper privileges on quarantined servers will be instantly killed. Bit ugly perhaps, but
  then it actually does what it should (prevent opers on quarantine from getting GLOBAL
  oper privileges). This "fixes" ,  and .
This commit is contained in:
Bram Matthys 2006-01-02 19:44:33 +00:00
parent d7865be511
commit 054160a74a
2 changed files with 8 additions and 1 deletions
Changes
src/modules

View file

@ -943,3 +943,7 @@
- Made ./Config (configure) exit on openssl or zlib not found errors, instead of
silently continueing and then causing trouble later on. Also now printing _a bit_
more helpful error message.
- Made the link::options::quarantine actually do something... People that get global
oper privileges on quarantined servers will be instantly killed. Bit ugly perhaps, but
then it actually does what it should (prevent opers on quarantine from getting GLOBAL
oper privileges). This "fixes" #2510, #2163 and #1968.

View file

@ -2122,7 +2122,10 @@ DLLFUNC CMD_FUNC(_m_umode)
case 'o':
case 'O':
if(sptr->from->flags & FLAGS_QUARANTINE)
break;
{
sendto_serv_butone(NULL, ":%s KILL %s :maintest.test.net (Quarantined: no global oper privileges allowed)", me.name, sptr->name);
return exit_client(cptr, sptr, &me, "Quarantined: no global oper privileges allowed");
}
/* A local user trying to set himself +o/+O is denied here.
* A while later (outside this loop) it is handled as well (and +C, +N, etc too)
* but we need to take care here too because it might cause problems