* adnstest converts some errno values to EFOOBAR: all of the ones
[adns] / changelog
CommitLineData
e24bc510 1adns (1.1.999.0.2); urgency=medium
2
3 * Include reference to Peter Simons's Haskell bindings
4 in README.html.
e8878fdd 5 * Create $(bin_dir) and $(lib_dir) on `make install', and also
6 make a libadns.so.1 -> libadns.so.1.<minor> link. (Suggestions
7 and patch from Nix of esperi.org.uk.)
5a5eed73 8 * Update MINOR to 2 because of adns_init_logfn.
fa1b90e5 9 * adnstest converts some errno values to EFOOBAR: all of the ones
10 mentioned in adns.h, at least. This makes the regression test
11 more portable (fixes problem noticed by Bernd Eckenfels).
e24bc510 12
deb1edb6 13 Fixes from or suggested by Bernd Eckenfels, the Debian maintainer:
0ca555c6 14 * Correct type of various printf arguments: ptrdiff_t != int.
cb0a827b 15 * Do not print size of leaked blocks of memory (this causes
deb1edb6 16 a spurious regression test failure on some platforms)
17 * Provide adns_if_none and adns_qf_none (which will help with compilers
18 which complain about plain `0' being passed where an enum is wanted).
0ca555c6 19
e24bc510 20 --
21
c227e3bc 22adns (1.1.999.0.1); urgency=medium
07b2653a 23
24 * Fix error in prototype in definition of adns__parse_domain.
a14bea78 25 * New LICENCE.WAIVERS file for GPL-incompatility workarounds.
26 * Clarified GPL-vs-LGPL: a bit less hostile and a bit more mercenary.
2d230487 27 * Allow `;'-comments in resolv.conf (report from Colin Charles).
e5d88f7d 28 * Added a TODO list item.
cc1cc02a 29 * Add .PHONY: install to Makefile, to help people with demented fs's.
b50b34c9 30 * Darwin listed in INSTALL.
849075a0 31 * New adnsheloex client courtesy of Tony Finch (and copyright notices
32 updated).
30d78b94 33 * Add documentation comment by definition of adns_r_ptr_raw type enum.
52888ec6 34 * Add -Wno-pointer-sign if GCC has that option.
87dd6345 35 * Call Tensurerecordfile in Hgettimeofday (Tensurerecordfile was
36 Tensureinputfile/Tensureoutputfile).
37 * Add bind(2) and listen(2) to test harness (for epithet's benefit, but
38 harmless in adns).
39 * Add missing ENOTSOCK to hcommon.c.m4 (was already in hcommon.c!)
c227e3bc 40 * New adns_init_logfn etc. for having logging done with a callback
41 function.
07b2653a 42
3b3e6ba1 43 -- Ian Jackson <ian@davenant.greenend.org.uk> Sat, 7 Jan 2006 17:10:11 +0000
07b2653a 44
ac015392 45adns (1.1); urgency=medium
46
c5f033db 47 Major bugfixes:
237ce710 48 * Do not spin if connect() fails immediately (!)
ac015392 49 * Stop searching on a CNAME (even if it's broken).
50 * When search list runs out, _qf_owner sets owner to query domain.
0d66e373 51 * Fix bogus multiple updates to p in transmit.c (!)
c5f033db 52
53 Portability improvements:
0d66e373 54 * Fix up spurious #undef's in hredirect.h.
91e6c883 55 * Don't use <sys/select.h> any more, it was a mistake made in pre-1.0
56 (and there doesn't seem to be much explanation why).
0f15dd7b 57 * Understand and sort of check OpenBSD `lookup' resolv.conf directive.
0d66e373 58 * #include <stdlib.h> in internal.h (for abort etc).
5aabad0d 59 * Always #include <sys/types.h> before <sys/socket.h> (for FreeBSD 4.6).
c5f033db 60
61 Cosmetic and documentation improvements:
1ec67696 62 * Added wishlist entry re configurable port no.
4fde3e92 63 * Problem with SERVFAIL in TODO.
3a68c787 64 * README.html: mentioned Jarle Aase's Windows port, and other fixes.
b5bc5076 65 * Some better source code formatting/wrapping.
ac015392 66
20b6c0bb 67 -- Ian Jackson <ian@davenant.greenend.org.uk> Tue, 1 Jul 2003 22:55:29 +0100
ac015392 68
ad7e1412 69adns (1.0); urgency=medium
0a4fd9ed 70
5a0be244 71 Bugfixes:
7672a872 72 * Treat 8-bit characters in email addrs as RFC822 `special' (=> quote).
6b891b5a 73 * Fix incorrect `compressed datagram contains loop' error.
5a0be244 74 * Actually compile shared libraries by default !
98e3fa81 75 * Fix adnsresfilter usage message to include correct default timeout.
5a0be244 76
bef232ae 77 General improvements:
98e3fa81 78 * adnshost, adnslogres, adnsresfilter have options for config override.
79 * adnsresfilter has --debug option.
295cf525 80 * Improvements to adnslogres (incl. new -c option) from Tony Finch.
aa3ffb57 81 * adnslogres has --help option, all utilities support --version.
239d2e4d 82 * Documentation improved somewhat, including new GPL-vs-LGPL file.
b6922f88 83
84 Changes for non-BETA release:
85 * Change shared library soname to 1.0.
8e5a4960 86 * Do not install adnstest test utility.
bef232ae 87
88 Regression test improvements:
89 * Tests now include adnshost, adnslogres and adnsresfilter.
0ebff22d 90 * Test cancellation both before and after query completion.
91
e64c0ea5 92 Portability fixes and cleanups:
93 * adnstest: setvbuf(stdout,...) before we do first output.
5a0be244 94 * Cope with compilers that don't do `inline'.
e64c0ea5 95 * Add and fix various missing system #includes.
57700a3b 96 * Find install-sh properly when we need to use it, and chmod it +x.
5a0be244 97 * Do not use variadic macro, use stdarg instead (adnslogres.c).
e64c0ea5 98 * Regression tests work even if some syscalls are already macros.
5a0be244 99 * #include "config.h" before "adns.h".
5a0be244 100 * Cast a sizeof(...) in src/event.c to unsigned long before printing.
f9476535 101 * Add pre-generated versions of m4-generated files in regress/.
5a0be244 102 * Kill bogus warning, adh-main.c: `arg2' might be used uninitialized ...
e32d0f9e 103 * Add extra {...} near adnslogres.c:167 to kill spurious warning.
5a0be244 104 * Use `printf' instead of `echo -n'.
e64c0ea5 105 * Add list of tested platforms in INSTALL file.
0a4fd9ed 106
cada00d4 107 -- Ian Jackson <ian@davenant.greenend.org.uk> Sun, 17 Sep 2000 15:15:58 +0100
0a4fd9ed 108
b6922f88 109adns (0.9) BETA; urgency=high
8fedcfeb 110
1ed3dba4 111 Bug fixes:
112 * Don't make _processany always kill the TCP connection with the message
113 `TCP connection failed: poll/select: exceptional condition detected'.
3dbef075 114 * Call MEM_ROUND in __transfer_interim (avoids assert fail
115 `qu->interim_allocd>=0' on some platforms eg 64 bit).
51cc4d90 116 * adnsresfilter doesn't resolve textual prefixes of addresses (eg,
117 10.0.0.1 out of 10.0.0.123) if input happens to block at that point.
fb901bf5 118 * Do not spin if TCP connection blocks for writing (and add test case).
119 * Fail queries if TCP dies repeatedly, rather than retrying many times.
120 * Do not abort in a couple of places if TCP unexpectedly broken.
d1cac7c0 121 * Do not free something twice if query fails and is then cancelled.
8fedcfeb 122
1ed3dba4 123 Portability/compilation fixes:
124 * Move `extern "C" {' to after #include <...>'s.
a5e80149 125 * Pass LDFLAGS from configure on to ld via settings.make.in.
126 * make clean deletes *.so and *.so.* files.
48337073 127 * New --disable-dynamic configure option for non-ELF systems.
a0c76eee 128 * Use AC_PROG_INSTALL (=> perhaps install-sh), to avoid bad `install'.
1ed3dba4 129
0544e0de 130 Minor improvements:
131 * Do not print warning if sendto() gives EAGAIN.
51cc4d90 132 * adnsresfilter default timeout changed to 1000ms.
e24e7155 133 * m1test script can invoke `hrecord' differently.
fc938da6 134 * regress/output-<case>.report file contains more useful info.
4423286d 135 * TODO list and other docs updated slightly.
d00d4b99 136 * Referrals with RD+RA set, or RCODE=Refused, don't generate warnings,
137 just debug messages. BIND does this kind of thing all the time.
0544e0de 138
806b3e0a 139 -- Ian Jackson <ian@davenant.greenend.org.uk> Wed, 9 Aug 2000 16:59:28 +0100
8fedcfeb 140
626f8695 141adns (0.8) BETA; urgency=medium
34a2240e 142
4fad263d 143 Bugfixes:
6c68a593 144 * Race near adns_beforeselect which could cause infinite timeout fixed
145 (it's now less agressive, and will more often return a zero timeout.)
428bd682 146 * Fixed infrequent race causing assertion failure in adns__tcp_broken
147 `ads->tcpstate == server_connecting || ads->tcpstate == server_ok'.
d0bed398 148 * Spurious `server failure on unidentifiable query' warning suppressed.
428bd682 149 * If we get a referral, don't also always complain falsely about RD==0.
2658c305 150 * adnslogres: cast chars to unsigned char before using ctype.h macros.
4fad263d 151 * In _beforeselect, global failure now means zero timeout, and in
152 tcp_events, really never try to do anything with the TCP connection if
153 act is zero. This might possibly cause an infinite delay (ie, lockup)
154 if things go badly wrong *and* a really unlikely race happens.
155 * Test suite `lines of syscall left' value is correct; !0 is failure.
156
157 Portability fixes:
158 * install-sh (from autoconf 2.12 Debian r13) included.
7c409027 159 * adnslogres: do not call equivalent of printf("%.*s",0,(char*)0).
4fad263d 160
161 Documentation improvements:
2b61beb8 162 * Security/performance note added, about local nameservers and DNSSEC.
06f8e611 163 * Documented that adns_rr_info _rr_hostaddr ( ) for address list
164 means permanent failure, and ? means temporary failure.
165 * Typo (*now for now in _beforeselect description) in adns.h fixed.
3d5cde09 166 * Copyright notices updated.
4fad263d 167
168 Changes to produce more defensive code:
169 * In adns_wait, assert that the timeout is not infinite.
170 * Make qu->id start out as -2 when initially allocated.
d0bed398 171
3d5cde09 172 -- Ian Jackson <ian@davenant.greenend.org.uk> Sun, 7 May 2000 23:37:13 +0100
d0bed398 173
16d7d2b5 174adns (0.7) BETA; urgency=medium
1a0a5dbd 175
2b1c6979 176 * New adns_submit_reverse_any for eg RBL lookups, and corresponding
177 option to adnshost.
1a0a5dbd 178 * README updated (from www home page).
2b1c6979 179
180 * In answers, quote all except alphanums and - _ / + (and document).
181 * Don't reject specials in cnames even without adns_qf_quotefail_cname.
4b2c4f8a 182 * Better checking of long domain names and labels in queries.
2b1c6979 183 * answer->owner may be null on error. Documented, and adnshost copes.
184 * Better reporting of unexpected or weird replies from nameserver.
5b9dd636 185 * Add test case for recursion (infinite loop) domain compression.
1a0a5dbd 186
d233258a 187 -- Ian Jackson <ian@davenant.greenend.org.uk> Thu, 2 Mar 2000 01:55:53 +0000
1a0a5dbd 188
8c586086 189adns (0.6) BETA; urgency=high
3d1ae6ea 190
eed63b97 191 Core library bugfixes:
3905bfc2 192 * Avoid infinite timeouts, causing lockup, when they should be zero !
c62edca0 193 * TCP handling revamped (avoids undefined behaviour due to reentrancy).
8c586086 194 * Do not fail assertion if _qf_owner, _qf_search, domain ends in `.'.
914a5ff5 195 * Many memory leaks fixed.
eed63b97 196
8ef9f155 197 Cool new utility:
198 * adnsresfilter is like `cat' but converts addresses to names without
199 delaying the output. Pipe `netstat -n', `tcpdump -ln', etc. into it.
200
eed63b97 201 Test and client program bug and portability fixes:
696e536a 202 * Dynamic library building works properly.
4f257c51 203 * adnshost prints somewhat better messages about some wrong usages.
eed63b97 204 * Include <stdlib.h> and <sys/types.h> in adnshost.h.
8c7e7322 205 * adnslogres: parsing and error checking improved (Tony Finch).
914a5ff5 206 * Regression tests can cope with zero-length reads.
207 * Regression tests check for memory leaks.
c62edca0 208 * adnstest copes with empty query type list.
209 * adnstest uninitialised memory bug fixed.
bb149f75 210
211 General improvements
413b9ad6 212 * Better control of adnshost output and error messages (new -F options).
8ef9f155 213 * New adns_if_logpid option (functionality suggested by Tony Finch).
592aa664 214 * New fanftest test program from Tony Finch (ignored by `make install').
fb7fbb66 215 * Reads /etc/resolv-adns.conf if it exists.
8ef9f155 216 * Declare flags parameters as enums again, not ints.
3d1ae6ea 217
33d35d14 218 -- Ian Jackson <ian@davenant.greenend.org.uk> Wed, 24 Nov 1999 17:13:03 +0000
3d1ae6ea 219
b6a93f16 220adns (0.5) unstable; urgency=high
9ea0d219 221
23d78b27 222 New features:
d7449548 223 * adnslogres, ~100x faster replacement for Apache logresolve;
23d78b27 224 Thanks to Tony Finch for the program and the performance figure.
d7449548 225 * Internal consistency checking with assert if right options set.
226 * adns_wait_poll function like adns_wait but uses poll, not select.
227 * adns_reverse_submit function for easy in-addr queries.
228 * adns_errtypeabbrev funcion for getting eg "permfail" from _s_nodata.
229 * adnshost utility for scripts and the like (rather alpha).
23d78b27 230
b365d68a 231 Incompatible changes:
232 * RRs with mailboxes never rejected due to strange chars if _raw.
233 * Lack of a mailbox produces `.' not `<>'.
4ac46883 234 * Better usage messages (and no default query domain) for adnstest.
226c5eef 235 * Return EAGAIN from _check instead of EWOULDBLOCK.
ac77ffc1 236 * adns_rr_info on _r_mx etc. shows status type abbrev and status number.
b365d68a 237
dd34699e 238 Bugfixes:
70ad7a2a 239 * Do not invoke __autosys indirectly from __procdgram (result: coredump
240 usually in memmove, unless adns_if_noautosys was used).
241 * Do not scramble innards when a query on the output queue is cancelled.
6a578b2c 242 * Do not close tcp socket twice.
b365d68a 243 * Mailboxes containing spaces in their names are quoted.
57d68ed1 244 * Give ESRCH, not EAGAIN, if _check called with no queries outstanding.
b365d68a 245 * adns_rr_hostaddr naddrs is -1 on temporary failure (as documented).
b365d68a 246 * Reject TXT RRs with no strings.
05db5bce 247 * Correct error messages for qname CNAME foo, foo CNAME bar.
f31af9c9 248 * adns_processany actually does something.
70ad7a2a 249 * Fixed typos in adns.h.
dd34699e 250
251 General improvements:
252 * Promise not to change fds in adns_beforepoll (if now is specified).
05db5bce 253 * Improved textual error string for _s_prohibitedcname.
0aa7cba0 254 * New comment in adns_processany and return 0 (not r which is 0).
c8c7c813 255 * Documentation of resolv.conf directives and options, and of environment
256 variables understood, in adns.h
1671459c 257 * Regression test scripts set EF_DISABLE_BANNER (for Electric Fence).
9ea0d219 258
dd34699e 259 Portability and build improvements:
260 * Give install the '-c' flag (otherwise some delete the original !).
261 * Do not remove top-level Makefile on `make clean'.
262 * Don't complain so much about poll(2) tests if not available.
263 * Do not give -u 0 -g 0 options to install.
0aa7cba0 264 * Remove trailing , from some enums in adns.h.
9310ea4d 265 * Dynamically linked clients now made with -l, so as to avoid rpath.
266 * Do not use $^ in make rules (should help with non-GNU make).
679ff49d 267 * Declare flags parameters as ints not enums because C++ is crap.
dd34699e 268
a7b2012b 269 -- Ian Jackson <ian@davenant.greenend.org.uk> Wed, 13 Oct 1999 02:24:35 +0100
9ea0d219 270
a7c94417 271adns (0.4) unstable; urgency=high
54f4a80a 272
14975d6b 273 General important bugfixes:
8b3d55e3 274 * make _qf_owner work if _qf_search not specified, and test it (oops!)
d855b532 275 * ads->configerrno now initialised (in setup.c).
14975d6b 276 * timercmp(,,<=) doesn't work - use !timercmp(,,>).
4218fb9a 277 * Changed memory semantics of internal queries to fix bugs.
14975d6b 278 * Restarting a TCP-using query (eg due to CNAME) doesn't abort.
279
280 Fixes for handling of broken kinds of reply:
ebf4877a 281 * Only accept a reply from the subset of servers we sent the query.
14975d6b 282 * Ignore CNAME(s) in answer after RR(s) (and test).
283
284 Other bugfixes and improvements:
285 * adns_s_systemfail is in table of errors (for eg adns_strerror).
5ab2163b 286 * Do not ship config.cache, Makefile, etc.
14975d6b 287 * Improvements to install instructions, TODO, etc.
636b69b1 288 * Regression tests compile on systems without poll(2).
289 * Do not install adnstest_s.
636b69b1 290 * _submit returns ENOSYS, not adns_s_unknownquery; documented, tested.
14975d6b 291 * <adns.h> includes <sys/types.h>, <sys/time.h>, <unistd.h>.
54f4a80a 292
5ab2163b 293 -- Ian Jackson <ian@davenant.greenend.org.uk> Thu, 5 Aug 1999 01:17:38 +0100
54f4a80a 294
dcc8e442 295adns (0.3) unstable; urgency=low
296
620c146d 297 Incompatible changes:
298 * Low adns_status values (below adns_s_max_tempfail) renumbered to make
299 room for future locally-induced and locally-detected errors.
300 * Event loop functions for use by select(2) renamed and tidied up.
301
9da4a044 302 Features / improvements:
303 * New adns_errabbrev() for getting status abbreviation strings.
304 * regress/checkall prints summary list of failed tests, if any.
620c146d 305 * Event loop functions for poll(2), and some raw variants.
fc6a52ae 306 * adnstest has ability to use poll(2), and user can set initflags.
307 * checkall prints passed list as well as failed list, if any failed.
9f81b2a2 308 * You can iterate over outstanding queries (but only once at a time).
9da4a044 309
dcc8e442 310 Bugfixes:
9da4a044 311 * Non-RFC822 mailbox `domain' formatting now works, and clarified.
312 * Rejection of bad characters in domains (without quoteok) works.
dcc8e442 313 * Clean up parents from adns->childw (otherwise would abort/segfault).
314 * In adnstest, allocate enough space for, and terminate, query types.
9da4a044 315 * In adnstest, don't print errno values as adns_status values.
dcc8e442 316
317 * Added TODO file.
669f9df5 318 * Made adnstest.c test context pointers.
9da4a044 319
bd3fce65 320 -- Ian Jackson <ian@davenant.greenend.org.uk> Thu, 15 Jul 1999 00:23:12 +0100
dcc8e442 321
71a6ff46 322adns (0.2) experimental; urgency=low
323
73c4c523 324 Portability fixes for compilation on various platforms:
71a6ff46 325 * Include <sys/socket.h> and <netinet/in.h> in files with <arpa/inet.h>.
326 * Don't use GCC union assignment feature (.rrs=0 => .rrs.untyped=0).
327 * Explictly cast things to [const] struct sockaddr* in syscall args.
328 * Check whether we need -lsocket.
0f091044 329 * Include <sys/times.h> in a few more files.
330 * Include <unistd.h> and <sys/time.h> for select.
8b5269f2 331 * Look for inet_aton and inet_ntoa (in -lnsl and -lsocket).
053b9ec6 332 * LDLIBS removed from dependency lists (some makes don't support this).
333 * An `ambiguous else' warning from some compilers in types.c is removed.
73c4c523 334
335 Other changes:
7544c6df 336 * Added COPYING (copy of the GPL).
51e80719 337 * Regression test failure output improved.
81937f1c 338 * Missing targets in regress/Makefile.in added.
f9f23683 339 * Regression test doesn't rely on value of fcntl flags eg O_NONBLOCK.
71a6ff46 340
f9f23683 341 -- Ian Jackson <ian@davenant.greenend.org.uk> Thu, 20 May 1999 00:27:32 +0100
71a6ff46 342
11b35193 343adns (0.1) experimental; urgency=low
344
345 * Initial public alpha release.
346
71a6ff46 347 -- Ian Jackson <ian@davenant.greenend.org.uk> Sat, 17 April 1999 17:42:19
11b35193 348
349Local variables:
350mode: debian-changelog
bfc2c80e 351fill-column: 75
11b35193 352End: