@oschwald oschwald released this Aug 16, 2018 · 2 commits to master since this release

Assets 3
  • This version restores the ability to use the AccountID / UserId
    999999 along with an all-zero license key when downloading free
    databases. However, the use of this combination is not recommended
    and may break in future versions.
  • When printing verbose output, only the first four character of the
    LicenseKey will now be displayed.

@oschwald oschwald released this Aug 14, 2018 · 7 commits to master since this release

Assets 3
  • When there were no updates available, 3.0.0 incorrectly returned an
    exit code of 1 instead of 0. This release reverts to the pre-3.0.0
    behavior, returning an exit code of 0 in this case.

@oschwald oschwald released this Aug 13, 2018 · 10 commits to master since this release

Assets 3
  • BREAKING CHANGE: When downloading the free databases without a
    MaxMind account, you must either not have AccountID, UserId,
    or LicenseKey set in your configuration file or they must be set
    to the zero values previously recommended in our documentation. Any
    other value will cause an authorization error.
  • BREAKING CHANGE: The configuration options Protocol,
    SkipPeerVerification, and SkipHostnameVerification are no longer
    supported. If they are present in the configuration file, they will
    be ignored. HTTPS with peer and hostname verification will be used
    on all requests.
  • BREAKING CHANGE: The configuration file must have the AccountID
    or the deprecated UserId when downloading a paid database.
    Previously, when downloading the GeoIP Legacy Country database, you
    were able to only provide the LicenseKey.
  • IMPORTANT: geoipupdate-pureperl.pl has been removed and will no
    longer be distributed with geoipupdate. This Perl script had known
    issues and did not have feature parity with the C implementation. If
    you were using the Perl version, we recommend that you switch to the
    C version. If you are not able to do this, you may continue using the
    Perl version distributed with 2.5.0.
  • This program no longer uses the following endpoints:
    /app/update_getipaddr, /app/update, and /app/update_secure.
    /geoip/databases/{edition_id}/update is now used instead.
  • Fixed issue in gu_strnlen() dereferencing a pointer before checking
    that it was in array bounds. Issue found by fcntl.
  • We now update the default GeoIP.conf during installation so that
    directory paths match build parameters. Previously this config always
    said the data directory was under /usr/local/share which was not always
  • Improve the error checking and display the underlying reason for the
    error when possible. Reported by Jonathan Kosgei. GitHub #82.
  • Document that the LockFile is not removed from the filesystem after
    a successful exit from the program. GitHub issue #79.
  • Make default configuration directory agree with default installation

@oschwald oschwald released this Oct 30, 2017 · 54 commits to master since this release

Assets 3
  • Replace use of strnlen() due to lack of universal availability. First
    reported by Bill Cole. GitHub issue #71.
  • Document the LockFile option in the GeoIP.conf man page. GitHub
    issue #64.
  • Remove unused base64 library. PR by Mikhail Teterin. GitHub PR #68.
  • Add the new configuration option PreserveFileTimes. If set,
    the downloaded files will get the same modification times as
    their original on the server. Default is 0 (unset).
    PR by Rainer Jung. GitHub PR #63.
  • Use the correct types when calling curl_easy_setopt(). This fixes
    warnings generated by libcurl's typecheck-gcc.h. PR by Michael
    Kaufmann. GitHub PR #61.
  • In GeoIP.conf, the UserId option was renamed to AccountID and the
    ProductIds option was renamed to EditionIDs. The old options will
    continue to work, but upgrading to the new names is recommended for
    forward compatibility.

@oschwald oschwald released this May 25, 2017 · 80 commits to master since this release

Assets 3
  • geoipupdate now checks that the database directory is writable. If it
    is not, it reports the problem and aborts.
  • geoipupdate now acquires a lock when starting up to ensure only one
    instance may run at a time. A new option, LockFile, exists to set the
    file to use as a lock. By default, LockFile is the file
    .geoipupdate.lock in the database directory.
  • geoipupdate now prints out additional information from the server when
    a download request results in something other than HTTP status 2xx. This
    provides more information when the API does not respond with a database
    file. In conjunction with changes to the download service itself, errors
    such as lacking a subscription no longer show up with the message "not a
    valid gzip file".
  • ${datarootdir}/GeoIP is now created on make install. Reported by Antonios
    Karagiannis. GitHub #29.
  • Previously, a variable named ERROR was used. This caused issues building
    on Windows. Reported by Gisle Vanem. GitHub #36.

@oschwald oschwald released this Jan 5, 2017 · 110 commits to master since this release

Assets 3
  • 2.3.0 was missing GeoIP.conf.default. This was added to the dist.
  • The directory creation of $(sysconfdir) added in 2.3.0 incorrectly ran if
    the directory already existed rather than if it did not exist.

@oschwald oschwald released this Jan 4, 2017 · 112 commits to master since this release

Assets 3
  • geoipupdate now uses TCP keep-alive when compiled with cURL 7.25 or
  • Previously, on an invalid gzip file, geoipupdate would output binary data
    to stderr. It now displays an appropriate error message.
  • Install README, ChangeLog, GeoIP.conf.default etc into docdir. PR by
    Philip Prindeville. GitHub #33.
  • $(sysconfdir) is now created if it doesn't exist. PR by Philip
    Prindeville. GitHub #33.
  • The sample config file is now usable. PR by Philip Prindeville. GitHub #33.

@oschwald oschwald released this Jan 21, 2016 · 124 commits to master since this release

Assets 3
  • geoipupdate now calls fsync on the database directory after a rename
    to make it durable in the event of a crash.

@oschwald oschwald released this Feb 25, 2015 · 137 commits to master since this release

Assets 3
  • geoipupdate now verifies the MD5 of the new database before deploying it.
    If the database MD5 does not match the expected MD5, geoipupdate will
    exit with an error.
  • The copy of base64.c and base64.h was switched to a version under GPL 2+
    to prevent a license conflict.
  • The LICENSE file was added to the distribution.
  • Several issues in the documentation were fixed.