Skip to content

Releases: maxmind/libmaxminddb

1.6.0

29 Apr 17:12
2d0e6b7
Compare
Choose a tag to compare
  • This release includes several improvements to the CMake build. In
    particular:
    • C99 support is now properly enabled, fixing builds on older gcc
      versions. Pull request by Jan Včelák. GitHub #257.
    • CMAKE_SHARED_LIBRARY_PREFIX and CMAKE_STATIC_LIBRARY_PREFIX are
      no longer explicitly set and now use the default values for the platform.
      Pull request by Jan Včelák. GitHub #258.
    • target_include_directories now works as expected. Pull request by Jan
      Včelák. GitHub #259.
    • DLLs are now installed on Windows when libmaxminddb is built as a
      shared library. Pull request by Jan Včelák. GitHub #261.
    • When built as a dynamic library on Windows, all symbols are now exported.
      Pull request by Jan Včelák. GitHub #262.

1.5.2

18 Feb 17:05
Compare
Choose a tag to compare
  • With libmaxminddb on Windows and mmdblookup generally, there were
    instances where the return value of calloc was not checked, which could
    lead to issues in low memory situations or when resource limits had been
    set. Reported by cve-reporting. GitHub #252.

1.5.1

18 Feb 15:23
822c2cf
Compare
Choose a tag to compare
  • The formatting of the manpages has been improved and the script that
    generates them now supports lowdown in addition to pandoc. Pull request
    by Faidon Liambotis. GitHub #248.

1.5.0

05 Jan 22:57
Compare
Choose a tag to compare
  • A CMake build script has been added for Windows builds. The Visual
    Studio project files in projects are now considered deprecated and will
    be removed in a future release.

1.4.3

06 Aug 16:28
Compare
Choose a tag to compare
  • On Windows, always call CreateFileW instead of CreateFile.
    CreateFile could be mapped to CreateFileA and not work as expected.
    Pull request by Sandu Liviu Catalin. GitHub #228.
  • Fixed use of uninitialized memory in dump_entry_data_list() that could
    cause a heap buffer flow in mmdblookup. As part of this fix, most uses
    of malloc were replaced with calloc. Reported by azhou. GitHub #236.

1.4.2

02 Nov 16:00
Compare
Choose a tag to compare
  • The 1.4.0 release introduced a change that increased the size of MMDB_s,
    unintentionally causing an ABI break. This release reverts the relevant
    commit.

1.4.1 - DO NOT USE

01 Nov 22:42
Compare
Choose a tag to compare
1.4.1 - DO NOT USE Pre-release
Pre-release

DO NOT USE. UNINTENDED ABI BREAK.

  • The man page links for function calls were not generated correctly in
    1.4.0. This has been corrected.

1.4.0 - DO NOT USE

01 Nov 21:37
Compare
Choose a tag to compare
1.4.0 - DO NOT USE Pre-release
Pre-release

DO NOT USE. UNINTENDED ABI BREAK.

  • A negative array index may now be used with MMDB_get_value,
    MMDB_vget_value, and MMDB_aget_value. This specifies the element
    from the end of the array. For instance, -1 would refer to the
    last element of the array. PR by Kyle Box. GitHub #205.
  • On Windows, the file name passed to MMDB_open is now expected to be
    UTF-8 encoded. This allows Unicode characters to be used in file names.
    As part of this change, mmdblookup on Windows now converts its
    arguments to UTF-8. PR by Gerald Combs. GitHub #189 & #191.
  • Fix a memory leak that occurred when freeing an MMDB_s where the
    database had no languages defined in the metadata. If you are using an
    official MaxMind database, this leak does not affect you. Pull request
    by Kókai Péter. GitHub #180.
  • Add --disable-binaries option to configure. Pull request by Fabrice
    Fontaine. GitHub #166.
  • Previous releases incorrectly included *.Po files in the t directory.
    This has been corrected. Reported by Daniel Macks. GitHub #168.
  • The internal use of the MMDB_s now has the const modifier. Public
    functions that accepted an MMDB_s as an argument now also declare it as
    const. Pull request by Kurt Johnson. GitHub #199.
  • mmdblookup now displays the prefix length for the record when using
    the verbose flag. GitHub #172.

1.3.2

17 Jan 21:39
Compare
Choose a tag to compare
  • Allocate memory for MMDB_entry_data_list_s structs in separate chunks
    rather than one large chunk. This simplifies accessing memory in
    MMDB_get_entry_data_list() and increases performance. It builds on the
    changes in 1.3.0 and 1.3.1.
  • We no longer export data_pool_* symbols. These are internal functions
    but we were previously exporting them. Pull request by Faidon Liambotis.
    GitHub #162.
  • Build with POSIX.1-2008 by default if the system supports it. This allows
    use of open() with O_CLOEXEC. We retain support for systems that
    provide only POSIX.1-2001.
  • Open the database with the O_CLOEXEC flag if the system provides it.
    This avoids cases where we could leak fds when called in multi-threaded
    programs that fork() and exec(). Original report and PR by Brandon L
    Black.
  • Added a test to ensure we export only intended symbols (e.g. MMDB_*).

1.3.1

24 Nov 19:17
Compare
Choose a tag to compare
  • Fix build problems related to rpl_malloc(). Pull request by Rainer
    Gerhards. GitHub #152.
  • Fix a race to set and read data in a field on the MMDB_s struct
    (ipv4_start_node). GitHub #153.
  • Fix cases of invalid memory access when using
    MMDB_get_entry_data_list(). This was introduced in 1.3.0 and occurred
    when performing large lookups. GitHub #153.