* Remove unused options from rublon default config * Remove safe|secure options * Allow 9 digits long passcode for passcode bypass * Change name of 'Mobile Passcode' to 'Passcode' * Do not display any prompt when user is waiting * remove unused alloca.h header * Add autopushPrompt option * Change name OTP method * Change enrolement message handling * add static string ctor * Addded postrm script * [bugfix] Restart sshd service after rublon package instalation * Rename 01_rublon_ssh.conf to 01-rublon-ssh.conf * Prepared scripts for generating rpm for alma nad rocky * Adding public key authentication option * Add postinst script and ssh configuration for using pubkey * Add GCC 7 compatybility * Cleanup includes, cleanup std::array usage * Add Static String implementation * Remove memory_resources * Add monotonic_buffer_resource in experimental c++ imlpementation * Use case insensitive map * Remove not needed code
31 lines
671 B
C++
Executable File
31 lines
671 B
C++
Executable File
#pragma once
|
|
|
|
#include <tl/expected.hpp>
|
|
|
|
#include <rublon/bits.hpp>
|
|
#include <rublon/finish.hpp>
|
|
#include <rublon/json.hpp>
|
|
#include <rublon/session.hpp>
|
|
|
|
namespace rublon {
|
|
|
|
class RublonFactory {
|
|
public:
|
|
tl::expected< Session, Error > startSession(const Pam_t & pam) {
|
|
details::initLog();
|
|
|
|
auto config = ConfigurationFactory{}.systemConfig();
|
|
|
|
if(not config.has_value()) {
|
|
pam.print("The configuration file does not exist or contains incorrect values");
|
|
return tl::unexpected{ConfigurationError{}};
|
|
}
|
|
|
|
return Session{pam, config.value()};
|
|
}
|
|
};
|
|
|
|
} // namespace rublon
|
|
|
|
#include <rublon/init.hpp>
|