diff options
author | Mark Benvenuto <mark.benvenuto@mongodb.com> | 2015-06-20 00:22:50 -0400 |
---|---|---|
committer | Mark Benvenuto <mark.benvenuto@mongodb.com> | 2015-06-20 10:56:02 -0400 |
commit | 9c2ed42daa8fbbef4a919c21ec564e2db55e8d60 (patch) | |
tree | 3814f79c10d7b490948d8cb7b112ac1dd41ceff1 /src/mongo/client/sasl_client_authenticate.h | |
parent | 01965cf52bce6976637ecb8f4a622aeb05ab256a (diff) | |
download | mongo-9c2ed42daa8fbbef4a919c21ec564e2db55e8d60.tar.gz |
SERVER-18579: Clang-Format - reformat code, no comment reflow
Diffstat (limited to 'src/mongo/client/sasl_client_authenticate.h')
-rw-r--r-- | src/mongo/client/sasl_client_authenticate.h | 222 |
1 files changed, 111 insertions, 111 deletions
diff --git a/src/mongo/client/sasl_client_authenticate.h b/src/mongo/client/sasl_client_authenticate.h index fe9e5918781..d1f2e36346d 100644 --- a/src/mongo/client/sasl_client_authenticate.h +++ b/src/mongo/client/sasl_client_authenticate.h @@ -32,115 +32,115 @@ #include "mongo/client/dbclientinterface.h" namespace mongo { - class BSONObj; - - /** - * Attempts to authenticate "client" using the SASL protocol. - * - * Do not use directly in client code. Use the DBClientWithCommands::auth(const BSONObj&) - * method, instead. - * - * Test against NULL for availability. Client driver must be compiled with SASL support _and_ - * client application must have successfully executed mongo::runGlobalInitializersOrDie() or its - * ilk to make this functionality available. - * - * The "saslParameters" BSONObj should be initialized with zero or more of the - * fields below. Which fields are required depends on the mechanism. Consult the - * relevant IETF standards. - * - * "mechanism": The std::string name of the sasl mechanism to use. Mandatory. - * "autoAuthorize": Truthy values tell the server to automatically acquire privileges on - * all resources after successful authentication, which is the default. Falsey values - * instruct the server to await separate privilege-acquisition commands. - * "user": The std::string name of the user to authenticate. - * "db": The database target of the auth command, which identifies the location - * of the credential information for the user. May be "$external" if credential - * information is stored outside of the mongo cluster. - * "pwd": The password. - * "serviceName": The GSSAPI service name to use. Defaults to "mongodb". - * "serviceHostname": The GSSAPI hostname to use. Defaults to the name of the remote host. - * - * Other fields in saslParameters are silently ignored. - * - * Returns an OK status on success, and ErrorCodes::AuthenticationFailed if authentication is - * rejected. Other failures, all of which are tantamount to authentication failure, may also be - * returned. - */ - extern Status (*saslClientAuthenticate)(DBClientWithCommands* client, - const BSONObj& saslParameters); - - /** - * Extracts the payload field from "cmdObj", and store it into "*payload". - * - * Sets "*type" to the BSONType of the payload field in cmdObj. - * - * If the type of the payload field is String, the contents base64 decodes and - * stores into "*payload". If the type is BinData, the contents are stored directly - * into "*payload". In all other cases, returns - */ - Status saslExtractPayload(const BSONObj& cmdObj, std::string* payload, BSONType* type); - - // Constants - - /// std::string name of the saslStart command. - extern const char* const saslStartCommandName; - - /// std::string name of the saslContinue command. - extern const char* const saslContinueCommandName; - - /// Name of the saslStart parameter indicating that the server should automatically grant the - /// connection all privileges associated with the user after successful authentication. - extern const char* const saslCommandAutoAuthorizeFieldName; - - /// Name of the field contain the status code in responses from the server. - extern const char* const saslCommandCodeFieldName; - - /// Name of the field containing the conversation identifier in server respones and saslContinue - /// commands. - extern const char* const saslCommandConversationIdFieldName; - - /// Name of the field that indicates whether or not the server believes authentication has - /// completed successfully. - extern const char* const saslCommandDoneFieldName; - - /// Field in which to store error messages associated with non-success return codes. - extern const char* const saslCommandErrmsgFieldName; - - /// Name of parameter to saslStart command indiciating the client's desired sasl mechanism. - extern const char* const saslCommandMechanismFieldName; - - /// In the event that saslStart supplies an unsupported mechanism, the server responds with a - /// field by this name, with a list of supported mechanisms. - extern const char* const saslCommandMechanismListFieldName; - - /// Field containing password information for saslClientAuthenticate(). - extern const char* const saslCommandPasswordFieldName; - - /// Field containing sasl payloads passed to and from the server. - extern const char* const saslCommandPayloadFieldName; - - /// Field containing the std::string identifier of the user to authenticate in - /// saslClientAuthenticate(). - extern const char* const saslCommandUserFieldName; - - /// Field containing the std::string identifier of the database containing credential information, - /// or "$external" if the credential information is stored outside of the mongo cluster. - extern const char* const saslCommandUserDBFieldName; - - /// Field overriding the FQDN of the hostname hosting the mongodb srevice in - /// saslClientAuthenticate(). - extern const char* const saslCommandServiceHostnameFieldName; - - /// Field overriding the name of the mongodb service saslClientAuthenticate(). - extern const char* const saslCommandServiceNameFieldName; - - /// Default database against which sasl authentication commands should run. - extern const char* const saslDefaultDBName; - - /// Default sasl service name, "mongodb". - extern const char* const saslDefaultServiceName; - - // Field whose value should be set to true if the field in saslCommandPasswordFieldName needs to - // be digested. - extern const char* const saslCommandDigestPasswordFieldName; +class BSONObj; + +/** + * Attempts to authenticate "client" using the SASL protocol. + * + * Do not use directly in client code. Use the DBClientWithCommands::auth(const BSONObj&) + * method, instead. + * + * Test against NULL for availability. Client driver must be compiled with SASL support _and_ + * client application must have successfully executed mongo::runGlobalInitializersOrDie() or its + * ilk to make this functionality available. + * + * The "saslParameters" BSONObj should be initialized with zero or more of the + * fields below. Which fields are required depends on the mechanism. Consult the + * relevant IETF standards. + * + * "mechanism": The std::string name of the sasl mechanism to use. Mandatory. + * "autoAuthorize": Truthy values tell the server to automatically acquire privileges on + * all resources after successful authentication, which is the default. Falsey values + * instruct the server to await separate privilege-acquisition commands. + * "user": The std::string name of the user to authenticate. + * "db": The database target of the auth command, which identifies the location + * of the credential information for the user. May be "$external" if credential + * information is stored outside of the mongo cluster. + * "pwd": The password. + * "serviceName": The GSSAPI service name to use. Defaults to "mongodb". + * "serviceHostname": The GSSAPI hostname to use. Defaults to the name of the remote host. + * + * Other fields in saslParameters are silently ignored. + * + * Returns an OK status on success, and ErrorCodes::AuthenticationFailed if authentication is + * rejected. Other failures, all of which are tantamount to authentication failure, may also be + * returned. + */ +extern Status (*saslClientAuthenticate)(DBClientWithCommands* client, + const BSONObj& saslParameters); + +/** + * Extracts the payload field from "cmdObj", and store it into "*payload". + * + * Sets "*type" to the BSONType of the payload field in cmdObj. + * + * If the type of the payload field is String, the contents base64 decodes and + * stores into "*payload". If the type is BinData, the contents are stored directly + * into "*payload". In all other cases, returns + */ +Status saslExtractPayload(const BSONObj& cmdObj, std::string* payload, BSONType* type); + +// Constants + +/// std::string name of the saslStart command. +extern const char* const saslStartCommandName; + +/// std::string name of the saslContinue command. +extern const char* const saslContinueCommandName; + +/// Name of the saslStart parameter indicating that the server should automatically grant the +/// connection all privileges associated with the user after successful authentication. +extern const char* const saslCommandAutoAuthorizeFieldName; + +/// Name of the field contain the status code in responses from the server. +extern const char* const saslCommandCodeFieldName; + +/// Name of the field containing the conversation identifier in server respones and saslContinue +/// commands. +extern const char* const saslCommandConversationIdFieldName; + +/// Name of the field that indicates whether or not the server believes authentication has +/// completed successfully. +extern const char* const saslCommandDoneFieldName; + +/// Field in which to store error messages associated with non-success return codes. +extern const char* const saslCommandErrmsgFieldName; + +/// Name of parameter to saslStart command indiciating the client's desired sasl mechanism. +extern const char* const saslCommandMechanismFieldName; + +/// In the event that saslStart supplies an unsupported mechanism, the server responds with a +/// field by this name, with a list of supported mechanisms. +extern const char* const saslCommandMechanismListFieldName; + +/// Field containing password information for saslClientAuthenticate(). +extern const char* const saslCommandPasswordFieldName; + +/// Field containing sasl payloads passed to and from the server. +extern const char* const saslCommandPayloadFieldName; + +/// Field containing the std::string identifier of the user to authenticate in +/// saslClientAuthenticate(). +extern const char* const saslCommandUserFieldName; + +/// Field containing the std::string identifier of the database containing credential information, +/// or "$external" if the credential information is stored outside of the mongo cluster. +extern const char* const saslCommandUserDBFieldName; + +/// Field overriding the FQDN of the hostname hosting the mongodb srevice in +/// saslClientAuthenticate(). +extern const char* const saslCommandServiceHostnameFieldName; + +/// Field overriding the name of the mongodb service saslClientAuthenticate(). +extern const char* const saslCommandServiceNameFieldName; + +/// Default database against which sasl authentication commands should run. +extern const char* const saslDefaultDBName; + +/// Default sasl service name, "mongodb". +extern const char* const saslDefaultServiceName; + +// Field whose value should be set to true if the field in saslCommandPasswordFieldName needs to +// be digested. +extern const char* const saslCommandDigestPasswordFieldName; } |