From 598ebb42c77b2c441c658325dc9761d96915f9d1 Mon Sep 17 00:00:00 2001 From: jilles Date: Sat, 19 May 2007 15:21:10 -0700 Subject: [PATCH] [svn] Exempt klines with a fixed user@ (no */?) from min_nonwildcard checks. --- ChangeLog | 16 ++++++++++++++++ include/serno.h | 2 +- modules/m_kline.c | 8 ++++++-- 3 files changed, 23 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 0f020bf8..8762ad21 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,19 @@ +jilles 2007/05/18 20:31:33 UTC (20070518-3460) + Log: + - fold conf_connect_allowed() into accept_connection() + - extend add_connection() so that exempt{}s apply to max unregistered + connections per ip + from ratbox + + + Changes: Modified: + +1 -1 trunk/doc/example.conf (File Modified) + +1 -1 trunk/doc/reference.conf (File Modified) + +2 -1 trunk/doc/sgml/oper-guide/config.sgml (File Modified) + +0 -2 trunk/include/s_conf.h (File Modified) + +14 -7 trunk/src/listener.c (File Modified) + + jilles 2007/05/18 19:51:22 UTC (20070518-3458) Log: m_webirc: call del_unknown_ip() otherwise the unknown will diff --git a/include/serno.h b/include/serno.h index 1201aa51..14187686 100644 --- a/include/serno.h +++ b/include/serno.h @@ -1 +1 @@ -#define SERNO "20070518-3458" +#define SERNO "20070518-3460" diff --git a/modules/m_kline.c b/modules/m_kline.c index 4101ec36..0db26838 100644 --- a/modules/m_kline.c +++ b/modules/m_kline.c @@ -21,7 +21,7 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA * - * $Id: m_kline.c 3225 2007-03-04 23:42:55Z jilles $ + * $Id: m_kline.c 3464 2007-05-19 22:21:10Z jilles $ */ #include "stdinc.h" @@ -65,7 +65,7 @@ struct Message unkline_msgtab = { }; mapi_clist_av1 kline_clist[] = { &kline_msgtab, &unkline_msgtab, NULL }; -DECLARE_MODULE_AV1(kline, NULL, NULL, kline_clist, NULL, NULL, "$Revision: 3225 $"); +DECLARE_MODULE_AV1(kline, NULL, NULL, kline_clist, NULL, NULL, "$Revision: 3464 $"); /* Local function prototypes */ static int find_user_host(struct Client *source_p, const char *userhost, char *user, char *host); @@ -615,6 +615,10 @@ valid_wild_card(struct Client *source_p, const char *luser, const char *lhost) char tmpch; int nonwild = 0; + /* user has no wildcards, always accept -- jilles */ + if (!strchr(luser, '?') && !strchr(luser, '*')) + return 1; + /* check there are enough non wildcard chars */ p = luser; while ((tmpch = *p++))