887 Commits

Author SHA1 Message Date
Matej Kenda
15d987fbb0
enh(cmake): Add option POCO_ENABLE_CPP20 to enable C++20 when compiling Poco (#4956)
* enh(cmake): Add option POCO_CXX20 to enable standard C++20 and related changes.

* chore(cmake): do not allow C++20 setting for compilers that do not support it properly.

* fix(NetSSL_Win): indentation.
2025-05-28 15:35:28 +02:00
Günter Obiltschnig
4e27f7f0e2 fix(NTLMCredentials): fix potentially uninitialized variable 2025-04-18 13:37:08 +02:00
Günter Obiltschnig
11619a9e95 fix(Net): A SEGV at Net/src/MultipartReader.cpp:164:1 #4915 (move assertion out of ctor) 2025-04-16 09:15:33 +02:00
Günter Obiltschnig
a0822e02ca fix(Net): A SEGV at Net/src/MultipartReader.cpp:164:1 #4915 2025-04-15 22:11:47 +02:00
Günter Obiltschnig
eaf6e28327 fix(Net): Another crash in Poco::Net::NTLMCredentials::parseChallengeMessage #4936 2025-04-15 21:31:26 +02:00
Günter Obiltschnig
4de2afcd1f fix(Net): HTTP client request body RFC compliance #4935 2025-04-15 19:38:13 +02:00
Günter Obiltschnig
3c9b65388c fix(Net): HTTP server request body RFC compliance #4935 2025-04-15 19:17:41 +02:00
alex
c0ea5579e9
Fix wrong/mistaken type comparisons。 (#4931) 2025-04-12 14:28:27 +02:00
Günter Obiltschnig
ecc0e9b674 fix(Net): Crash in Poco::Net::NTLMCredentials::parseChallengeMessage #4926 2025-04-09 21:30:30 +02:00
Jonas Bülow
d020166423 Fix warning deprecated-enum-enum-conversion on clang 2025-04-09 16:12:14 +02:00
Miracle-1996
e758e7e2a6
add_subdirectory(tcpclient) (#4904) 2025-03-20 19:03:40 +01:00
Aleksandar Fabijanic
8fb80fd76e
fix(VarHolder): MSVC warning #4886 (#4903)
* fix(VarHolder): MSVC warning #4886

* fix(VarHolder): do not convert unsigned #4886

* chore(SocketImpl): eliminate MSVC warning

* fix(VarHolder): do not convert unsigned (extract unpreserveSign()) #4886

* chore(testsuite): eliminate MSVC warnings

* chore(VarHolder): simplify unpreserveSign using constexpr.

---------

Co-authored-by: Matej Kenda <matejken@gmail.com>
2025-03-20 12:34:55 +01:00
Aleksandar Fabijanic
eb94de03a6
fix(TCPServer): continues to accept connections after stop() #4892 (#4896)
* fix(TCPServer): continues to accept connections after stop() #4892

* fix(TCPServer): first attempt to silence TSAN #4892

* fix(TCPServer): check stopped status after poll; add TCPServerFactory::stop() and allow factory to return nullptr on connection creation request #4892

* fix(TCPServer): initialize factory stopped flag #4892

* revert(SocketImpl): atomic sock fd
2025-03-12 22:15:19 +01:00
Lara Dzivdzanovic
4c70cfca68 Fix testSocketAddress for updated pocoproject.org IP 2025-03-11 09:41:37 +01:00
Günter Obiltschnig
7dd2024c9e fix(Net): WebSocket receiveFrame() keeps returning the same frame when no payload (flags/header only) #4884 2025-02-27 20:52:02 +01:00
Günter Obiltschnig
f32e3d0b90 enh(Net): SocketImpl::sendFile() sends entire contents by repeatedly calling sendfile() if necessary 2025-02-09 16:03:51 +01:00
Günter Obiltschnig
a70fe2b045 enh(Net): SocketImpl::sendFile() - remove signal handling (not thread safe and already done elsewhere); fix wrong signed/unsigned types; cleanup 2025-02-09 14:00:16 +01:00
Günter Obiltschnig
47a77751fb fix(tests): another attempt at fixing the flaky testSendFile*() 2025-02-08 18:04:36 +01:00
Günter Obiltschnig
db88e0ec00 fix(test): fix flaky test 2025-02-08 15:20:14 +01:00
Günter Obiltschnig
24ff931071 fix(Net): Issue concerning Net/CMakeLists.txt detection of HAVE_SENDFILE #4852 2025-02-08 13:48:14 +01:00
Günter Obiltschnig
a1abf9659d enh(Net): additional tests for StreamSocket::sendFile() 2025-02-08 13:02:43 +01:00
Günter Obiltschnig
66c1d30bb4 enh(Net): StreamSocket::sendFile() takes additional count parameter 2025-02-08 12:57:24 +01:00
Günter Obiltschnig
3d8040bb17 fix(tests): remove unused variables 2025-02-07 20:43:28 +01:00
Günter Obiltschnig
6fb0debd71 chore: add test for sendFile() 2025-02-07 18:42:17 +01:00
Günter Obiltschnig
13029fb524 fix(Net): fix SocketImpl::sendFile() #4831 2025-02-07 18:06:14 +01:00
Günter Obiltschnig
5cab3be5c4 enh(Net): add HTTPBufferPoolAllocator::pool() to get read-only access to the underlying MemoryPool 2025-02-03 09:33:52 +01:00
Günter Obiltschnig
705403d4f6 fix(Net): WebSocket: non-blocking receiveFrame()/receiveBytes() with TLS connection may get stuck receiving header #4850 2025-01-15 21:36:36 +01:00
Mikhail Khachayants
16e17b2c33 fix(Net) Use of Uninitialized value in NTLMCredentials::parseChallengeMessage 2025-01-10 22:55:03 +02:00
Günter Obiltschnig
5652837b8f
Merge pull request #4838 from d3matt/odd_nonblocking_receive_incorrect_mask
fix(Net) bad mask with odd number of bytes
2025-01-08 19:14:41 +01:00
Lara Dzivdzanovic
336e0e802f
enh(SocketReactor): Add start() method #4833 (#4835) 2025-01-08 15:48:58 +01:00
Matthew Stoltenberg
0cc3ab4d13 fix(Net) bad mask with odd number of bytes
Receiving an odd number of bytes in non-blocking mode results in using the wrong bytes to unmask the payload. Keep track of the number of payload bytes that have been unmasked.
2025-01-06 16:57:25 -07:00
Günter Obiltschnig
854d8c89d6 enh(Net): Poco::Net::HTTPResponse: add replaceCookie() and removeCookie() #4825 2024-12-19 10:46:06 +01:00
Günter Obiltschnig
1811f2f35c fix(NetSSL): shutdown behavior 2024-11-28 08:19:45 +01:00
Matej Kenda
76ea8c74c8 enh(C++17): Net: Modernisation of socket class declarations. 2024-11-19 21:45:40 +01:00
Matej Kenda
efb0745efc enh(SocketReactor): Introduce protected accessors to private members to be used in derived classes. 2024-11-19 21:45:40 +01:00
Milan Tepic
64d8777a0e feat(WindowsBuild): customizable path to include for pocoNetworkInitializer #4769 2024-11-19 16:40:51 +01:00
Günter Obiltschnig
2815ea45a9 enh(Net): add PollSet::size(); mark PollSet::count() as deprecated 2024-11-17 22:16:52 +01:00
Günter Obiltschnig
163509eb57 fix(WebSocket): re-add assignment operators 2024-11-16 18:56:03 +01:00
Günter Obiltschnig
63b4bfd8ba chore(WebSocket): docs 2024-11-16 18:42:38 +01:00
Günter Obiltschnig
cedd086362 feat(Net): Non-blocking WebSocket #4773 2024-11-16 16:49:50 +01:00
Günter Obiltschnig
5d69308bfd fix(Net): Non-blocking sockets support #4773 2024-11-16 16:48:48 +01:00
Alex Fabijanic
60a45e4bb3 chore: remove misplaced comment 2024-10-31 08:09:52 -05:00
Alex Fabijanic
c3abc7b1ec fix(IPAddress): windows scoped test, part II #4644 2024-10-30 22:41:11 -05:00
Alex Fabijanic
13ea31f442 fix(IPAddress): windows scoped test #4644 2024-10-30 22:16:27 -05:00
Alex Fabijanic
c77d021790 fix(IPAddress): TryParse scoped ipv6 addressess for addresses enclosed in [ ] #4644 2024-10-31 00:39:37 +01:00
Eric Eichhorn
82c17ea813 fix: aix build #4742 2024-10-23 13:51:06 +02:00
tyler92
aa0faed54f
test: move fuzzing tests from google/oss-fuzz repository (#4719) 2024-10-10 13:30:10 +02:00
Aleksandar Fabijanic
eaabd3ff8d
Stack trace (#4691)
* chore(Trace): add dev env settings

* add(Trace): init add Poco::trace and libbacktrace files

* feat(Exception): generate stack trace if enabled at compile time

* chore(DNSSD): remove binaries from git

* fix(Trace): build

* chore(ci): exclude exception text tests for trace build; add debug test script params

* chore(build): mac (dl)

* chore(cmake): Changes to build Trace with CMake.

* chore(cmake): Changes to build Trace on Windows

* chore(cmake): Improvements to include trace sample.

* chore(cmake): Fixes to properly build/link Trace on Linux

* chore(cmake): add_definitions --> add_compile_definitions

* chore(cmake): Build Trace as static and don't export it.

* chore(make): Link Trace with built-in libbacktrace on Linux

* chore(Trace): remove unnecessary sources for libbacktrace.

* chore(github): enable trace on a few github checks

* chore(cmake): Build Trace with clang++ on Linux.

* chore(cmake): Properly set POCO_ENABLE_TRACE globally when needed.

* fix(cmake): Trace: corrected include for clang on Linux

---------

Co-authored-by: Matej Kenda <matejken@gmail.com>
2024-10-10 10:36:13 +02:00
Günter Obiltschnig
db1cc9507b fix(Net): HTTPCookie Constructor Fails to Handle Discard Attribute Properly (#4664) 2024-09-26 11:25:44 +02:00
Günter Obiltschnig
42ccb0d96d enh(Net): SMTPClientSession: replace bare newlines in message content with CRLF (#4689) 2024-09-26 11:16:36 +02:00