Class Mongo::Auth::X509::Conversation
In: lib/mongo/auth/x509/conversation.rb
Parent: Object

Defines behavior around a single x.509 conversation between the client and server.

@since 2.0.0

Methods

finalize   new   start  

Constants

LOGIN = { authenticate: 1 }.freeze   The login message.

@since 2.0.0

Attributes

reply  [R]  @return [ Protocol::Message ] reply The current reply in the
  conversation.
user  [R]  @return [ User ] user The user for the conversation.

Public Class methods

Create the new conversation.

@example Create the new conversation.

  Conversation.new(user, "admin")

@param [ Auth::User ] user The user to converse about.

@since 2.0.0

Public Instance methods

Finalize the x.509 conversation. This is meant to be iterated until the provided reply indicates the conversation is finished.

@example Finalize the conversation.

  conversation.finalize(reply)

@param [ Protocol::Message ] reply The reply of the previous

  message.

@return [ Protocol::Query ] The next message to send.

@since 2.0.0

Start the x.509 conversation. This returns the first message that needs to be sent to the server.

@example Start the conversation.

  conversation.start

@param [ Mongo::Server::Connection ] connection The connection being authenticated.

@return [ Protocol::Query ] The first x.509 conversation message.

@since 2.0.0

[Validate]