Commit 2a46b582 authored by jan.koester's avatar jan.koester
Browse files

timeout httpclient

parent cde2aa6a
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -493,7 +493,8 @@ size_t libhttppp::HttpClient::_recvNonBlocking(netplus::buffer &b) {

// Efficient send: uses socketwait::waitWrite() instead of busy-waiting
void libhttppp::HttpClient::_sendAll(const char *data, size_t len) {
    auto deadline = std::chrono::steady_clock::now() + std::chrono::seconds(_sendTimeoutSec);
    int send_sec = _sendTimeoutSec > 0 ? _sendTimeoutSec : 30;
    auto deadline = std::chrono::steady_clock::now() + std::chrono::seconds(send_sec);
    size_t off = 0;
    while (off < len) {
        netplus::buffer buf(data + off, len - off);
+1 −1
Original line number Diff line number Diff line
@@ -125,7 +125,7 @@ namespace libhttppp {
      int readchunk(const char *data,int datasize,int &pos);

      // Non-blocking I/O helpers using poll() for efficient waiting
      size_t _recvBlocking(netplus::buffer &b, int timeout_sec = 60);
      size_t _recvBlocking(netplus::buffer &b, int timeout_sec = 0);
      // Returns 0 on EAGAIN (no data yet), otherwise bytes read
      size_t _recvNonBlocking(netplus::buffer &b);
      void _sendAll(const char *data, size_t len);