- update to 0.9.7:
* Fixed: Multiple issues with IPv6 and IPvFuture literal parsing
(GitHub #146, GitHub #150)
Thanks to Scallop Ye for the report and the pull request!
* Fixed: Fix symbol visibility for -DBUILD_SHARED_LIBS=OFF (GitHub #139,
GitHub #141); thanks to Mariusz Zaborski for the report!
* Fixed: For MinGW, use size_t for inet_ntop declaration and fix macro
checks for both MinGW and mingw-w64 (GitHub #131)
* Fixed: Compiler warnings (GitHub #132, GitHub #152)
* Improved: Use name UriConfig.h rather than generic config.h for the
config header file to avoid name clashes and also include it through
"UriConfig.h" with quotes rather than <UriConfig.h> so that it is found
in quote path locations (GitHub #149)
Thanks to Gaspard Petit for bringing this up!
* Improved: Document need for UriConfig.h in UriMemory.c (GitHub #136)
* Infrastructure: Add (support for) Visual Studio 17/2022 (GitHub #152)
* Infrastructure: Drop (support for) Visual Studio <=14/2015 (GitHub #152)
* Infrastructure: Update Clang from 13 to 15 (GitHub #143, GitHub #151)
* Infrastructure: Make MinGW with 32bit Wine on Ubuntu 20.04 possible
(GitHub #142, GitHub #144, GitHub #145)
* Soname: 1:30:0 — see https://verbump.de/ for what these numbers do
OBS-URL: https://build.opensuse.org/request/show/1012079
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/uriparser?expand=0&rev=29
- fix cmake build (incorrect line continuation - %make_jobs is not part of the
%cmake call; it only worked in distros where it printed a deprecation
warning before invoking make, but broke the build on SLE_12_SP5)
- replace deprecated %make_jobs macro with %cmake_build
- fix building docs: need graphviz-gd to produce PNG files and
ghostscript-fonts-std for the fonts used
- this was the error in the build log:
/usr/bin/doxygen Doxyfile
Format: "png" not recognized. Use one of: canon cmap cmapx cmapx_np dot dot_json eps fig gv imap imap_np ismap json json0 mp pic plain plain-ext pov ps ps2 svg svgz tk vml vmlz xdot xdot1.2 xdot1.4 xdot_json
WARNING: error: Problems running dot: exit code=1, command='dot', arguments='"/home/abuild/rpmbuild/BUILD/uriparser-0.9.6/build/doc/./html/dir_24c5c890457908cb185130461432a4ab_dep.dot" -Tpng -o "/home/abuild/rpmbuild/BUILD/uriparser-0.9.6/build/doc/./html/dir_24c5c890457908cb185130461432a4ab_dep.png" -Tcmapx -o "/home/abuild/rpmbuild/BUILD/uriparser-0.9.6/build/doc/./html/dir_24c5c890457908cb185130461432a4ab_dep.map"'
OBS-URL: https://build.opensuse.org/request/show/977627
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/uriparser?expand=0&rev=27
- update to 0.9.6 (bsc#1194365, bsc#1194364):
* Fixed: [CVE-2021-46141]
Fix a bug affecting both uriNormalizeSyntax* and uriMakeOwner*
functions where the text range in .hostText would not be duped using
malloc but remain unchanged (and hence "not owned") for URIs with
an IPv4 or IPv6 address hostname; depending on how an application
uses uriparser, this could lead the application into a use-after-free
situation.
As the second half, fix uriFreeUriMembers* functions that would not
free .hostText memory for URIs with an IPv4 or IPv6 address host;
also, calling uriFreeUriMembers* multiple times on a URI of this
very nature would result in trying to free pointers to stack
(rather than heap) memory (GitHub #121, GitHub #124)
Commit 987b046e41f407d17c622e580fc82a5e834b4329
Commit b1a34743bc1472e055d886e29e9b53f670eb3282
* Fixed: [CVE-2021-46142]
Fix functions uriNormalizeSyntax* for out-of-memory situations
(i.e. malloc returning NULL) for URIs containing empty segments
(any of user info, host text, query, or fragment) where previously
pointers to stack (rather than heap) memory were freed (GitHub #122,
GitHub #124)
OBS-URL: https://build.opensuse.org/request/show/945156
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/uriparser?expand=0&rev=26
- update to 0.9.5:
* Fixed: Fix a bug regarding section "5.2.4. Remove Dot Segments"
of RFC 3986 that affected both normalization and reference resolution
with regard to trailing slashes (GitHub #92, #97)
Thanks to Dan Pape for the report!
* Fixed: MinGW: Fix name of static library (GitHub #90)
Thanks to SpaceIm for the patch and Sandro Mani for review!
* Fixed: Use correct inline marker "__forceinline" for Intel C++ Compiler
(GitHub #93)
Thanks to jensenrichardson for the patch!
* Fixed: Link against pthreads for (default) -DURIPARSER_BUILD_TESTS=ON
(GitHub #99, #100)
* Fixed: When integrated using CMake function add_subdirectory, installation
could fail due to lack of prefix ${CMAKE_CURRENT_SOURCE_DIR} (GitHub #98)
Thanks for the patch to Shehzan Mohammed!
* Fixed: Addressed MSVC compile warning about lack of /EHsc when compiling
the C++ test suite code (GitHub #102)
* Fixed: Stopped misadvertising wide characters as Unicode support
(GitHub #104)
* Added: CMake option URIPARSER_WARNINGS_AS_ERRORS=(ON|OFF)
to turn compile warnings into errors, defaults to "OFF" (GitHub #102)
* Improved: pkg-config: Use ${prefix} and ${exec_prefix} to ease
overriding variables using --define-variable=NAME=VALUE,
e.g. as done on OpenWRT (GitHub #91)
Thanks to Karel Kočí for the pull request!
* Improved: Auto-detection of the qhelpgenerator command based on CMake
package "Qt5Help" when available. CMake option "QHG_LOCATION" can still
be used to enforce a specific location (GitHub #103)
Thanks for his help to Andreas Sturmlechner!
* Improved: Make documentation use pkg-config in example on how to
OBS-URL: https://build.opensuse.org/request/show/893493
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/uriparser?expand=0&rev=24
- Update to version 0.9.4
* Fixed: testrunner: No longer crashes when compiled with NDEBUG
(GitHub #67)
* Fixed: CMake: Support GTest 1.8.0 (GitHub #68)
Thanks to Ryan Schmidt for the related report!
* Fixed: CMake: Use variable GTEST_INCLUDE_DIRS (with plural "S")
rather than GTEST_INCLUDE_DIR (GitHub #79, #81)
Thanks to Wouter Beek for the related report!
* Improved: CMake: Send config summary to stdout, not stderr
(GitHub #72)
Thanks to Scott Donelan for the patch!
* Improved: Make -DURIPARSER_BUILD_TESTS=OFF unlock compilation
without a C++ compiler; thanks to Fabrice Fontaine for the
patch! (GitHub #69)
* Added: Functions to make UriUri[AW] instances independent of
the original URI string (GitHub #77 and #78)
New functions:
uriMakeOwner[AW]
uriMakeOwnerMm[AW]
* Added: CMake option URIPARSER_ENABLE_INSTALL to toggle
installation of files, defaults to "ON" (GitHub #74, #75)
Thanks to Scott Donelan for the patch!
* Soname: 1:26:0
OBS-URL: https://build.opensuse.org/request/show/823104
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/uriparser?expand=0&rev=22
- Update to version 0.9.3
* Fixed: pkg-config: Fix version line in liburiparser.pc (GitHub #65)
* Changed: MinGW: Add library version suffix to DLL name
Thanks to Sandro Mani for the patch! (GitHub #63, #64)
* Soname: 1:26:0
- Update to version 0.9.2
* Fixed: Add missing extern "C" wrapper to UriIp4.h for use from C++
* Fixed: Linking error for symbol defaultMemoryManager from mixing C and C++
Thanks to Jørgen Ibsen for the report! (GitHub #52)
* Fixed: Link errors on Haiku regarding function inet_ntop (GitHub #45)
Thanks to Schrijvers Luc for the patch!
* Fixed: Mark API functions with __declspec(dllexport) and
__declspec(dllimport) in *.h files for Visual Studio (GitHub #60)
* Improved: Use -fvisibility=hidden by default with supporting compilers,
e.g. GCC and Clang (GitHub #60)
* Changed: Migrated from GNU Autotools to CMake (GitHub #17, #47, #56, #59)
Thanks for their support with the CMake migration to:
- David Demelier
- Jørgen Ibsen
- KangLin
- Kouhei Sutou
- myd7349
- Richard Hodges
- Zachary Lund
* Removed: All Windows-related build systems other than CMake
* Soname: 1:25:0
- Switch to cmake build
- Split docs into own subpackage
OBS-URL: https://build.opensuse.org/request/show/717681
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/uriparser?expand=0&rev=20
- Update to version 0.9.1
* Fixed Out-of-bounds read in uriParse*Ex* for incomplete URIs
with IPv6 addresses with embedded IPv4 address, e.g. "//[::44.1"
mitigated if passed parameter <afterLast> points to readable
memory containing a '\0' byte. (bsc#1122193, CVE-2018-20721)
* Fixed: When parsing a malformed URI with an IPvFuture address
(e.g. "http://[vA.123456" missing "]"), errorPos would point
to the first character after "v" than the actual position of the
error (here: the end of the string)
* Fixed: uriToStringCharsRequired* reported 1 more byte than
needed for IPv4 address URIs (GitHub #41);
* Improved: For parse errors, waterproof errorPos <= afterLast
* Soname: 1:24:0
OBS-URL: https://build.opensuse.org/request/show/666491
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/uriparser?expand=0&rev=5
* Fixed Out-of-bounds read in uriParse*Ex* for incomplete URIs
with IPv6 addresses with embedded IPv4 address, e.g. "//[::44.1"
mitigated if passed parameter <afterLast> points to readable
memory containing a '\0' byte. (bsc#1122193, CVE-2018-20721)
* Fixed: When parsing a malformed URI with an IPvFuture address
(e.g. "http://[vA.123456" missing "]"), errorPos would point
to the first character after "v" than the actual position of the
error (here: the end of the string)
* Fixed: uriToStringCharsRequired* reported 1 more byte than
needed for IPv4 address URIs (GitHub #41);
* Improved: For parse errors, waterproof errorPos <= afterLast
* Soname: 1:24:0
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/uriparser?expand=0&rev=18
- Update to version 0.9.0
* Fixed: Out-of-bounds write in uriComposeQuery* and
uriComposeQueryEx* (bsc#1115722, CVE-2018-19198)
* Fixed: Detect integer overflow in uriComposeQuery* and
uriComposeQueryEx* (bsc#1115723, CVE-2018-19199)
* Fixed: Protect uriResetUri* against acting on NULL input
(bsc#1115724, CVE-2018-19200)
* Changed: Marked as deprecated:
Deprecated functions:
uriNormalizeSyntaxMaskRequired[AW]
uriParseUri[AW]
uriParseUriEx[AW]
Added: Add convenience functions to ease user code to parse a single URI
New functions:
uriParseSingleUri[AW]
uriParseSingleUriEx[AW]
uriParseSingleUriExMm[AW]
Added: Support for custom memory managers (GitHub #26, #35), see Doxygen
New functions (as extension of existing ones):
uriAddBaseUriExMm[AW]
uriComposeQueryMallocExMm[AW]
uriDissectQueryMallocExMm[AW]
uriFreeQueryListMm[AW]
uriFreeUriMembersMm[AW]
uriNormalizeSyntaxExMm[AW]
uriParseSingleUriExMm[AW]
uriRemoveBaseUriMm[AW]
New functions (for convenience):
uriCompleteMemoryManager
uriEmulateCalloc
OBS-URL: https://build.opensuse.org/request/show/649645
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/uriparser?expand=0&rev=4
* Fixed: Out-of-bounds write in uriComposeQuery* and
uriComposeQueryEx* (bsc#1115722, CVE-2018-19198)
* Fixed: Detect integer overflow in uriComposeQuery* and
uriComposeQueryEx* (bsc#1115723, CVE-2018-19199)
* Fixed: Protect uriResetUri* against acting on NULL input
(bsc#1115724, CVE-2018-19200)
* Changed: Marked as deprecated:
Deprecated functions:
uriNormalizeSyntaxMaskRequired[AW]
uriParseUri[AW]
uriParseUriEx[AW]
Added: Add convenience functions to ease user code to parse a single URI
New functions:
uriParseSingleUri[AW]
uriParseSingleUriEx[AW]
uriParseSingleUriExMm[AW]
Added: Support for custom memory managers (GitHub #26, #35), see Doxygen
New functions (as extension of existing ones):
uriAddBaseUriExMm[AW]
uriComposeQueryMallocExMm[AW]
uriDissectQueryMallocExMm[AW]
uriFreeQueryListMm[AW]
uriFreeUriMembersMm[AW]
uriNormalizeSyntaxExMm[AW]
uriParseSingleUriExMm[AW]
uriRemoveBaseUriMm[AW]
New functions (for convenience):
uriCompleteMemoryManager
uriEmulateCalloc
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/uriparser?expand=0&rev=14