fix problems found by pelish
This commit is contained in:
parent
4255945d6d
commit
35cd9d240c
5 changed files with 37 additions and 12 deletions
|
@ -159,6 +159,26 @@ extern int account_set_pass(t_account * account, char const * passhash1)
|
|||
return account_set_strattr(account,"BNET\\acct\\passhash1",passhash1);
|
||||
}
|
||||
|
||||
extern char const * account_get_salt(t_account * account)
|
||||
{
|
||||
return account_get_strattr(account,"BNET\\acct\\salt");
|
||||
}
|
||||
|
||||
extern int account_set_salt(t_account * account, char const * salt)
|
||||
{
|
||||
return account_set_strattr(account,"BNET\\acct\\salt",salt);
|
||||
}
|
||||
|
||||
extern char const * account_get_verifier(t_account * account)
|
||||
{
|
||||
return account_get_strattr(account,"BNET\\acct\\verifier");
|
||||
}
|
||||
|
||||
extern int account_set_verifier(t_account * account, char const * verifier)
|
||||
{
|
||||
return account_set_strattr(account,"BNET\\acct\\verifier",verifier);
|
||||
}
|
||||
|
||||
|
||||
/****************************************************************/
|
||||
|
||||
|
|
|
@ -50,6 +50,12 @@ extern int account_set_boolattr(t_account * account, char const * key, int val);
|
|||
extern char const * account_get_pass(t_account * account);
|
||||
extern int account_set_pass(t_account * account, char const * passhash1);
|
||||
|
||||
extern char const * account_get_salt(t_account * account);
|
||||
extern int account_set_salt(t_account * account, char const * salt);
|
||||
|
||||
extern char const * account_get_verifier(t_account * account);
|
||||
extern int account_set_verifier(t_account * account, char const * verifier);
|
||||
|
||||
/* authorization */
|
||||
extern int account_get_auth_admin(t_account * account, char const * channelname);
|
||||
extern int account_set_auth_admin(t_account * account, char const * channelname, int val);
|
||||
|
|
|
@ -1675,8 +1675,11 @@ static int _client_loginreqw3(t_connection * c, t_packet const *const packet)
|
|||
packet_set_size(rpacket, sizeof(t_server_loginreply_w3));
|
||||
packet_set_type(rpacket, SERVER_LOGINREPLY_W3);
|
||||
|
||||
for (i = 0; i < 16; i++)
|
||||
bn_int_set(&rpacket->u.server_loginreply_w3.unknown[i], 0);
|
||||
for (i = 0; i < 32; i++)
|
||||
bn_byte_set(&rpacket->u.server_loginreply_w3.salt[i], 0);
|
||||
|
||||
for (i = 0; i < 32; i++)
|
||||
bn_byte_set(&rpacket->u.server_loginreply_w3.server_public_key[i], 0);
|
||||
|
||||
{
|
||||
/* too many logins? */
|
||||
|
@ -1742,7 +1745,8 @@ static int _client_logonproofreq(t_connection * c, t_packet const *const packet)
|
|||
{
|
||||
char const *username;
|
||||
t_account *account;
|
||||
int server_password_proof[5];
|
||||
bn_byte server_password_proof[20];
|
||||
int i;
|
||||
|
||||
eventlog(eventlog_level_info, __FUNCTION__, "[%d] logon proof requested", conn_get_socket(c));
|
||||
|
||||
|
@ -1755,11 +1759,8 @@ static int _client_logonproofreq(t_connection * c, t_packet const *const packet)
|
|||
|
||||
bn_int_set(&rpacket->u.server_logonproofreply.response, SERVER_LOGONPROOFREPLY_RESPONSE_BADPASS);
|
||||
|
||||
bn_int_set(&rpacket->u.server_logonproofreply.server_password_proof[0], server_password_proof[0]);
|
||||
bn_int_set(&rpacket->u.server_logonproofreply.server_password_proof[1], server_password_proof[1]);
|
||||
bn_int_set(&rpacket->u.server_logonproofreply.server_password_proof[2], server_password_proof[2]);
|
||||
bn_int_set(&rpacket->u.server_logonproofreply.server_password_proof[3], server_password_proof[3]);
|
||||
bn_int_set(&rpacket->u.server_logonproofreply.server_password_proof[4], server_password_proof[4]);
|
||||
for (i = 0; i < 20; i++)
|
||||
bn_byte_set(&rpacket->u.server_logonproofreply.server_password_proof[i], bn_byte_get(server_password_proof[i]));
|
||||
|
||||
if (!(username = conn_get_loggeduser(c))) {
|
||||
eventlog(eventlog_level_info, __FUNCTION__, "[%d] (W3) got NULL username, 0x54ff before 0x53ff?", conn_get_socket(c));
|
||||
|
|
|
@ -907,7 +907,7 @@ static int _handle_whois_command(t_connection * conn, int numparams, char ** par
|
|||
|
||||
static int _handle_part_command(t_connection * conn, int numparams, char ** params, char * text)
|
||||
{
|
||||
message_send_text(conn,message_type_part,conn,NULL);
|
||||
conn_set_channel(conn, NULL);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -853,7 +853,6 @@ static int _handle_join_command(t_connection * conn, int numparams, char ** para
|
|||
snprintf(temp, sizeof(temp), "%s :End of NAMES list",wolname);
|
||||
irc_send(conn,RPL_ENDOFNAMES,temp);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (e)
|
||||
|
@ -878,8 +877,7 @@ static int _handle_part_command(t_connection * conn, int numparams, char ** para
|
|||
if ((conn_wol_get_ingame(conn) == 1)) {
|
||||
conn_wol_set_ingame(conn,0);
|
||||
}
|
||||
message_send_text(conn,message_type_part,conn,NULL);
|
||||
conn_set_channel(conn, NULL); /* In WOL we disconecting from the channel */
|
||||
conn_set_channel(conn, NULL); /* In WOL we disconecting from the channel */
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue