From a378205f48570c7d2b714ee1fc44c748b158726d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BD=D1=82=D0=BE=D0=BD?= Date: Thu, 28 Mar 2024 07:46:12 +0300 Subject: [PATCH] bind socket to all ip adresses on the host machine --- boost_boilerplate/CMakeLists.txt | 5 ++++ .../binding_socket_to_an_endpoint.cpp | 27 +++++++++++++++++++ 2 files changed, 32 insertions(+) create mode 100644 boost_boilerplate/binding_socket_to_an_endpoint.cpp diff --git a/boost_boilerplate/CMakeLists.txt b/boost_boilerplate/CMakeLists.txt index 235f756..4062ed8 100644 --- a/boost_boilerplate/CMakeLists.txt +++ b/boost_boilerplate/CMakeLists.txt @@ -45,3 +45,8 @@ add_executable(resolving_dns resolving_dns.cpp src/sdk.h) target_link_libraries(resolving_dns PRIVATE Threads::Threads) + +add_executable(binding_socket_to_an_endpoint + binding_socket_to_an_endpoint.cpp + src/sdk.h) +target_link_libraries(binding_socket_to_an_endpoint PRIVATE Threads::Threads) diff --git a/boost_boilerplate/binding_socket_to_an_endpoint.cpp b/boost_boilerplate/binding_socket_to_an_endpoint.cpp new file mode 100644 index 0000000..b4e58f6 --- /dev/null +++ b/boost_boilerplate/binding_socket_to_an_endpoint.cpp @@ -0,0 +1,27 @@ +#include "src/sdk.h" +#include +#include + +using namespace boost; +namespace sys = boost::system; +namespace net = boost::asio; +using namespace std; + +int main() +{ + unsigned short port = 3333; + asio::ip::tcp::endpoint ep(asio::ip::address_v4::any(), port); + asio::io_context io_context; + asio::ip::tcp::acceptor acceptor(io_context, ep.protocol()); + + sys::error_code ec; + + acceptor.bind(ep, ec); + + if (ec) + { + cout << "Failed to bind!" << endl; + } + + return EXIT_SUCCESS; +}