From a3986d94824507f17211b23c12fdfcef996ad636 Mon Sep 17 00:00:00 2001 From: nenolod Date: Sat, 26 May 2007 22:44:35 -0700 Subject: [PATCH] [svn] - disallow JOIN 0 --- ChangeLog | 11 +++++++ include/serno.h | 2 +- modules/core/m_join.c | 69 ++----------------------------------------- 3 files changed, 14 insertions(+), 68 deletions(-) diff --git a/ChangeLog b/ChangeLog index 848eecb..a95d112 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,14 @@ +nenolod 2007/05/27 05:35:06 UTC (20070527-3482) + Log: + - blacklist{}: add notes about DroneBL and enable it by default. AHBL is still not enabled by default due + to their policies indicating that they wish to be contacted before their services are used. + + + Changes: Modified: + +6 -3 trunk/doc/example.conf (File Modified) + +6 -3 trunk/doc/reference.conf (File Modified) + + nenolod 2007/05/27 05:30:41 UTC (20070527-3480) Log: - update NEWS in preparation of upcoming 2.2 release this week diff --git a/include/serno.h b/include/serno.h index e398dde..c58dc98 100644 --- a/include/serno.h +++ b/include/serno.h @@ -1 +1 @@ -#define SERNO "20070527-3480" +#define SERNO "20070527-3482" diff --git a/modules/core/m_join.c b/modules/core/m_join.c index 4c39c08..c3cc39d 100644 --- a/modules/core/m_join.c +++ b/modules/core/m_join.c @@ -21,7 +21,7 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA * - * $Id: m_join.c 3434 2007-04-28 23:47:25Z jilles $ + * $Id: m_join.c 3486 2007-05-27 05:44:35Z nenolod $ */ #include "stdinc.h" @@ -62,9 +62,8 @@ mapi_hlist_av1 join_hlist[] = { { NULL, NULL }, }; -DECLARE_MODULE_AV1(join, NULL, NULL, join_clist, join_hlist, NULL, "$Revision: 3434 $"); +DECLARE_MODULE_AV1(join, NULL, NULL, join_clist, join_hlist, NULL, "$Revision: 3486 $"); -static void do_join_0(struct Client *client_p, struct Client *source_p); static int check_channel_name_loc(struct Client *source_p, const char *name); static void set_final_mode(struct Mode *mode, struct Mode *oldmode); @@ -149,13 +148,6 @@ m_join(struct Client *client_p, struct Client *source_p, int parc, const char *p continue; } - /* join 0 parts all channels */ - if(*name == '0' && !atoi(name)) - { - (void) strcpy(jbuf, "0"); - continue; - } - /* check it begins with # or &, and local chans are disabled */ else if(!IsChannelName(name)) { @@ -209,16 +201,6 @@ m_join(struct Client *client_p, struct Client *source_p, int parc, const char *p { hook_data_channel_activity hook_info; - /* JOIN 0 simply parts all channels the user is in */ - if(*name == '0' && !atoi(name)) - { - if(source_p->user->channel.head == NULL) - continue; - - do_join_0(&me, source_p); - continue; - } - /* look for the channel */ if((chptr = find_channel(name)) != NULL) { @@ -402,13 +384,6 @@ ms_join(struct Client *client_p, struct Client *source_p, int parc, const char * int keep_new_modes = YES; dlink_node *ptr, *next_ptr; - /* special case for join 0 */ - if((parv[1][0] == '0') && (parv[1][1] == '\0') && parc == 2) - { - do_join_0(client_p, source_p); - return 0; - } - if(parc < 4) return 0; @@ -517,46 +492,6 @@ ms_join(struct Client *client_p, struct Client *source_p, int parc, const char * return 0; } -/* - * do_join_0 - * - * inputs - pointer to client doing join 0 - * output - NONE - * side effects - Use has decided to join 0. This is legacy - * from the days when channels were numbers not names. *sigh* - * There is a bunch of evilness necessary here due to - * anti spambot code. - */ -static void -do_join_0(struct Client *client_p, struct Client *source_p) -{ - struct membership *msptr; - struct Channel *chptr = NULL; - dlink_node *ptr; - - /* Finish the flood grace period... */ - if(MyClient(source_p) && !IsFloodDone(source_p)) - flood_endgrace(source_p); - - - sendto_server(client_p, NULL, CAP_TS6, NOCAPS, ":%s JOIN 0", use_id(source_p)); - sendto_server(client_p, NULL, NOCAPS, CAP_TS6, ":%s JOIN 0", source_p->name); - - if(source_p->user->channel.head && MyConnect(source_p) && - !IsOper(source_p) && !IsExemptSpambot(source_p)) - check_spambot_warning(source_p, NULL); - - while((ptr = source_p->user->channel.head)) - { - msptr = ptr->data; - chptr = msptr->chptr; - sendto_channel_local(ALL_MEMBERS, chptr, ":%s!%s@%s PART %s", - source_p->name, - source_p->username, source_p->host, chptr->chname); - remove_user_from_channel(msptr); - } -} - static int check_channel_name_loc(struct Client *source_p, const char *name) {