43 #ifndef _DWMAUTHUTILS_HH_ 44 #define _DWMAUTHUTILS_HH_ 51 #include <boost/asio.hpp> 63 using Clock = std::chrono::system_clock;
64 using TimePoint = std::chrono::time_point<Clock>;
66 static int BytesReady(
int fd);
68 static std::size_t BytesReady(boost::asio::ip::tcp::socket & sck);
71 WaitUntilBytesReady(
int fd, uint32_t numBytes, TimePoint endTime);
73 static bool WaitUntilBytesReady(boost::asio::ip::tcp::socket & sck,
74 uint32_t numBytes, TimePoint endTime);
76 static bool WaitForBytesReady(
int fd, uint32_t numBytes,
77 std::chrono::milliseconds timeout);
79 static bool WaitForBytesReady(boost::asio::ip::tcp::socket & sck,
81 std::chrono::milliseconds timeout);
83 static ssize_t ReadLengthRestrictedString(
int fd, std::string & s,
87 ReadLengthRestrictedString(boost::asio::ip::tcp::socket & sck,
88 std::string & s, uint32_t maxLen);
90 static std::istream & ReadLengthRestrictedString(std::istream & is,
95 ReadLengthRestrictedString(
int fd, std::string & s, uint32_t maxLen,
96 std::chrono::milliseconds timeout);
99 ReadLengthRestrictedString(
int fd, std::string & s,
100 uint32_t maxLen, TimePoint endTime);
103 ReadLengthRestrictedString(boost::asio::ip::tcp::socket & sck,
104 std::string & s, uint32_t maxLen,
112 #endif // _DWMAUTHUTILS_HH_ Collection of utility functions.
Definition: DwmAuthUtils.hh:60