xbot/driver/settings.hpp
2025-02-02 16:20:52 -08:00

39 lines
860 B
C++

#pragma once
#include <myirc/sasl_mechanism.hpp>
#include <istream>
#include <string>
struct Settings
{
std::string host;
std::uint16_t service;
std::string password;
std::string username;
std::string realname;
std::string nickname;
std::string sasl_mechanism;
std::string sasl_authcid;
std::string sasl_authzid;
std::string sasl_password;
std::string sasl_key_file;
std::string sasl_key_password;
std::string tls_hostname;
std::string tls_cert_file;
std::string tls_key_file;
std::string tls_key_password;
std::string challenge_username;
std::string challenge_key_file;
std::string challenge_key_password;
bool use_tls;
static auto from_stream(std::istream &in) -> Settings;
};
auto configure_sasl(const Settings &settings) -> std::unique_ptr<myirc::SaslMechanism>;