xbot/driver/settings.hpp

39 lines
860 B
C++
Raw Permalink Normal View History

2023-11-22 19:59:34 -08:00
#pragma once
2025-02-02 16:20:52 -08:00
#include <myirc/sasl_mechanism.hpp>
2023-11-27 19:09:45 -08:00
#include <istream>
2025-01-25 15:45:31 -08:00
#include <string>
2023-11-22 19:59:34 -08:00
struct Settings
{
std::string host;
2025-01-26 14:38:13 -08:00
std::uint16_t service;
2023-11-22 19:59:34 -08:00
std::string password;
std::string username;
std::string realname;
std::string nickname;
2025-01-25 14:12:37 -08:00
std::string sasl_mechanism;
2025-01-25 12:25:38 -08:00
std::string sasl_authcid;
std::string sasl_authzid;
std::string sasl_password;
2025-01-30 16:39:23 -08:00
std::string sasl_key_file;
std::string sasl_key_password;
2025-01-25 12:25:38 -08:00
2025-01-26 14:38:13 -08:00
std::string tls_hostname;
2025-01-31 08:38:14 -08:00
std::string tls_cert_file;
std::string tls_key_file;
std::string tls_key_password;
2025-01-27 18:55:19 -08:00
2025-01-28 17:15:13 -08:00
std::string challenge_username;
std::string challenge_key_file;
std::string challenge_key_password;
2025-01-26 14:38:13 -08:00
bool use_tls;
2025-01-25 15:45:31 -08:00
static auto from_stream(std::istream &in) -> Settings;
2023-11-22 19:59:34 -08:00
};
2025-02-02 16:20:52 -08:00
auto configure_sasl(const Settings &settings) -> std::unique_ptr<myirc::SaslMechanism>;