diff --git a/src/plugins/irc/irc-protocol.c b/src/plugins/irc/irc-protocol.c index 0499bf336..aacb44f4f 100644 --- a/src/plugins/irc/irc-protocol.c +++ b/src/plugins/irc/irc-protocol.c @@ -399,21 +399,15 @@ IRC_PROTOCOL_CALLBACK(account) IRC_PROTOCOL_CALLBACK(authenticate) { - int arg_data, sasl_mechanism; - char *ptr_data, *sasl_username, *sasl_password, *sasl_key, *answer; + int sasl_mechanism; + char *sasl_username, *sasl_password, *sasl_key, *answer; char *sasl_error; - IRC_PROTOCOL_MIN_ARGS(2); + IRC_PROTOCOL_MIN_PARAMS(1); if (!irc_server_sasl_enabled (server)) return WEECHAT_RC_OK; - arg_data = (argv[0][0] == ':') ? 2 : 1; - if (arg_data >= argc) - return WEECHAT_RC_OK; - ptr_data = (argv_eol[arg_data][0] == ':') ? - argv_eol[arg_data] + 1 : argv_eol[arg_data]; - irc_server_sasl_get_creds (server, &sasl_username, &sasl_password, &sasl_key); @@ -429,22 +423,22 @@ IRC_PROTOCOL_CALLBACK(authenticate) break; case IRC_SASL_MECHANISM_SCRAM_SHA_1: answer = irc_sasl_mechanism_scram ( - server, "sha1", ptr_data, + server, "sha1", params[0], sasl_username, sasl_password, &sasl_error); break; case IRC_SASL_MECHANISM_SCRAM_SHA_256: answer = irc_sasl_mechanism_scram ( - server, "sha256", ptr_data, + server, "sha256", params[0], sasl_username, sasl_password, &sasl_error); break; case IRC_SASL_MECHANISM_SCRAM_SHA_512: answer = irc_sasl_mechanism_scram ( - server, "sha512", ptr_data, + server, "sha512", params[0], sasl_username, sasl_password, &sasl_error); break; case IRC_SASL_MECHANISM_ECDSA_NIST256P_CHALLENGE: answer = irc_sasl_mechanism_ecdsa_nist256p_challenge ( - server, ptr_data, + server, params[0], sasl_username, sasl_key, &sasl_error); break; case IRC_SASL_MECHANISM_EXTERNAL: