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 */
|