27 #ifndef PDCOM5_SIMPLELOGINMANAGER_H 28 #define PDCOM5_SIMPLELOGINMANAGER_H 30 #include "pdcom5-sasl_export.h" 33 #include <pdcom5/Sasl.h> 37 extern "C" struct sasl_callback;
41 class SimpleLoginManager;
59 friend class impl::SimpleLoginManager;
60 std::unique_ptr<impl::SimpleLoginManager> impl_;
61 void loginReply(
const char *mechlist,
const char *serverData,
int finished)
72 static void InitLibrary(
const char *plugin_path =
nullptr);
75 static void FinalizeLibrary();
84 const char *remote_host,
85 sasl_callback *additional_callbacks =
nullptr);
161 virtual void completed(LoginResult result) = 0;
168 virtual void log(
int level,
const char *message);
173 #endif // PDCOM5_SIMPLELOGINMANAGER_H virtual std::string getPassword()
Callback to get password.
Definition: SimpleLoginManager.h:134
virtual std::string getAuthname()
Callback to get login name.
Definition: SimpleLoginManager.h:131
virtual std::string interact(unsigned long, const char *, const char *, const char *)
SASL interact callback.
Definition: SimpleLoginManager.h:149
LoginResult
Result of login operation.
Definition: SimpleLoginManager.h:99
Exception for callback cancelation.
Definition: SimpleLoginManager.h:95
virtual std::string getOption(const char *, const char *)
SASL get option callback.
Definition: SimpleLoginManager.h:144
virtual std::string getRealm(const std::vector< const char *> &)
Callback to get realm.
Definition: SimpleLoginManager.h:138
Wrapper for Cyrus SASL library.
Definition: SimpleLoginManager.h:57
SASL Interface for PdCom.
Definition: Sasl.h:41
void logout()
Logout from server.
Definition: ClientStatistics.h:31