You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by gs...@apache.org on 2014/07/08 12:40:15 UTC
svn commit: r1608711 - /qpid/trunk/qpid/cpp/src/qpid/SaslFactory.cpp
Author: gsim
Date: Tue Jul 8 10:40:14 2014
New Revision: 1608711
URL: http://svn.apache.org/r1608711
Log:
QPID-5883: improve error message a little for 'no-mech' sasl error
Modified:
qpid/trunk/qpid/cpp/src/qpid/SaslFactory.cpp
Modified: qpid/trunk/qpid/cpp/src/qpid/SaslFactory.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/SaslFactory.cpp?rev=1608711&r1=1608710&r2=1608711&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/SaslFactory.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/SaslFactory.cpp Tue Jul 8 10:40:14 2014
@@ -279,11 +279,11 @@ bool CyrusSasl::start(const std::string&
secprops.maxbufsize = 65535;
QPID_LOG(debug, "min_ssf: " << secprops.min_ssf << ", max_ssf: " << secprops.max_ssf);
-
+
secprops.property_names = 0;
secprops.property_values = 0;
secprops.security_flags = 0;//TODO: provide means for application to configure these
-
+
result = sasl_setprop(conn, SASL_SEC_PROPS, &secprops);
if (result != SASL_OK) {
throw framing::InternalErrorException(QPID_MSG("SASL error: " << sasl_errdetail(conn)));
@@ -307,7 +307,13 @@ bool CyrusSasl::start(const std::string&
}
} while (result == SASL_INTERACT);
- if (result != SASL_CONTINUE && result != SASL_OK) {
+ if (result == SASL_NOMECH) {
+ if (mechanisms.size()) {
+ throw qpid::Exception(std::string("Can't authenticate using ") + mechanisms);
+ } else {
+ throw qpid::Exception("No mutually acceptable authentication mechanism");
+ }
+ } else if (result != SASL_CONTINUE && result != SASL_OK) {
throw InternalErrorException(QPID_MSG("Sasl error: " << sasl_errdetail(conn)));
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org