Releases: maxmind/libmaxminddb
Releases · maxmind/libmaxminddb
1.12.2
MMDB_get_entry_data_list()
now always sets the passedentry_data_list
parameter to eitherNULL
or valid memory. This makes it safe for
callers to useMMDB_free_entry_data_list()
on it even in case of error.
In 1.12.0MMDB_get_entry_data_list()
was changed to not set this
parameter to valid memory in additional error cases. That change caused
segfaults for certain libraries that assumed it was safe to free memory
on error. Doing so was never safe, but worked in some cases. This change
makes such calls safe. Reported by Petr Pisar. GitHub
maxmind/MaxMind-DB-Reader-XS#39.
1.12.1
1.12.0
- Fixed memory leaks in
MMDB_open()
. These could happen with invalid
databases or in error situations such as failing to allocate memory. As
part of the fix,MMDB_get_entry_data_list()
now frees memory it
allocates on additional errors. Previously it failed to clean up when
certain errors occurred. Pull request by pkillarjun. GitHub #356. - There is now a build target to fuzz the library. Pull request by
pkillarjun. GitHub #357. - Updated
cmake_minimum_required
to a version range to quiet deprecation
warnings on new CMake versions. Reported by gmou3. GitHub #359. - The script for generating man pages no longer uses
autodie
. This
eliminates the dependency onIPC::System::Simple
. Reported by gmou3.
GitHub #359. - An uninstall target is now included for CMake. Pull request by gmou3.
GitHub #362.
1.11.0
- When building with CMake, the man pages will now be generated and
installed. Requested by Thomas Klausner. GitHub #351. - Removed unnecessary
$<INSTALL_INTERFACE:generated>
directory from
target_include_directories
in the CMake build configuration. This is
a private build directory. Pull request by Ankur Verma. GitHub #354.
1.10.0
- When building with CMake, it is now possible to disable the building
of binaries (e.g.,mmdblookup
) with theMAXMINDDB_BUILD_BINARIES
option and the install target generation with theMAXMINDDB_INSTALL
option. Pull request by Seena Fallah. GitHub #342. - CMake now makes greater use of GNUInstallDirs. Pull request by Maximilian
Downey Twiss. GitHub #346. - The reader can now look up records on a database with a search tree
that is greater than 4 gigabytes without sometimes returning erroneous
results due to an integer overflow.
1.9.1
1.9.0
- On very large databases, the calculation to determine the search tree
size could overflow. This was fixed and several additional guards
against overflows were added. Reported by Sami Salonen. GitHub #335. - Removed
sa_family_t
typedef from the public header on Windows. Pull
request by Noah Treuhaft. GitHub #334. - The CMake build was adjusted to allow running builds in parallel.
Pull request by Vladyslav Miachkov. GitHub #332.
1.8.0
PACKAGE_VERSION
is now a private compile definition when building
with CMake. Pull request by bsergean. GitHub #308.PACKAGE_VERSION
is no longer defined inmaxminddb.h
on
Windows.- The feature test macro
_POSIX_C_SOURCE
is no longer set by
maxminddb.h
. As discussed in GitHub #318, this should be set by
applications rather than by libraries. assert()
is no longer used outside test code.- The deprecated Visual Studio 12 project files in the
projects/
directory have been removed. CMake should be used when building on
Windows.
1.7.1
1.7.0
FD_CLOEXEC
is now set on platforms that do not supportO_CLOEXEC
.
Reported by rittneje. GitHub #273.- When building with Visual Studio, you may now build a static runtime with
CMake by settingMSVC_STATIC_RUNTIME
toON
. Pull request by Rafael
Santiago. GitHub #269. - The CMake build now works on iOS. Pull request by SpaceIm. GitHub #271.
- The CMake build now uses the correct library directory on Linux systems
using alternate directory structures. Pull request by Satadru Pramanik.
GitHub #284. - File size check now correctly compares the size to
SSIZE_MAX
. Reported
by marakew. GitHub #301.