diff options
Diffstat (limited to 'src/mongo/client/cyrus_sasl_client_session.h')
-rw-r--r-- | src/mongo/client/cyrus_sasl_client_session.h | 78 |
1 files changed, 40 insertions, 38 deletions
diff --git a/src/mongo/client/cyrus_sasl_client_session.h b/src/mongo/client/cyrus_sasl_client_session.h index 977b22d9a93..dde9bf154d9 100644 --- a/src/mongo/client/cyrus_sasl_client_session.h +++ b/src/mongo/client/cyrus_sasl_client_session.h @@ -32,55 +32,57 @@ namespace mongo { - /** - * Implementation of the client side of a SASL authentication conversation. - * using the Cyrus SASL library. - */ - class CyrusSaslClientSession : public SaslClientSession { - MONGO_DISALLOW_COPYING(CyrusSaslClientSession); - public: +/** + * Implementation of the client side of a SASL authentication conversation. + * using the Cyrus SASL library. + */ +class CyrusSaslClientSession : public SaslClientSession { + MONGO_DISALLOW_COPYING(CyrusSaslClientSession); - CyrusSaslClientSession(); - ~CyrusSaslClientSession(); +public: + CyrusSaslClientSession(); + ~CyrusSaslClientSession(); - /** - * Overriding to store the password data in sasl_secret_t format - */ - virtual void setParameter(Parameter id, StringData value); + /** + * Overriding to store the password data in sasl_secret_t format + */ + virtual void setParameter(Parameter id, StringData value); - /** - * Returns the value of the parameterPassword parameter in the form of a sasl_secret_t, used - * by the Cyrus SASL library's SASL_CB_PASS callback. The session object owns the storage - * referenced by the returned sasl_secret_t*, which will remain in scope according to the - * same rules as given for SaslClientSession::getParameter(). - */ - sasl_secret_t* getPasswordAsSecret(); + /** + * Returns the value of the parameterPassword parameter in the form of a sasl_secret_t, used + * by the Cyrus SASL library's SASL_CB_PASS callback. The session object owns the storage + * referenced by the returned sasl_secret_t*, which will remain in scope according to the + * same rules as given for SaslClientSession::getParameter(). + */ + sasl_secret_t* getPasswordAsSecret(); - virtual Status initialize(); + virtual Status initialize(); - virtual Status step(StringData inputData, std::string* outputData); + virtual Status step(StringData inputData, std::string* outputData); - virtual bool isDone() const { return _done; } + virtual bool isDone() const { + return _done; + } - private: - /// Maximum number of Cyrus SASL callbacks stored in _callbacks. - static const int maxCallbacks = 4; +private: + /// Maximum number of Cyrus SASL callbacks stored in _callbacks. + static const int maxCallbacks = 4; - /// Underlying Cyrus SASL library connection object. - sasl_conn_t* _saslConnection; + /// Underlying Cyrus SASL library connection object. + sasl_conn_t* _saslConnection; - // Number of successfully completed conversation steps. - int _step; + // Number of successfully completed conversation steps. + int _step; - /// See isDone(). - bool _done; + /// See isDone(). + bool _done; - /// Stored of password in sasl_secret_t format - std::unique_ptr<char[]> _secret; + /// Stored of password in sasl_secret_t format + std::unique_ptr<char[]> _secret; - /// Callbacks registered on _saslConnection for providing the Cyrus SASL library with - /// parameter values, etc. - sasl_callback_t _callbacks[maxCallbacks]; - }; + /// Callbacks registered on _saslConnection for providing the Cyrus SASL library with + /// parameter values, etc. + sasl_callback_t _callbacks[maxCallbacks]; +}; } // namespace mongo |