/
isachkov
/
crypto_server
Обзор
Документация
Войти
/
isachkov
/
crypto_server
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/client_main.cpp
47 строк
1 KB
Ivan Sachkov
CryptoServer
15 май 2024, 20:26
15 май 2024, 20:26
9de0f1f
Код
Авторство
О чём код?
#include <crypto_chat/client.hpp> #include <boost/program_options.hpp> #include <iostream> namespace po = boost::program_options; int main(int argc, char** argv) { po::variables_map variables; po::options_description desc("Usage"); std::string address, port; // clang-format off desc.add_options() ("server", po::value<std::string>(&address)->required(), "Crypto server endpoint address") ("port", po::value<std::string>(&port)->required(), "Server port"); // clang-format on try { po::store(po::command_line_parser(argc, argv).options(desc).run(), variables); po::notify(variables); } catch (po::required_option& exc) { std::cout << "Missing argument: " << exc.what() << std::endl; desc.print(std::cout); return EXIT_FAILURE; } Executor executor; if (!executor.init()) { std::cout << "Could not init epoll executor!" << std::endl; return EXIT_FAILURE; } SSLProvider provider; if(!provider.init()) { std::cerr << "Could not init ssl provider!" << std::endl; return EXIT_FAILURE; } Client client{executor, provider}; client.set_server_location(std::move(address), std::move(port)); // First message sent to server is automatically considered your name! std::cout << "Enter your name:\n"; return client.run(); }