1
0
Fork 0

proper sasl mechanism variable initialisation

This commit is contained in:
Ailin Nemui 2024-04-01 16:33:57 +02:00
parent 98b391f62e
commit 08bb648850
3 changed files with 12 additions and 2 deletions

View File

@ -148,8 +148,11 @@ static void sig_server_setup_fill_chatnet(IRC_SERVER_CONNECT_REC *conn,
"missing or empty");
} else if (!g_ascii_strcasecmp(ircnet->sasl_mechanism, "external")) {
conn->sasl_mechanism = SASL_MECHANISM_EXTERNAL;
} else
g_warning("Unsupported SASL mechanism \"%s\" selected", ircnet->sasl_mechanism);
} else {
g_warning("Unsupported SASL mechanism \"%s\" selected",
ircnet->sasl_mechanism);
conn->sasl_mechanism = SASL_MECHANISM_MAX;
}
}
}

View File

@ -475,6 +475,7 @@ SERVER_REC *irc_server_init_connect(SERVER_CONNECT_REC *conn)
server->send_message = send_message;
server->query_find_func = (QUERY_REC * (*) (SERVER_REC *, const char *) ) irc_query_find;
server->nick_comp_func = irc_nickcmp_rfc1459;
server->sasl_success = FALSE;
server_connect_init((SERVER_REC *) server);
return (SERVER_REC *) server;

View File

@ -92,6 +92,12 @@ static void sasl_start(IRC_SERVER_REC *server, const char *data, const char *fro
case SASL_MECHANISM_SCRAM_SHA_512:
irc_send_cmd_now(server, "AUTHENTICATE SCRAM-SHA-512");
break;
case SASL_MECHANISM_MAX:
signal_emit("server sasl failure", 2, server,
"Irssi: Unsupported SASL mechanism");
irc_cap_finish_negotiation(server);
return;
}
server->sasl_timeout = g_timeout_add(SASL_TIMEOUT, (GSourceFunc) sasl_timeout, server);
}