summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changes1
-rw-r--r--src/users.c6
-rw-r--r--version.log6
3 files changed, 11 insertions, 2 deletions
diff --git a/Changes b/Changes
index a3dba2a03..5e5c32385 100644
--- a/Changes
+++ b/Changes
@@ -3,6 +3,7 @@ Anope Version S V N
08/30 A Added support for channel keys to UnrealIRCd 3.2 SVSJOIN command [#774]
08/29 A Session limit exceptions now support IP numbers as hostmask [#723]
08/29 A Added InspIRCd11 vIdent support. [#684]
+08/31 F is_excepted() now uses match_userip() also. [#778]
08/31 F Wrong reply when deleting entries by number (akick, badwords) [#776]
06/15 F Non-existing servers being SQUIT'd when they were juped. [#726]
06/15 F Back online notice being sent to juped servers. [#726]
diff --git a/src/users.c b/src/users.c
index c6fb4c1cf..f5c0c4160 100644
--- a/src/users.c
+++ b/src/users.c
@@ -915,6 +915,7 @@ int is_excepted(ChannelInfo * ci, User * user)
int count, i;
int isexcepted = 0;
char **excepts;
+ char *hostip = NULL;
if (!ci->c)
return 0;
@@ -927,8 +928,11 @@ int is_excepted(ChannelInfo * ci, User * user)
excepts = scalloc(sizeof(char *) * count, 1);
memcpy(excepts, ci->c->excepts, sizeof(char *) * count);
+ hostip = host_resolve(user->host);
+
for (i = 0; i < count; i++) {
- if (match_usermask(excepts[i], user)) {
+ if (match_usermask(excepts[i], user)
+ || (hostip && match_userip(excepts[i], user, hostip))) {
isexcepted = 1;
}
}
diff --git a/version.log b/version.log
index ba182199c..98694d359 100644
--- a/version.log
+++ b/version.log
@@ -9,10 +9,14 @@ VERSION_MAJOR="1"
VERSION_MINOR="7"
VERSION_PATCH="19"
VERSION_EXTRA="-svn"
-VERSION_BUILD="1292"
+VERSION_BUILD="1293"
# $Log$
#
+# BUILD : 1.7.19 (1293)
+# BUGS : 778
+# NOTES : is_excepted() now uses match_userip() also.
+#
# BUILD : 1.7.19 (1292)
# BUGS : 776
# NOTES : Fixed wrong reply when deleting entries by number (akick, badwords)