ClickHouse/base/poco
Azat Khuzhin ef24f51789 Fix handling of SSL_ERROR_WANT_READ/SSL_ERROR_WANT_WRITE with zero timeout
Previously if you were using socket without timeout it wasn't able to
handle SSL_ERROR_WANT_READ/SSL_ERROR_WANT_WRITE, and even though sockets
without timeouts is an odd thing (but it is possible - [1]), it still
may be possible somewhere.

  [1]: https://github.com/ClickHouse/ClickHouse/pull/65917

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2024-07-01 19:33:39 +02:00
..
Crypto Revert "Suppress false positives in leaksan" 2024-06-19 08:30:44 +00:00
Data Merge branch 'master' into fix-comment 2023-08-10 17:03:31 +03:00
Foundation Initialize global trace collector for Poco::ThreadPool 2024-06-13 19:20:58 +02:00
JSON Fix build with clang-19 (master) 2024-04-03 05:42:41 +02:00
MongoDB Fix MongoDB connection issues 2023-10-09 14:46:48 +00:00
Net Revert "Use 1MB HTTP buffers to avoid frequent send syscalls" 2024-06-20 17:06:18 +02:00
NetSSL_OpenSSL Fix handling of SSL_ERROR_WANT_READ/SSL_ERROR_WANT_WRITE with zero timeout 2024-07-01 19:33:39 +02:00
Redis Remove Windows 2023-02-14 22:13:11 +00:00
Util Correctly handle keys with dot in the name in configurations XMLs 2023-12-29 17:30:23 +01:00
XML Remove Windows 2023-02-14 22:13:11 +00:00
CMakeLists.txt More fine-granular warning relaxation 2023-02-08 11:21:59 +00:00
LICENSE Move poco to base/poco/ (#46075) 2023-02-08 12:04:11 +01:00
README.md Move poco to base/poco/ (#46075) 2023-02-08 12:04:11 +01:00

alt text

Travis Build Status Build status CII Best Practices

POCO (Portable Components) C++ Libraries are:

  • A collection of C++ class libraries, conceptually similar to the Java Class Library, the .NET Framework or Apples Cocoa.
  • Focused on solutions to frequently-encountered practical problems.
  • Focused on internet-age network-centric applications.
  • Written in efficient, modern, 100% ANSI/ISO Standard C++.
  • Based on and complementing the C++ Standard Library/STL.
  • Highly portable and available on many different platforms, from embedded to server.
  • Open Source, licensed under the Boost Software License.

alt text


To start using POCO, see the Guided Tour and Getting Started documents.


POCO has an active user and contributing community, please visit our web site and blog. Answers to POCO-related questions can also be found on Stack Overflow.

Please see CONTRIBUTING for submitting contributions, bugs reports, feature requests or security issues.


In regards to Boost, in spite of some functional overlapping, POCO is best thought of as a Boost complement (rather than replacement). Side-by-side use of Boost and POCO is a very common occurrence.