forked from pool/cpp-httplib
Compare commits
19 Commits
Author | SHA256 | Date | |
---|---|---|---|
d6a441f337 | |||
12f2a4e7cd | |||
074920ce45 | |||
4e4cc18e88 | |||
dc2a97a05f | |||
da571aaa0e | |||
a0de67286f | |||
469f244f62 | |||
38eadfddc6 | |||
ac75ac1979 | |||
d20b1c1a21 | |||
32f9caf302 | |||
625899f15d | |||
94dbd2a452 | |||
4876e7e3bf | |||
1df78ffd75 | |||
8aa9e82f54 | |||
cb90b6e91c | |||
8536137bbd |
3
_service
3
_service
@@ -1,3 +0,0 @@
|
||||
<services>
|
||||
<service name="download_files" mode="manual"/>
|
||||
</services>
|
@@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:8d6a4a40ee8fd3f553b7e895882e60e674bd910883fc1857587dbbabee3cdb91
|
||||
size 1151103
|
3
cpp-httplib-0.24.0.tar.gz
Normal file
3
cpp-httplib-0.24.0.tar.gz
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:bb788d1ccf6654af77b63f4f3f01f9d9a5b549a8773d02eb88b33ef252a9f78e
|
||||
size 1301392
|
@@ -1,3 +1,188 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 4 21:10:04 UTC 2025 - Andreas Stieger <andreas.stieger@gmx.de>
|
||||
|
||||
- 0.24.0:
|
||||
* URL Encoding/Decoding Improvements
|
||||
* Accept Header Quality Value Parsing Exception Handling
|
||||
* Missing Client::set_max_timeout Method Implementation
|
||||
- fix incorrect version in openSUSE package specific .pc file
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jul 22 23:58:47 UTC 2025 - Marius Grossu <marius.grossu@suse.com>
|
||||
|
||||
- version update to 0.23.1
|
||||
* Fix issue with HTTP handling #2021
|
||||
* Fix specific bug addressed in this release #2111
|
||||
* Resolve issue #366
|
||||
* Resolve issue #1264
|
||||
* Fix getaddrinfo stalling issue when network is down
|
||||
* Fix proxy-related issues
|
||||
* Fix #1656: Improve logging before compression #1656
|
||||
* Add URL encoding helpers for user input in GET requests #2170
|
||||
* Add SSL error access functionality #2169
|
||||
* Cleaner API: API improvements #2166
|
||||
* Add POST with content receiver feature #cfb56c0
|
||||
* Add Params support for PUT/DELETE methods #b2bf172
|
||||
* Complete removal of Windows 8 or lower support #2177
|
||||
* Removal of 32-bit environment support (64-bit only) #2173
|
||||
* Improve form field access methods #2171
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 24 14:39:29 UTC 2025 - Marius Grossu <marius.grossu@suse.com>
|
||||
|
||||
- version update to 0.22.0
|
||||
* Fix ranges that are not in the form 0-n do not work #2157
|
||||
* Fix windows req/res very slow compared to Linux #1777
|
||||
* Add CPPHTTPLIB_HEADER_MAX_COUNT
|
||||
* Windows ::isdigit compilation error #2135
|
||||
* Specify version in meson.build #2139
|
||||
* Detect if afunix.h exists #2145
|
||||
* Feature request: let the Request& know which route matched #2101
|
||||
* Feature/multipart headers #2152
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 19 20:04:41 UTC 2025 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- Add dependency from cpp-httplib-devel to libzstd-devel
|
||||
to workaround cmake wanting it in all cases unconditionally.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 12 11:00:44 UTC 2025 - pgajdos@suse.com
|
||||
|
||||
- version update to 0.20.1
|
||||
0.20.1 (CVE-2025-46728 [bsc#1242777])
|
||||
* Add AF_UNIX support on windows #2115
|
||||
* Support zstd also via pkg-config #2121
|
||||
* Fix #2113
|
||||
* Fix "Unbounded Memory Allocation in Chunked/No-Length Requests"
|
||||
0.20.0
|
||||
* server_certificate_verifier extended to reuse built-in verifier #2064
|
||||
* Assertion failed when destroying httplib::Client
|
||||
* #2068
|
||||
* Spaces incorrectly allowed in header field names #2096
|
||||
* build(meson): copy MountTest.MultibytesPathName files #2098
|
||||
* Remove SSLInit #2102
|
||||
* Add zstd support #2088
|
||||
* Question the behavior of method read_content_without_length #2109
|
||||
* Crash when calling std::exit while server running or client requests in flight #2097
|
||||
0.19.0
|
||||
* Global timeout feature (same as "--max-time" curl option) #2034
|
||||
* Fix check for URI length to prevent incorrect HTTP 414 errors
|
||||
0.18.7
|
||||
* Potential memory corruption in stream_line_reader #2028
|
||||
- deleted patches
|
||||
- cpp-httplib-test-issue2004-online.patch (upstreamed)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Feb 6 08:51:25 UTC 2025 - pgajdos@suse.com
|
||||
|
||||
- version update to 0.18.6
|
||||
* Resolve #2033
|
||||
* Port/Address re-use #2011
|
||||
* Invalid Content-Length values should be rejected #2014
|
||||
* Feature request: ability to check if the connection is still alive #2017
|
||||
* Changed to use non-blocking socket in is_ssl_peer_could_be_closed (258992a)
|
||||
* Treat out-of-range last_pos as the end of the content #2009
|
||||
* fix:set_file_content with range request return 416. #2010
|
||||
* Fix HTTP Response Splitting Vulnerability (9c36aae)
|
||||
- added patches
|
||||
fix https://github.com/yhirose/cpp-httplib/issues/2042
|
||||
+ cpp-httplib-test-issue2004-online.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jan 20 09:51:09 UTC 2025 - Pedro Monreal <pmonreal@suse.com>
|
||||
|
||||
- Update to 0.18.3:
|
||||
* Bug fixes:
|
||||
- Regression: Client keep-alive subsequent requests very slow #1997
|
||||
- 304 Not Modified response stalls until timeout #1998
|
||||
|
||||
- Update to 0.18.2:
|
||||
* Bug fixes:
|
||||
- Fix the problem that CreateFile2 in mmap::open fails to... #1973
|
||||
- Default Accept-Encoding header for the client #1975
|
||||
- SSLClientReconnection fails on Windows #1980
|
||||
- delay in keep_alive due to sleep #1969
|
||||
- missing query pararm in httplib::Client::send #1985
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Oct 30 11:21:07 UTC 2024 - Pedro Monreal <pmonreal@suse.com>
|
||||
|
||||
- Update to 0.18.1:
|
||||
* SSLClientServerTest.* tests fail with OpenSSL 3.2.1 (#1798)
|
||||
* Feat: add CPack support (#1950)
|
||||
* Keep alive is slowing down shutdown (#1959)
|
||||
* Allow empty header values (#1965)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Sep 27 13:05:37 UTC 2024 - Alexey Svistunov <svalx@svalx.net>
|
||||
|
||||
- Small specfile refactoring
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Sep 22 16:50:33 UTC 2024 - Richard Rahl <rrahl0@opensuse.org>
|
||||
|
||||
- update to 0.18.0:
|
||||
* httplib.h: support LibreSSL
|
||||
* Nice way to call "handle_file_request" from user code
|
||||
* How to diagnose the infamous read error 4
|
||||
* Made default server and client read/write timeout settings separately
|
||||
* Slow performance caused by get_remote_ip_and_port and get_local_ip_and_port
|
||||
* Provides a way to ignore host verify
|
||||
* add API support for verify certificate manually
|
||||
- update to 0.17.3:
|
||||
* Accessing Directory
|
||||
* ‘constexpr’ error
|
||||
* Only match path params that span full path segment
|
||||
* Fix KeepAliveTest.SSLClientReconnectionPost problem
|
||||
- update to 0.17.2:
|
||||
* Fix incorrect handling of Expect: 100-continue
|
||||
* Peformance improvement by removing tolower function call
|
||||
- update to 0.17.1:
|
||||
* Header parser incorrectly accepts NUL and CR within header values
|
||||
* Fix problem with Abstract Namespace Unix Domain
|
||||
* Fix SIGINT problem in Docker image
|
||||
- update to 0.17.0:
|
||||
* Changed CPPHTTPLIB_KEEPALIVE_MAX_COUNT to 100
|
||||
* Add Dockerfile for static file server
|
||||
* Breaking Change!: get_header_ methods on Request and Response now take…
|
||||
* Add sleep in handle_EINTR
|
||||
* Added set_ipv6_v6only method
|
||||
* impossible to shut down the server safely
|
||||
* Performance: reserve body to avoid frequent reallocations and copies
|
||||
- update to 0.16.3:
|
||||
* Fixed set_connection_timeout() unexpected results
|
||||
* Fix KeepAliveTest.SSLClientReconnectionPost
|
||||
- update to 0.16.2:
|
||||
* threadsafe CLOEXEC on platforms that support it
|
||||
* BoringSSL compatibility fixes
|
||||
- update to 0.16.1:
|
||||
* detail::is_socket_alive() is not work for https connection
|
||||
* avoid memory leaks if linked with static openssl libs
|
||||
* Allow hex for ipv6 literal addr in redirect
|
||||
* Fix build on Windows with no WINAPI_PARTITION_APP support
|
||||
* test: fix GetRangeWithMaxLongLength on 32 bit machines
|
||||
* Require a minimum of TLS 1.2
|
||||
- update to 0.16.0:
|
||||
* Use final keyword for devirtualization
|
||||
* FindBrotli cleanup & fixes
|
||||
* client can't open the encrypted private key
|
||||
* build(meson): generate new test PEMs
|
||||
* Fix range parser when parsing too many ranges
|
||||
* fix: increase default receive buffer to 16kb
|
||||
* Removed excess usage of std::move
|
||||
* Merge branch 'HerrCai0907-fix'
|
||||
* Highlight notes using markdown features
|
||||
* Added progress to POST, PUT, PATCH and DELETE requests
|
||||
* Tweak CI & fix macOS prefix
|
||||
* New function SSLServer::update_certs. Allows to update certificates while server is running
|
||||
* Change library name to cpp-httplib
|
||||
- update to 0.15.3:
|
||||
* Breaking change in handling requests with Range in v0.15.1 and v0.15.2
|
||||
- update to 0.15.2:
|
||||
* Severe directory traversal vulnerability (dotdotslash)
|
||||
- switch to cmake build system
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Feb 2 17:01:44 UTC 2024 - Alexey Svistunov <svalx@svalx.net>
|
||||
|
||||
|
12
cpp-httplib.pc
Normal file
12
cpp-httplib.pc
Normal file
@@ -0,0 +1,12 @@
|
||||
prefix=/usr
|
||||
includedir=${prefix}/include
|
||||
libdir=${prefix}/lib64
|
||||
|
||||
Name: cpp-httplib
|
||||
Description: A C++ HTTP/HTTPS server and client library
|
||||
URL: https://github.com/yhirose/cpp-httplib
|
||||
Version: 0.0.0
|
||||
Requires.private: openssl >= 3.0.0, zlib, libbrotlicommon, libbrotlidec, libbrotlienc
|
||||
Libs: -L${libdir} -lcpp-httplib
|
||||
Libs.private: -pthread
|
||||
Cflags: -I${includedir} -DCPPHTTPLIB_OPENSSL_SUPPORT -DCPPHTTPLIB_ZLIB_SUPPORT -DCPPHTTPLIB_BROTLI_SUPPORT
|
@@ -1,7 +1,8 @@
|
||||
#
|
||||
# spec file for package cpp-httplib
|
||||
#
|
||||
# Copyright (c) 2024 SUSE LLC
|
||||
# Copyright (c) 2025 SUSE LLC
|
||||
# Copyright (c) 2025 Andreas Stieger <Andreas.Stieger@gmx.de>
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@@ -16,20 +17,22 @@
|
||||
#
|
||||
|
||||
|
||||
%define sover 0.15
|
||||
%define libver 0_15
|
||||
%define sover 0.24
|
||||
%define libver 0_24
|
||||
Name: cpp-httplib
|
||||
Version: 0.15.1
|
||||
Version: 0.24.0
|
||||
Release: 0
|
||||
Summary: A C++11 HTTP/HTTPS server and client library
|
||||
License: MIT
|
||||
URL: https://github.com/yhirose/cpp-httplib
|
||||
Source0: https://codeload.github.com/yhirose/cpp-httplib/tar.gz/refs/tags/v%{version}#/%{name}-%{version}.tar.gz
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: meson >= 0.47.0
|
||||
Source0: %{url}/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
|
||||
Source1: %{name}.pc
|
||||
BuildRequires: c++_compiler
|
||||
BuildRequires: cmake
|
||||
BuildRequires: pkgconfig(gtest)
|
||||
BuildRequires: pkgconfig(libbrotlidec)
|
||||
BuildRequires: pkgconfig(libbrotlienc)
|
||||
BuildRequires: pkgconfig(libcurl)
|
||||
BuildRequires: pkgconfig(openssl) >= 3.0.0
|
||||
|
||||
%package -n lib%{name}%{libver}
|
||||
@@ -38,7 +41,8 @@ Summary: A C++11 HTTP/HTTPS library
|
||||
%package devel
|
||||
Summary: A C++11 HTTP/HTTPS library
|
||||
Requires: lib%{name}%{libver} = %{version}
|
||||
Conflicts: cpp-httplib-headers-devel
|
||||
# cmake files require presence of libzstd even if httplib was built without it
|
||||
Requires: pkgconfig(libzstd)
|
||||
|
||||
%description
|
||||
This is a multi-threaded HTTP library with blocking I/O. There is no
|
||||
@@ -57,35 +61,46 @@ post-routing handlers, and support for binding sockets to multiple
|
||||
interfaces and any available port.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%autosetup -p1
|
||||
chmod -x example/uploader.sh
|
||||
|
||||
# fix dynamically the version in the pkgconfig file
|
||||
sed -i 's|Version: 0.0.0|Version: %{version}|g' %{SOURCE1}
|
||||
|
||||
%build
|
||||
%meson -Dcpp-httplib_compile=true -Dcpp-httplib_test=true \
|
||||
--buildtype=release
|
||||
%meson_build
|
||||
%cmake \
|
||||
-DHTTPLIB_REQUIRE_OPENSSL=ON \
|
||||
-DHTTPLIB_REQUIRE_ZLIB=ON \
|
||||
-DHTTPLIB_REQUIRE_BROTLI=ON \
|
||||
-DHTTPLIB_COMPILE=ON \
|
||||
-DHTTPLIB_TEST=ON
|
||||
%cmake_build
|
||||
|
||||
%install
|
||||
%meson_install
|
||||
%cmake_install
|
||||
install -Dm0644 %{SOURCE1} %{buildroot}%{_libdir}/pkgconfig/%{name}.pc
|
||||
|
||||
#remove files
|
||||
rm -r %{buildroot}%{_datadir}/{licenses/httplib,doc/packages/cpp-httplib}
|
||||
|
||||
%check
|
||||
# OBS and chroot build environments does not provide internet
|
||||
# connectivity, skip online tests to avoid failures
|
||||
export GTEST_FILTER='-*.*_Online'
|
||||
%meson_test
|
||||
%ctest --parallel 1 --exclude-regex '(_Online$)'
|
||||
|
||||
%post -n lib%{name}%{libver} -p /sbin/ldconfig
|
||||
%postun -n lib%{name}%{libver} -p /sbin/ldconfig
|
||||
%ldconfig_scriptlets -n lib%{name}%{libver}
|
||||
|
||||
%files -n lib%{name}%{libver}
|
||||
%license LICENSE
|
||||
%{_libdir}/lib%{name}.so.%{sover}
|
||||
%{_libdir}/lib%{name}.so.%{version}
|
||||
%license LICENSE
|
||||
|
||||
%files devel
|
||||
%license LICENSE
|
||||
%doc README.md example
|
||||
%{_libdir}/lib%{name}.so
|
||||
%{_includedir}/httplib.h
|
||||
%{_libdir}/cmake/httplib
|
||||
%{_libdir}/pkgconfig/%{name}.pc
|
||||
%doc README.md example
|
||||
|
||||
%changelog
|
||||
|
Reference in New Issue
Block a user