From f95aa13d5bd341e4943047b2a92f5c19fe31e7c6 Mon Sep 17 00:00:00 2001 From: Bram Matthys Date: Sun, 3 Apr 2016 11:53:59 +0200 Subject: [PATCH] Send RPL_SASLMECHS to clients (#4253, patch from grawity) --- include/numeric.h | 1 + src/modules/m_sasl.c | 2 ++ src/s_err.c | 2 +- 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/include/numeric.h b/include/numeric.h index cbd007a91..ab5e7960e 100644 --- a/include/numeric.h +++ b/include/numeric.h @@ -389,5 +389,6 @@ #define ERR_SASLTOOLONG 905 #define ERR_SASLABORTED 906 #define ERR_SASLALREADY 907 +#define RPL_SASLMECHS 908 #define ERR_NUMERICERR 999 diff --git a/src/modules/m_sasl.c b/src/modules/m_sasl.c index fe63d3154..51ed0eae7 100644 --- a/src/modules/m_sasl.c +++ b/src/modules/m_sasl.c @@ -198,6 +198,8 @@ CMD_FUNC(m_sasl) *target_p->local->sasl_agent = '\0'; } + else if (*parv[3] == 'M') + sendto_one(target_p, err_str(RPL_SASLMECHS), me.name, BadPtr(target_p->name) ? "*" : target_p->name, parv[4]); return 0; } diff --git a/src/s_err.c b/src/s_err.c index 22fd799d3..54b5da842 100644 --- a/src/s_err.c +++ b/src/s_err.c @@ -960,7 +960,7 @@ static char *replies[] = { /* 905 ERR_SASLTOOLONG */ ":%s 905 %s :SASL message too long", /* 906 ERR_SASLABORTED */ ":%s 906 %s :SASL authentication aborted", /* 907 ERR_SASLALREADY */ ":%s 907 %s :You have already completed SASL authentication", -/* 908 */ NULL, +/* 908 RPL_SASLMECHS */ ":%s 908 %s %s :are available SASL mechanisms", /* 909 */ NULL, /* 910 */ NULL, /* 911 */ NULL,