ASIO C-ARES is a C++14 library which allows the use of libcares with Boost.Asio. No need to manage select just use the provided composed asynchronous operations and run a boost::asio::io_service.
- Create an
asio_cares::libraryobject (an RAII wrapper for libcares global initialization/cleanup) - Create an
asio_cares::channelobject - Dispatch one or more questions on the channel using
async_send - Call
async_processor callasync_process_oneuntildonereturnstrue
done
channellibrarystring
async_processasync_process_oneasync_sendcancel
- Boost 1.58.0+
- libcares 1.13.0+
Other libraries are depended on, but are header only and are downloaded by CMake:
- Beast
- Catch
- MPark Variant
- Clang 4+ or GCC 6.2.0+ or Microsoft Visual C++ 2017+ (may work with earlier compilers, these are the oldest used for CI)
- CMake 3.5+
See unit tests.