From: Gabriel B. <sh...@us...> - 2006-03-19 17:16:36
|
Update of /cvsroot/solidircd/solidircd-stable/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23436/src Modified Files: channel.c s_user.c version.c.SH Log Message: Freezed & shunned users can't join or part any new or current channels. Index: s_user.c =================================================================== RCS file: /cvsroot/solidircd/solidircd-stable/src/s_user.c,v retrieving revision 1.23 retrieving revision 1.24 diff -C2 -d -r1.23 -r1.24 *** s_user.c 18 Mar 2006 00:36:03 -0000 1.23 --- s_user.c 19 Mar 2006 17:16:32 -0000 1.24 *************** *** 1671,1675 **** case 3: - #ifdef ERROR_FREEZE_NOTICE sendto_one(sptr, err_str(ERR_NOTEXTTOSEND), me.name, parv[0]); --- 1671,1674 ---- *************** *** 1677,1685 **** return 0; } } - /* Need to add something here for shunned users */ - if IsShunned(sptr) { --- 1676,1683 ---- return 0; + } } if IsShunned(sptr) { Index: version.c.SH =================================================================== RCS file: /cvsroot/solidircd/solidircd-stable/src/version.c.SH,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** version.c.SH 12 Mar 2006 19:47:50 -0000 1.4 --- version.c.SH 19 Mar 2006 17:16:32 -0000 1.5 *************** *** 111,114 **** --- 111,115 ---- "| Trystan ", "| Aven ", + "| hallai ", "|----------------------------------------------------------------------------------------", "| ", Index: channel.c =================================================================== RCS file: /cvsroot/solidircd/solidircd-stable/src/channel.c,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** channel.c 18 Mar 2006 05:05:17 -0000 1.16 --- channel.c 19 Mar 2006 17:16:32 -0000 1.17 *************** *** 2816,2820 **** /* Number of channels successfully joined */ #endif ! if (!(sptr->user)) { --- 2816,2846 ---- /* Number of channels successfully joined */ #endif ! ! /* Stop freezed and shunned users from joining channels 19/03/2006 -Sheik */ ! if (cptr->user && cptr->user->special_mode) { ! switch (cptr->user->special_mode) { ! ! case 3: ! ! #ifdef ERROR_FREEZE_NOTICE ! sendto_one(sptr, err_str(ERR_NEEDMOREPARAMS), ! me.name, parv[0], "JOIN"); ! #endif ! ! return 0; ! ! } ! } ! ! if IsShunned(sptr) { ! ! ! #ifdef ERROR_FREEZE_NOTICE ! sendto_one(sptr, err_str(ERR_NEEDMOREPARAMS), ! me.name, parv[0], "JOIN"); ! #endif ! return 0; ! } ! if (!(sptr->user)) { *************** *** 3199,3202 **** --- 3225,3256 ---- name = strtoken(&p, parv[1], ","); + + /* Stop freezed & Shunned users from parting channels. 19/03/2006 -Sheik */ + + if (cptr->user && cptr->user->special_mode) { + switch (cptr->user->special_mode) { + + case 3: + + #ifdef ERROR_FREEZE_NOTICE + sendto_one(sptr, err_str(ERR_NEEDMOREPARAMS), + me.name, parv[0], "PART"); + #endif + + return 0; + + } + } + + if IsShunned(sptr) { + + + #ifdef ERROR_FREEZE_NOTICE + sendto_one(sptr, err_str(ERR_NEEDMOREPARAMS), + me.name, parv[0], "PART"); + #endif + return 0; + } + #ifdef ANTI_SPAMBOT /* Dianora */ |