repo: ngircd
action: commit
revision: 
path_from: 
revision_from: e86e193e010b44bc567c0fb2dfbebd81b9735358:
path_to: 
revision_to: 
git.thebackupbox.net
ngircd
git clone git://git.thebackupbox.net/ngircd
commit e86e193e010b44bc567c0fb2dfbebd81b9735358
Author: Alexander Barton 
Date:   Sun Dec 25 18:03:35 2011 +0100

    Check G-Line and K-Line lists after authenticating clients

diff --git a/src/ngircd/irc-login.c b/src/ngircd/irc-login.c
index eeecf96d82d88b40af7b4693ec1edbc3056bb6c8..
index ..140d68e0dcbaf96013b7878572e749e1dfccdfcd 100644
--- a/src/ngircd/irc-login.c
+++ b/src/ngircd/irc-login.c
@@ -937,12 +937,6 @@ Hello_User(CLIENT * Client)
 	}
 #endif

-	if (Class_IsMember(CLASS_GLINE, Client) ||
-	    Class_IsMember(CLASS_KLINE, Client)) {
-		Reject_Client(Client);
-		return DISCONNECTED;
-	}
-
 #ifdef PAM
 	if (!Conf_PAM) {
 		/* Don't do any PAM authentication at all, instead emulate
@@ -1068,6 +1062,12 @@ Reject_Client(CLIENT *Client)
 static bool
 Hello_User_PostAuth(CLIENT *Client)
 {
+	if (Class_IsMember(CLASS_GLINE, Client) ||
+	    Class_IsMember(CLASS_KLINE, Client)) {
+		Reject_Client(Client);
+		return DISCONNECTED;
+	}
+
 	Introduce_Client(NULL, Client, CLIENT_USER);

 	if (!IRC_WriteStrClient

-----END OF PAGE-----