This is what's new and changed in the c-ares 1.5.2 release:

 o code refactoring in ares_gethostbyaddr
 o improved checking of /dev/urandom in configure script
 o new sample application, acountry
 o improved MSVC6 dsp files
 o adig sample application supports NAPTR records
 o improved file seeding randomizer
 o improved parsing of resolver configuration files
 o updated configure script to remove autoconf 2.62 warnings
 o use monotonic time source if available
 o return all PTR-records when doing reverse lookups
 o millisecond resolution support for the timeout option

Thanks go to these friendly people for their efforts and contributions:

 Erik Kline, Brad Spencer, Gisle Vanem, Alexey Simak, Eino Tuominen,
 Eino Tuominen, Yang Tse, Doug Goldstein, Sebastian<at>basti79.de,
 and obviously Daniel Stenberg

Have fun!
