#include <sbuild-auth-conv.h>
Inheritance diagram for sbuild::auth_conv:
Public Types | |
typedef runtime_error_custom< auth_conv > | error |
Exception type. | |
typedef std::vector< auth_message > | message_list |
A list of messages. | |
Public Member Functions | |
auth_conv () | |
The constructor. | |
virtual | ~auth_conv () |
The destructor. | |
virtual time_t | get_warning_timeout ()=0 |
Get the time at which the user will be warned. | |
virtual void | set_warning_timeout (time_t timeout)=0 |
Set the time at which the user will be warned. | |
virtual time_t | get_fatal_timeout ()=0 |
Get the time at which the conversation will be terminated with an error. | |
virtual void | set_fatal_timeout (time_t timeout)=0 |
Set the time at which the conversation will be terminated with an error. | |
virtual bool | conversation (message_list &messages)=0 |
Hold a conversation with the user. |
This interface should be implemented by objects which handle interaction with the user during authentication.
This is a wrapper around the struct pam_conv PAM conversation interface, and is used by auth when interacting with the user during authentication.
A simple implementation is provided in the form of auth_conv_tty. However, more complex implementations might hook into an event loop for GUI widget system.
The interface allows the setting of optional warning timeout and fatal timeout values, which should default to 0 (not enabled). This is an absolute time after which a warning is displayed or the conversation ends with an error.
|
Exception type.
|
|
A list of messages.
|
|
The constructor.
|
|
The destructor.
|
|
Hold a conversation with the user. Each of the messages detailed in messages should be displayed to the user, asking for input where required. The type of message is indicated in the auth_message::message_type field of the auth_message. The auth_message::response field of the auth_message should be filled in if input is required.
|
|
Get the time at which the conversation will be terminated with an error.
Implemented in sbuild::auth_conv_tty. |
|
Get the time at which the user will be warned.
Implemented in sbuild::auth_conv_tty. |
|
Set the time at which the conversation will be terminated with an error.
Implemented in sbuild::auth_conv_tty. |
|
Set the time at which the user will be warned.
Implemented in sbuild::auth_conv_tty. |