Log better error messages when rejecting clients
This commit is contained in:
parent
164e15b8c6
commit
338758799d
@ -47,7 +47,7 @@ static bool Hello_User PARAMS(( CLIENT *Client ));
|
|||||||
static bool Hello_User_PostAuth PARAMS(( CLIENT *Client ));
|
static bool Hello_User_PostAuth PARAMS(( CLIENT *Client ));
|
||||||
static void Kill_Nick PARAMS(( char *Nick, char *Reason ));
|
static void Kill_Nick PARAMS(( char *Nick, char *Reason ));
|
||||||
static void Introduce_Client PARAMS((CLIENT *To, CLIENT *Client, int Type));
|
static void Introduce_Client PARAMS((CLIENT *To, CLIENT *Client, int Type));
|
||||||
static void Reject_Client PARAMS((CLIENT *Client));
|
static void Reject_Client PARAMS((CLIENT *Client, const char *InternalReason));
|
||||||
|
|
||||||
static void cb_introduceClient PARAMS((CLIENT *Client, CLIENT *Prefix,
|
static void cb_introduceClient PARAMS((CLIENT *Client, CLIENT *Prefix,
|
||||||
void *i));
|
void *i));
|
||||||
@ -945,7 +945,7 @@ Hello_User(CLIENT * Client)
|
|||||||
* passwords supplied are classified as "wrong". */
|
* passwords supplied are classified as "wrong". */
|
||||||
if(Client_Password(Client)[0] == '\0')
|
if(Client_Password(Client)[0] == '\0')
|
||||||
return Hello_User_PostAuth(Client);
|
return Hello_User_PostAuth(Client);
|
||||||
Reject_Client(Client);
|
Reject_Client(Client, "non-empty password");
|
||||||
return DISCONNECTED;
|
return DISCONNECTED;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -972,7 +972,7 @@ Hello_User(CLIENT * Client)
|
|||||||
/* Check global server password ... */
|
/* Check global server password ... */
|
||||||
if (strcmp(Client_Password(Client), Conf_ServerPwd) != 0) {
|
if (strcmp(Client_Password(Client), Conf_ServerPwd) != 0) {
|
||||||
/* Bad password! */
|
/* Bad password! */
|
||||||
Reject_Client(Client);
|
Reject_Client(Client, "bad server password");
|
||||||
return DISCONNECTED;
|
return DISCONNECTED;
|
||||||
}
|
}
|
||||||
return Hello_User_PostAuth(Client);
|
return Hello_User_PostAuth(Client);
|
||||||
@ -1017,7 +1017,7 @@ cb_Read_Auth_Result(int r_fd, UNUSED short events)
|
|||||||
|
|
||||||
if (len != sizeof(result)) {
|
if (len != sizeof(result)) {
|
||||||
Log(LOG_CRIT, "Auth: Got malformed result!");
|
Log(LOG_CRIT, "Auth: Got malformed result!");
|
||||||
Reject_Client(client);
|
Reject_Client(client, "internal error");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1025,7 +1025,7 @@ cb_Read_Auth_Result(int r_fd, UNUSED short events)
|
|||||||
Client_SetUser(client, Client_OrigUser(client), true);
|
Client_SetUser(client, Client_OrigUser(client), true);
|
||||||
(void)Hello_User_PostAuth(client);
|
(void)Hello_User_PostAuth(client);
|
||||||
} else
|
} else
|
||||||
Reject_Client(client);
|
Reject_Client(client, "bad password");
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@ -1040,12 +1040,12 @@ cb_Read_Auth_Result(int r_fd, UNUSED short events)
|
|||||||
* @param Client The client to reject.
|
* @param Client The client to reject.
|
||||||
*/
|
*/
|
||||||
static void
|
static void
|
||||||
Reject_Client(CLIENT *Client)
|
Reject_Client(CLIENT *Client, const char *InternalReason)
|
||||||
{
|
{
|
||||||
Log(LOG_ERR,
|
Log(LOG_ERR,
|
||||||
"User \"%s\" rejected (connection %d): Access denied!",
|
"User \"%s\" rejected (connection %d): %s!",
|
||||||
Client_Mask(Client), Client_Conn(Client));
|
Client_Mask(Client), Client_Conn(Client), InternalReason);
|
||||||
Conn_Close(Client_Conn(Client), NULL,
|
Conn_Close(Client_Conn(Client), InternalReason,
|
||||||
"Access denied! Bad password?", true);
|
"Access denied! Bad password?", true);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1062,9 +1062,12 @@ Reject_Client(CLIENT *Client)
|
|||||||
static bool
|
static bool
|
||||||
Hello_User_PostAuth(CLIENT *Client)
|
Hello_User_PostAuth(CLIENT *Client)
|
||||||
{
|
{
|
||||||
if (Class_IsMember(CLASS_GLINE, Client) ||
|
if (Class_IsMember(CLASS_GLINE, Client)) {
|
||||||
Class_IsMember(CLASS_KLINE, Client)) {
|
Reject_Client(Client, "G-Line'd");
|
||||||
Reject_Client(Client);
|
return DISCONNECTED;
|
||||||
|
}
|
||||||
|
if (Class_IsMember(CLASS_KLINE, Client)) {
|
||||||
|
Reject_Client(Client, "K-Line'd");
|
||||||
return DISCONNECTED;
|
return DISCONNECTED;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user