maxminddb 2.6.0__tar.gz → 2.6.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. {maxminddb-2.6.0 → maxminddb-2.6.2}/HISTORY.rst +17 -0
  2. {maxminddb-2.6.0/maxminddb.egg-info → maxminddb-2.6.2}/PKG-INFO +1 -1
  3. {maxminddb-2.6.0 → maxminddb-2.6.2}/extension/libmaxminddb/src/maxminddb.c +4 -1
  4. {maxminddb-2.6.0 → maxminddb-2.6.2}/maxminddb/__init__.py +1 -1
  5. {maxminddb-2.6.0 → maxminddb-2.6.2/maxminddb.egg-info}/PKG-INFO +1 -1
  6. {maxminddb-2.6.0 → maxminddb-2.6.2}/pyproject.toml +1 -1
  7. {maxminddb-2.6.0 → maxminddb-2.6.2}/LICENSE +0 -0
  8. {maxminddb-2.6.0 → maxminddb-2.6.2}/MANIFEST.in +0 -0
  9. {maxminddb-2.6.0 → maxminddb-2.6.2}/README.rst +0 -0
  10. {maxminddb-2.6.0 → maxminddb-2.6.2}/docs/Makefile +0 -0
  11. {maxminddb-2.6.0 → maxminddb-2.6.2}/docs/conf.py +0 -0
  12. {maxminddb-2.6.0 → maxminddb-2.6.2}/docs/index.rst +0 -0
  13. {maxminddb-2.6.0 → maxminddb-2.6.2}/examples/benchmark.py +0 -0
  14. {maxminddb-2.6.0 → maxminddb-2.6.2}/extension/libmaxminddb/include/maxminddb.h +0 -0
  15. {maxminddb-2.6.0 → maxminddb-2.6.2}/extension/libmaxminddb/src/data-pool.c +0 -0
  16. {maxminddb-2.6.0 → maxminddb-2.6.2}/extension/libmaxminddb/src/data-pool.h +0 -0
  17. {maxminddb-2.6.0 → maxminddb-2.6.2}/extension/libmaxminddb/src/maxminddb-compat-util.h +0 -0
  18. {maxminddb-2.6.0 → maxminddb-2.6.2}/extension/maxminddb.c +0 -0
  19. {maxminddb-2.6.0 → maxminddb-2.6.2}/extension/maxminddb_config.h +0 -0
  20. {maxminddb-2.6.0 → maxminddb-2.6.2}/maxminddb/const.py +0 -0
  21. {maxminddb-2.6.0 → maxminddb-2.6.2}/maxminddb/decoder.py +0 -0
  22. {maxminddb-2.6.0 → maxminddb-2.6.2}/maxminddb/errors.py +0 -0
  23. {maxminddb-2.6.0 → maxminddb-2.6.2}/maxminddb/extension.pyi +0 -0
  24. {maxminddb-2.6.0 → maxminddb-2.6.2}/maxminddb/file.py +0 -0
  25. {maxminddb-2.6.0 → maxminddb-2.6.2}/maxminddb/py.typed +0 -0
  26. {maxminddb-2.6.0 → maxminddb-2.6.2}/maxminddb/reader.py +0 -0
  27. {maxminddb-2.6.0 → maxminddb-2.6.2}/maxminddb/types.py +0 -0
  28. {maxminddb-2.6.0 → maxminddb-2.6.2}/maxminddb.egg-info/SOURCES.txt +0 -0
  29. {maxminddb-2.6.0 → maxminddb-2.6.2}/maxminddb.egg-info/dependency_links.txt +0 -0
  30. {maxminddb-2.6.0 → maxminddb-2.6.2}/maxminddb.egg-info/top_level.txt +0 -0
  31. {maxminddb-2.6.0 → maxminddb-2.6.2}/setup.cfg +0 -0
  32. {maxminddb-2.6.0 → maxminddb-2.6.2}/setup.py +0 -0
  33. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/bad-data/libmaxminddb/libmaxminddb-offset-integer-overflow.mmdb +0 -0
  34. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/bad-data/maxminddb-golang/cyclic-data-structure.mmdb +0 -0
  35. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/bad-data/maxminddb-golang/invalid-bytes-length.mmdb +0 -0
  36. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/bad-data/maxminddb-golang/invalid-data-record-offset.mmdb +0 -0
  37. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/bad-data/maxminddb-golang/invalid-map-key-length.mmdb +0 -0
  38. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/bad-data/maxminddb-golang/invalid-string-length.mmdb +0 -0
  39. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/bad-data/maxminddb-golang/metadata-is-an-uint128.mmdb +0 -0
  40. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/bad-data/maxminddb-golang/unexpected-bytes.mmdb +0 -0
  41. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/bad-data/maxminddb-python/bad-unicode-in-map-key.mmdb +0 -0
  42. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/GeoIP2-Anonymous-IP-Test.mmdb +0 -0
  43. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/GeoIP2-City-Test-Broken-Double-Format.mmdb +0 -0
  44. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/GeoIP2-City-Test-Invalid-Node-Count.mmdb +0 -0
  45. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/GeoIP2-City-Test.mmdb +0 -0
  46. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/GeoIP2-Connection-Type-Test.mmdb +0 -0
  47. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/GeoIP2-Country-Test.mmdb +0 -0
  48. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/GeoIP2-DensityIncome-Test.mmdb +0 -0
  49. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/GeoIP2-Domain-Test.mmdb +0 -0
  50. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/GeoIP2-Enterprise-Test.mmdb +0 -0
  51. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/GeoIP2-ISP-Test.mmdb +0 -0
  52. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/GeoIP2-Precision-Enterprise-Test.mmdb +0 -0
  53. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/GeoIP2-Static-IP-Score-Test.mmdb +0 -0
  54. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/GeoIP2-User-Count-Test.mmdb +0 -0
  55. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/GeoLite2-ASN-Test.mmdb +0 -0
  56. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/GeoLite2-City-Test.mmdb +0 -0
  57. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/GeoLite2-Country-Test.mmdb +0 -0
  58. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/MaxMind-DB-no-ipv4-search-tree.mmdb +0 -0
  59. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/MaxMind-DB-string-value-entries.mmdb +0 -0
  60. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/MaxMind-DB-test-broken-pointers-24.mmdb +0 -0
  61. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/MaxMind-DB-test-broken-search-tree-24.mmdb +0 -0
  62. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/MaxMind-DB-test-decoder.mmdb +0 -0
  63. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/MaxMind-DB-test-ipv4-24.mmdb +0 -0
  64. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/MaxMind-DB-test-ipv4-28.mmdb +0 -0
  65. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/MaxMind-DB-test-ipv4-32.mmdb +0 -0
  66. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/MaxMind-DB-test-ipv6-24.mmdb +0 -0
  67. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/MaxMind-DB-test-ipv6-28.mmdb +0 -0
  68. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/MaxMind-DB-test-ipv6-32.mmdb +0 -0
  69. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/MaxMind-DB-test-metadata-pointers.mmdb +0 -0
  70. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/MaxMind-DB-test-mixed-24.mmdb +0 -0
  71. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/MaxMind-DB-test-mixed-28.mmdb +0 -0
  72. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/MaxMind-DB-test-mixed-32.mmdb +0 -0
  73. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/MaxMind-DB-test-nested.mmdb +0 -0
  74. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/MaxMind-DB-test-pointer-decoder.mmdb +0 -0
  75. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/data/test-data/maps-with-pointers.raw +0 -0
  76. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/decoder_test.py +0 -0
  77. {maxminddb-2.6.0 → maxminddb-2.6.2}/tests/reader_test.py +0 -0
@@ -3,6 +3,23 @@
3
3
  History
4
4
  -------
5
5
 
6
+ 2.6.2 (2024-06-10)
7
+ ++++++++++++++++++
8
+
9
+ * The vendored ``libmaxminddb`` has been updated to 1.10.0. This fixes a
10
+ bug that would result in incorrect results on databases that had search
11
+ trees greater than 4 GB.
12
+
13
+ 2.6.1 (2024-04-12)
14
+ ++++++++++++++++++
15
+
16
+ * This release includes no source code changes. The only changes are to
17
+ the release workflow.
18
+ * Binary wheels are now built on Linux for aarch64. Pull request by Kevin
19
+ Park. GitHub #160.
20
+ * Binary wheels are now built on macOS for Apple silicon. Requested by
21
+ Kevin Park. GitHub #152.
22
+
6
23
  2.6.0 (2024-03-19)
7
24
  ++++++++++++++++++
8
25
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: maxminddb
3
- Version: 2.6.0
3
+ Version: 2.6.2
4
4
  Summary: Reader for the MaxMind DB format
5
5
  Author-email: Gregory Oschwald <goschwald@maxmind.com>
6
6
  License: Apache License, Version 2.0
@@ -23,7 +23,9 @@
23
23
  #endif
24
24
  #include <windows.h>
25
25
  #include <ws2ipdef.h>
26
+ #ifndef SSIZE_MAX
26
27
  #define SSIZE_MAX INTPTR_MAX
28
+ #endif
27
29
  typedef ADDRESS_FAMILY sa_family_t;
28
30
  #else
29
31
  #include <arpa/inet.h>
@@ -945,7 +947,7 @@ static int find_address_in_search_tree(const MMDB_s *const mmdb,
945
947
  return MMDB_UNKNOWN_DATABASE_FORMAT_ERROR;
946
948
  }
947
949
 
948
- uint32_t value = 0;
950
+ uint64_t value = 0;
949
951
  uint16_t current_bit = 0;
950
952
  if (mmdb->metadata.ip_version == 6 && address_family == AF_INET) {
951
953
  value = mmdb->ipv4_start_node.node_value;
@@ -959,6 +961,7 @@ static int find_address_in_search_tree(const MMDB_s *const mmdb,
959
961
  uint8_t bit =
960
962
  1U & (address[current_bit >> 3] >> (7 - (current_bit % 8)));
961
963
 
964
+ // Note that value*record_info.record_length can be larger than 2**32
962
965
  record_pointer = &search_tree[value * record_info.record_length];
963
966
  if (record_pointer + record_info.record_length > mmdb->data_section) {
964
967
  return MMDB_CORRUPT_SEARCH_TREE_ERROR;
@@ -81,7 +81,7 @@ def open_database(
81
81
 
82
82
 
83
83
  __title__ = "maxminddb"
84
- __version__ = "2.6.0"
84
+ __version__ = "2.6.2"
85
85
  __author__ = "Gregory Oschwald"
86
86
  __license__ = "Apache License, Version 2.0"
87
87
  __copyright__ = "Copyright 2013-2024 MaxMind, Inc."
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: maxminddb
3
- Version: 2.6.0
3
+ Version: 2.6.2
4
4
  Summary: Reader for the MaxMind DB format
5
5
  Author-email: Gregory Oschwald <goschwald@maxmind.com>
6
6
  License: Apache License, Version 2.0
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "maxminddb"
7
- version = "2.6.0"
7
+ version = "2.6.2"
8
8
  description = "Reader for the MaxMind DB format"
9
9
  authors = [
10
10
  {name = "Gregory Oschwald", email = "goschwald@maxmind.com"},
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes