- Allow compilation on older systems by relaxing the autoconf and automake
minimum versions. Thank you, Jose Rubio!
- Avoid potential problems in multi-threaded environments by consistently using
pread() rather than read().
- Fix various small issues reported by clang's static analyser.
- Fixed a MSVC parser stack overflow when parsing
timeZone.c. Fix by elliotlo. GitHub #64.
- Updated region codes and timezones.
- When using
GEOIP_MEMORY_CACHEwith an invalid database file, the search
tree traversal could attempt to read memory outside of the memory allocated
for the memory cache, resulting in a segmentation fault. A check was added
to ensure that the traversal code does not try to read beyond the end of the
file, whether in memory, memory mapped, or on disk.
- Previously the return values from file reads were ignored. We now check
these values to ensure that there were no errors.
- Replaced usage of deprecated fileno, read, and lseek on Visual Studio 2005+
with their ISO C++ conformant replacements. (Fix by ClaudiuHKS. GitHub #55.)
- A warning about using a double as a float was fixed. (Fix by ClaudiuHKS.
- Fixed segfault when doing a lookup on an empty database. (Fix by NesoK.
- Fixed a memcheck error from valgrind in the
function. (Reported by yurivct. GitHub #60.)
_check_mtimeto check the return value of
just assuming it worked.
- A segmentation fault in
geoiplookupwas fixed when the utility was passed
an invalid database. (Reported in Red Hat bug #1180874.)
- Additional validation was added for validation of the size used in the
creation of the index cache. (Based on discussion in Red Hat bug #832913.)
- Changed the code to only look up country codes by using functions which
ensure that we do not try to look past the end of an array. (Reported by
Ivan Sorokin. GitHub #53)
- Update Fips codes (Boris Zentner)
- Several issues with the MinGW build were fixed. (Thomas Pöchtrager. Github
- Use a constructor in pread.c to ensure the critical section is always
initialized. (Thomas Pöchtrager. Github #47.)
- Added missing include of
io.hon Windows. (Thomas Pöchtrager. Github #49.)
'missing' script is too old or missing.
(Reported by Floren Munteanu. Github #33.)
nmake /f Makefile.vc cleanwould fail on Windows. This was
- Obsolete win32 and NetWare make files were removed.
- Numerous documentation updates. (Reported by Thomas Pöchtrager. GitHub #48.)
- Added a GEOIP_SILENCE flag. Include this flag when calling GeoIP_open to
prevent any messages from being written to stderr. ( Philip Prindeville
and Boris Zentner )
- Mitigate a possible race condition when running under threads in the
GeoIP_cleanup function. ( Anthon Pang )
- Added some recommendations to the docs on using this library in a
threaded application. ( Boriz Zentner )
- Fixed some bugs discovered by coverity, including failure to check some
system call return values and making sure all strings are
null-terminated. ( Boris Zentner )