From 0666320b4eda500556d2c671c9527c9000057492 Mon Sep 17 00:00:00 2001 From: peter Date: Sun, 3 May 1998 04:11:49 +0000 Subject: Import (trimmed) ISC bind-8.1.2-t3b. This will be updated to 8.1.2 on final release. Obtained from: ftp.isc.org --- contrib/bind/CHANGES | 3456 +++++++++++++------------------------------------- 1 file changed, 890 insertions(+), 2566 deletions(-) (limited to 'contrib/bind/CHANGES') diff --git a/contrib/bind/CHANGES b/contrib/bind/CHANGES index 8206c7e..a09b7d4 100644 --- a/contrib/bind/CHANGES +++ b/contrib/bind/CHANGES @@ -1,2941 +1,1265 @@ -$Id: CHANGES,v 8.56 1998/04/07 04:59:42 vixie Exp $ - --- 4.9.7-T1A released --- + --- 8.1.2-T3B released --- -808. [security] A number of routines did insufficient bounds checking which - could cause crashes by reading from an invalid memory - location. (From BIND-8). + 366. [bug] Z_AUTH was set on the cache zone do_reload(). -807. [bug] The server sometimes leaked the flushset (ns_resp.c). - (From BIND-8). + 365. [security] Missing bounds checking in inverse query handling + allowed an attacker to overwrite the server's stack. -806. [bug] add_related_additional() leaked memory if the name - was already in the related array. (From BIND-8). + 364. [port] Added support for HP MPE. - --- 4.9.6 released --- + 363. [bug] named-xfer automatically restarts the transfer if the + SOA changes during the transfer. There was no limit + on the number of restarts, resulting in a lot of + wasted effort if the SOA was constantly changing. + The number of restarts is now limited. -805. [security] The server now caches only those response records - that are within the current query domain. (From BIND-8) + 362. [security] Requesting a zone transfer for a domain name which + had a resource record of a certain format would + cause the server to abort(). -804. [security] another buffer overrun plugged, this time in res_search(). + 361. [bug] named-xfer tries to close files named might have + had open. On Solaris, sysconf(_SC_OPEN_MAX) can + return RLIM_INFINITY, and if it did named-xfer + would try to close all those files. named-xfer + now applies an upper limit of FD_SETSIZE. -803. [bug] core leak fixed in ns_resp.c (twice). + 360. [port] Solaris 2.5 systems needed to + be included in port_after.h to get rlim_t. -802. [proto] RTT sorting was defeating round robin for nameserver A RRs. + --- 8.1.2-T3A released --- -801. [bug] res_send() now considers FD_SETSIZE usefully. + 359. [func] IRS group support is now controlled by the + WANT_IRS_GR define in port_before.h. -800. [bug] formatting errors corrected in precsize_aton(). + 358. [port] Updated IRIX port. -799. [bug] now that inet_pton() is safe, we call it a little more often. + 357. [port] Added support for QNX. -798. [bug] file descriptor leak plugged on systems without SO_LINGER. + 356. [func] Added -u (set user id), -g (set group id), and + -t (chroot) command line options to 'named'. -797. [bug] named-xfer signal, exit, and stub bugs fixed. + 355. [func] If getnetconf() fails because it can't create the + socket used to get the interface list, the server + will log an error if it is doing a periodic interface + scan, and panic otherwise. Previous versions of the + server always panicked. -798. [bug] tokens with merely _leading_ digits won't be taken as TTL's. + 354. [security] Bounds checking in named-xfer, dig, host, and nslookup + had problems similar to those in item 293. Added a + few more bounds checks to the server. -797. [port] Motorola 88K port integrated. + 353. [port] Paths are no longer overridden in port_after.h, and + are now generated from the various DEST paths in + Makefile.set. -796. [doc] some spelling errors, omissions, and misdirections removed. + 352. [bug] Because of problems with setting an infinite rlim_max + for RLIMIT_NOFILE on some systems, previous versions + of the server implemented "limit files unlimited" by + setting the limit to the value returned by + sysconf(_SC_OPEN_MAX). The server will now use + RLIM_INFINITY on systems which allow it. -795. [security] "dig @0 version.bind chaos" no longer shows user names. + 351. [port] Updated HP/UX 10.x port. -794. [bug] make d_rcnt larger; reorder databuf for packing efficiency. + 350. [bug] errno could be changed by certain signal handlers. + These signal handlers now save errno on entry + and restore it on exit. This changes eliminates the + need for the SPURIOUS_ECHILD #define. -793. [bug] we forgot to reset a pointer after a realloc (named_xfer.c). + 349. [bug] hesiod.h wasn't installed. -792. [bug] RRset TTL was not being maintained coherently. + 348. [port] Added support for LynxOS. -791. [doc] BOG was off by one in its ndots description. + 347. [bug] res_update() leaked the zone section it allocated. + This leak no longer occurs on normal returns, but + still occurs when there is an abnormal return. This + will be addressed in a future fix. -790. [whining] preserve forwarded RRset order for one last release. + 346. [bug] Fix 303 fixed one thing and broke another, resulting + in a nonfunctional grscan(). -789. [bug] TCP timeouts were leaking file descriptors. + 345. [bug] Fix 328 was bad, causing the root zone to be purged + every time a toplevel domain was reloaded. -788. [bug] AXFR needs 64K to fit in, not PACKETSZ. + 344. [bug] The priming fix in change 330 erroneously called + unsched() twice, causing a core dump if priming + failed. The priming fix could also erroneously + query [0.0.0.0].0. -787. [bug] dangling CNAMEs caused erroneous forwarded responses. + 343. [bug] The REQUIRE() in free_rrecp() was wrong, and was + triggered by an unapproved update. -786. [protocol] better checking of incoming additional data. + 342. [port] Added support for SCO UNIX 3.2v5.0.4. -785. [bug] forced reload of parents after zone expiry had problems. + --- 8.1.2-T2A released --- -784. [bug] SRV RR's were not decoded properly. + 341. [port] The LOG_CONS option to openlog() does not work as + documented on some systems. The server will now use + LOG_CONS only if USE_LOG_CONS is defined by the + port. Currently the bsdos, decunix, freebsd, linux, + and netbsd ports define USE_LOG_CONS. -783. [bug] BUFSIZ is less than PACKETSZ on some systems (overruns). + 340. [bug] The pid file was updated before the configuration + file had been read. -782. [bug] named could spin on invalid TCP input formats (ns_main.c). + 339. [port] #define HAVE_GETRUSAGE for Solaris >= 2.5. -781. [bug] short names of all hex digits were being handled incorrectly. + 338. [func] 'host' can now print AAAA records. -780. [bug] doupdate was handling BOGUSNS and syslog messages incorrectly. + 337. [bug] rm_datum() erroneously set dp->d_next to NULL + when savedpp wasn't NULL. Given a dynamic update + operation that deleted more than one RR, this bug + would cause all but one of the RRs to be leaked, and + would prevent correct rollback if the update failed. -779. [bug] named-xfer can now handle RFC1035-compliant zone transfers. + 336. [bug] Make sure 's' isn't negative in res_send(). This + shouldn't happen, but there have been some reports + suggesting it can happen. -778. [security] wire protocol names now limited to MAXCDNAME octets. + 335. [lint] Cleaned up more gcc warnings. -777. [port] res_send name redefinition now covered by BIND_RES_POSIX3. + 334. [port] Added support for HP-UX 9.x. - --- 4.9.5-p1 released --- + 333. [bug] db_glue.c didn't compile if DEBUG wasn't defined. -776. [doc] doc/misc/FAQ.* updated by its author. + 332. [bug] named-bootconf.pl didn't convert secondary lines + that didn't contain a filename correctly. -775. [bug] KEY RRs were not allowed to default fields per [DNSSEC]. + 331. [bug] If the server was configured with forwarders (but + not in forward-only mode), and a query ran out of + forwarders and had no nameservers, then the server + would erroneously forward the request to [0.0.0.0].0. -774. [bug] nslookup was overflowing yet another internal data structure. + 330. [bug] If priming of the root servers failed, recovery could + take a long time. If using forwarders to prime + and the query expired, the first forwarder would + always be skipped on subsequent attempts. The server + complained about priming problems in forward-only mode, + even though it doesn't matter. -773. [bug] syslog was being given an unprotected string to format from. + 329. [port] Some versions of Linux apparently need SPURIOUS_ECHILD. -772. [debug] a debugging syslog() was made clearer. + 328. [bug] purge_zone() didn't recurse if given the root zone, + causing old data and new data for the root zone to be + merged. -771. [contrib] contrib/host updated by its author. + 327. [func] Add log_check() and log_check_channel(). -770. [bug] nslookup was overflowing an internal data structure. + 326. [func] Add r_prev field to ns_updrec in . -769. [port] ultrix linkage hackery removed from res/res_comp.c. + 325. [bug] Rollback of a failed dynamic update was done in FIFO + order instead of LIFO order. -768. [lint] named-xfer u_char* vs. char*. + 324. [bug] evTryAccept() closed the wrong fd if getsockname() + failed. -767. [port] shres/sunos updates from the author. + 323. [bug] eventlib didn't clear bits that had been serviced + or deselected out of ctx->{rd,wr,ex}Last. -766. [bug] nslookup was not limiting the number of addresses it handled. + 322. [bug] evDestroy() destroyed the files list before destroying + the streams list. If there were any active streams, + this would cause a double destroy of the streams' + file objects, very likely triggering an 'insist'. -765. [port] LOG_NOWAIT turned on if available. + 321. [bug] The correct error code for a failed asynchronous + connect was not reported. It now is, at least on + systems that have the SO_ERROR socket option. -764. [lint] nslookup NULL vs ERROR. + 320. [func] Allow multiple pending accepts. evTryAccept() now + reports the errno if an error was queued. -763. [bug] p_rr() was erroneously reporting short packets. + 319. [bug] The toplevel Makefile passed MARGS before $settings, + which prevented overriding a port's Makefile.set + from the command line. -762. [bug] minor memory leak fixed (during bad-name syslogging). + 318. [bug] The Solaris port_after.h checked for SUNOS_2_5_1 + instead of SUNOS_5_5_1. -761. [port] NeXTstep portability improved for modern systems. + 317. [unused] [This change number was allocated but not used.] -760. [bug] NAPTR RR support was incomplete/broken in named-xfer. + 316. [bug] evTryAccept() didn't append to the done list correctly + if connLast wasn't NULL. -759. [port] The resolver's POSIX.3 conformance is now optional since - it was causing trouble for vendor shared library editing. + 315. [bug] The dynamic update code was incorrectly converted to + clean up ns_updrec structures using the new clustered + memory allocator, and this would cause an 'insist' to + be triggered some time after a dynamic update had + been processed. Instead of freeing the ns_updrec + fields directly in ns_update.c, res_freeupdrec() was + added to the resolver. - --- 4.9.5-rel released --- + 314. [bug] Adding and then deleting an RR in a single dynamic + update request would crash the server. -758. [doc] more Linux libc discussions included. + 313. [bug] The nameserver would only try zone transfers from + the master that answered its SOA query. If a master + for some reason can answer the SOA but not the AXFR, + the other masters (if any) should be tried. -757. [doc] RFCs 1876, 1995, 1996, 2010, and 2052 now included. + 312. [security] Bounds checking in the resolver and dynamic update + code had problems similar to those in item 293. + Added more checks to ns_resp.c. -756. [contrib] new version of contrib/host received from author. + 311. [bug] The s_wbuf in the qstream structure was leaked in + certain zone transfer failures. -755. [bug] nslookup had a latent buffer overrun in initialization. + 310. [bug] If the server ran out of memory in ns_xfr(), the + subsequent connection cleanup could modify the + z_numxfrs field of zone 0 instead of the zone being + transferred, causing an 'insist' to be triggered later. -754. [port] NCR's flavour of SVr4 is now supported. + 309. [bug] NAMELEN() could return a negative length. -753. [bug] fp_nquery() could read past end of buffer. (fix from BIND 8.1) + 308. [func] Don't log ECONNRESET in stream_getlen(). -752. [conf] SENSIBLE_DOTS is now the default. SGI can use WANT_PIDFILE. + 307. [bug] include/isc/assertions.h and include/isc/list.h + weren't installed. -751. [doc] the the BOG had an extra "the" in two places. + 306. [bug] Timewarping into the future would cause repeating + timers to generate an event for every interval between + the previous time and the new time. Repeating timers + are now rescheduled based on the last event time, not + their due time. Idle timers now use the last event + time to compute the idle interval instead of the due + time. -750. [bug] erroneous zones weren't resetting z_ftime. + 305. [bug] The BOUNDS_CHECK() for the 5 32-bit integers in the + SOA RR was wrong. -749. [bug] named-xfer's handling of unknown type codes was not robust. - (it's still wrong but now it's wrong more gracefully.) + 304. [bug] lib/isc/assertions.c and lib/isc/memcluster.c did not + follow the port_{before/after}.h convention. + memcluster.c #included eventlib.h but did not need it. -748. [lint] u_char vs. char changes in db_load.c. + --- 8.1.2-T1A released --- -747. [bug] a previous patch had leftovers. + 303. [bug] 'bp' in grscan() in lib/irs/lcl_gr.c was incorrectly + validated, potentially causing corrupt data to be read. -746. [bug] dangling CNAMEs were not handled properly. + 302. [port] #define HAVE_GETRUSAGE for Solaris >= 2.5.1. -745. [doc] shres/sunos/INSTALL, ./INSTALL and man/gethostbyname.3 - modernized. + 301. [port] Added support for Solaris 2.6. -744. [bug] NAPTR replacement domains were being verified as hostnames. + 300. [bug] The space for the pathname of named-xfer in the + options block leaked. -743. [port] hpux10.10 makefile cleanup. + 299. [bug] wasn't in the include directory, and wasn't + included before "port_after.h". -742. [bug] inet_net_pton() was doing bad things to subnets and b'casts. + 298. [func] Added "deallocate-on-exit" and "memstatistics-file" + options. If deallocate-on-exit is "yes", the server + will painstakingly deallocate every object it + allocated. This is slower than letting the OS clean + things up, but is helpful in detecting memory leaks. -741. [func] source and owner are now logged with name errors. + 297. [port] GNU libc 2.0 doesn't have so in the + Linux port we now provide a stub nlist.h that + includes the real nlist.h if GNU libc < 2.0 and + does nothing if >= 2.0. - --- 4.9.5-t6b released --- + 296. [bug] "make stdlinks" didn't "mkdir /var/obj" if /var/obj + didn't exist. -740. [bug] dangling cname checking had a few memory leaks. + 295. [bug] Specifying a query-source with and address and port + that the server was listening to didn't work. -739. [func] SRV support made more complete; NAPTR support added. + 294. [security] The server was willing to answer queries on its + forwarding sockets. -738. [protocol] dangling CNAMEs are no longer considered format errors. + 293. [security] rrextract() did insufficient bounds checking which + could cause it to crash the server by reading from + an invalid memory location. -737. [bug] owner domain names like "*." were not considered valid. + 292. [bug] The server sometimes leaked the flushset (ns_resp.c). -736. [contrib] new version of contrib/host included. + 291. [bug] The server did not detect oversized UDP packets, + causing useless retries. -735. [doc] added some text to shres/solaris/INSTALL. + 290. [bug] free_listen_info_list() leaked the IP matching lists; + the leak occurred when the config file was reloaded. -734. [bug] loading a zone with a single line SOA RR killed following line. + 289. [bug] [This bug number was allocated for something that + turned out not to be a bug.] -733. [bug] priming could deadlock in odd cases. + 288. [func] Add new list and assertion code to the ISC library. -732. [bug] SIGHUP now caught before initial zone load. + 287. [bug] "dig +sort" doesn't do anything, but was mentioned + in dig's usage message, as well as in the man page. -731. [bug] IP/TCP session logging now controlled by #ifdef DEBUG. + 286. [bug] Some systems have a default FD_SETSIZE much smaller + than the number of files that can be opened. This + could cause problems in the resolver and eventlib. + FD_SETSIZE may now be set in + port/*/include/fd_setsize.h. -730. [port] untested HPUX 10 support added to top level Makefile. + 285. [bug] If OS probing failed to match any of the supported + ports, the build would try to continue with BSD 4.4 + settings, with poor results in most situations. An + error message is now printed if probing fails. -729. [port] ultrix vs. _res_close(); ultrix wins. + 284. [func] The interface list is now doubly-linked. -728. [bug] several d_rcode references weren't #ifdef'd NCACHE. + 283. [bug] The server would panic if binding to an interface that + it had discovered failed. Simply not listening to + the interface is a better solution. -727. [bug] SOA timer warnings now consistently logged at LOG_WARNING. + 282. [bug] The nslookup Makefile didn't prefix DESTHELP with + DESTDIR when setting DEFS. -726. [protocol] added T_NAPTR as RR type 35, hoping the IANA concurs. + 281. [bug] A socket() called in ns_main.c used PF_INET instead + of AF_INET. - --- 4.9.5-t5b released --- + 280. [bug] The sample named.conf used "clean-interval" instead of + "cleaning-interval". -725. [port] shared libraries should work on Linux now. + 279. [bug] Some panic() messages in the IP matching code in + ns_config.c were wrong. -724. [bug] "dig @0 VERSION.BIND TXT CHAOS" had never been tested. + 278. [bug] Setting an interval to zero (e.g. interface-interval) + eventually caused random timer destruction. -723. [port] Solaris 2.6 has AF_LINK but not sa_len. + 277. [bug] ns_panic() used "args" twice, but only called + va_start() and va_end() once. -722. [protocol] verify RdLength of A and AAAA RRs. + 276. [bug] nslookup's "ls" command always listed all records + instead of behaving the way its man page describes. -721. [port] missing include directories will be made during "install". + 275. [bug] add_related_additional() leaked memory if the name + was already in the related array. -720. [port] solaris and sunos should use native assemblers with gcc. + 274. [bug] If a timer was cleared while in executing its callback, + and a new non-repeating timer was created afterwards + (but still in the callback), the new timer was + erroneously destroyed when the callback completed. -719. [port] cleaned up some A/UX linkages. + 273. [func] Added transfer-source and host-statistics options. -718. [func] some SOA sanity checks were changed from errors to warnings. + 272. [func] The zone number is now unsigned, allowing up to + 65536 zones instead of the previous limit of 32768. -717. [port] BSD/named/Makefile needed to have dmalloc.c reference removed. + 271. [func] Added evDefer(). -716. [protocol] cnames and referrals were generating spurious log messages. + 270. [bug] The meaning of the count returned by select() varies + somewhat by operating system. Under certain + circumstances, this confused eventlib's accounting and + caused the server to spin. -715. [port] ultrix PCC didn't like a =&, said it was ambigious somehow. + 269. [func] Added evLastEventTime(). - --- 4.9.5-t4b released --- + 268. [bug] Connections weren't cleaned up when the eventlib + context was destroyed. -714. [port] contrib/os2-emx now contains files nec'y for OS/2 (EMX). + 267. [func] Added evTimeRW() and evUntimeRW() to control idle timer + usage in the eventlib streams module. + + 266. [func] Added file descriptor table to ev_files.c to improve + performance of evSelect() and evDeselect(). -713. [func] gethostbyname2(x, AF_INET6) now accepts address literals. + 265. [func] Added evHold(), evUnhold(), and evTryAccept(). -712. [bug] gethostbyname() wasn't seeing RES_USE_INET6 early enough. + 264. [func] Double-link many eventlib lists to allow faster + removal of list elements. -711. [bug] nslookup was printing IPv6 addresses improperly. + 263. [bug] Remember the previous non-blocking status of + sockets given to evListen(). -710. [port] an alignment bug was found and fixed by Cray. + 262. [func] Added idle timers to eventlib. -709. [bug] named-xfer was dumping core on incoming LOC RRs. + 261. [func] Added clustered memory allocator to eventlib; eventlib + and named now use this allocator. -708. [protocol] primary zones are edited to make rrset ttl's coherent during - loading. + 260. [func] The value of FD_SETSIZE that eventlib uses can be + set by changing include/fd_setsize.h. -707. [protocol] rrsets with coherent ttl's won't be overridden by new rrsets - with incoherent ttl's. + 259. [bug] Notification of hosts on the also-notify list stopped + after the first successful notification. -706. [port] Ultrix portability restored. + --- 8.1.1 released --- -705. [func] added "limit files XXX" to boot file. + 258. [bug] Setting SO_SNDLOWAT to 0 in ns_xfr() wasn't doing + what it was intended to do, and could trigger a + kernel bug on various systems derived from BSD 4.4. -704. [bug] trace generation code was getting unaligned accesses. + 257. [bug] In lib/irs/dns_ho.c, variable needsort was used in + addrsort() before it was initialized. -703. [contrib] added contrib/getkeyby, from gnu@toad.com. + 256. [func] Ignore ECHILD from select() if SPURIOUS_ECHILD is + defined. -702. [func] MAXDNAME is now 4*256+1 to allow for \000 and the NUL. + 255. [bug] The contents of libport.a needed to be in libbind.a. + libport.a has been removed. -701. [bug] samedomain() wasn't paying attention to escapes. + 254. [install] Install library and .h files under /usr/local/bind + instead of /usr/local. When the include files were + in /usr/local/include, some compilers would + automatically use them. The clients would typically + not link with -lbind, causing unresolved symbols at + link time. -700. [func] allow long text strings in T_X25 RRs. + 253. [port] Removed change 216. -699. [port] added base64.c to shres/*/Makefile. + 252. [port] Added port for UnixWare 2.0.x. -698. [port] picked some lint out of tools/nslookup/getinfo.c. + 251. [doc] Added a documentation on installing to non-default + locations. -697. [bug] we were calling isupper() without calling isascii() first. + 250. [bug] The Makefiles for the binaries didn't create the + installation target directories if they didn't exist. -696. [protocol] a new kind of bad referral is now caught and ignored. + 249. [bug] Change HAS_SA_LEN to HAVE_SA_LEN in the AIX 4 port. - --- 4.9.5-t3b released --- + 248. [security] The server now caches only those response records + that are within the current query domain. -695. [func] Use delete_stale() in preference to delete_all() more often. + 247. [bug] Forwarding of dynamic update requests sent to a + slave for the zone is broken. This will be fixed + in a future release, but in the meantime the server + will simply refuse the request. Cleaned up the + way some update code indicated that the request should + be refused. -694. [func] DATUMREFCNT is no longer an option. + --- 8.1.1-T2B released --- -693. [port] fixed up the CPPFLAGS usage in the top level Makefile. + 246. [bug] process_prereq() could core dump if the name being + processed wasn't known. -692. [port] fixed up the __ defines (for POSIX.3) in include/resolv.h. + 245. [bug] It was possible to evSelectFD the same event bits + on the same fd more than once. -691. [port] removed all uses of "ssize_t", the world is not ready for it. - (fixed two latent signed/unsigned code bugs in the process.) + 244. [bug] eventlib didn't decrement fdCount correctly if the + eventmask matched in multiple descriptor sets. - --- 4.9.5-t3a released --- + 243. [lint] Improved comment in stale(). -690. [bug] the stale() and delete_all() calls in finddata() weren't - respectful toward T_ANY and C_ANY queries. + 242. [port] Added port for OpenBSD. -689. [lint] miscellaneous compiler warnings were disappeared. + 241. [bug] evConnect() didn't evDeselect() the fd if connect() + failed, which would cause us to call select() with + a mask that included a closed file. select() would + then return EBADF and trigger an 'insist'. -688. [func] handles insane/unreachable root servers a little better now. + 240. [bug] evCancelConn() closed the fd. -687. [bug] T1A's core dumps from bad databufs should be all fixed now. + 239. [port] SunOS doesn't supply RAND_MAX. -686. [func] overlong TXT strings should work again. + 238. [bug] fakeaddr() called inet_aton() which wasn't strict + enough. inet_pton() is now used. -685. [port] updated compat/include/sys/cdefs.h to BSD 4.4-Lite (8.7) vers. + 237. [port] Added UnixWare 2.1.2 port. -684. [doc] doc/i-d/* added. + 236. [bug] The buffer in res_querydomain could overflow. -683. [contrib] "nslint" added to contrib/. + 235. [bug] Fixed memory allocation problems in lib/irs/nis_gr.c. -682. [protocol] irrelevant authority information is now correctly ignored. + 234. [bug] evDeselectFD didn't restore the fd's previous + nonblocking status correctly. -681. [func] DO_RELOAD Is no longer optional. + 233. [func] Define SPURIOUS_ECHILD in Solaris port. Don't + complain about getting ECHILD from recvfrom() if + SPURIOUS_ECHILD is defined. -680. [cleanup] ALLOW_UPDATES is gone. + 232. [func] named-bootconf.pl now supplies a commented out + query-source directive and instructions to use it + if there's a firewall involved. -679. [port] some systems need _res to be in text rather than bss. + 231. [bug] Changed a few strdup() calls in rrextract() into + savestr() calls. This prevents "related" checking + from being turned off if the server runs out of + memory. -678. [port] -Dssize_t=int is gone; see portability.h. + 230. [bug] If the query control structure was reset in ns_resp.c, + we leaked the memory used for the previous + qp->q_domain. -677. [contrib] outdates #671; update to contrib/host version 960808. + 229. [func] Added the "dump-file" and "statistics-file" options. -676. [doc] formatting fix to man/named.man8. + 228. [bug] named.conf called "statistics-interval" + "stats-interval". - --- 4.9.5-t2a released --- + 227. [func] demoted "zones changed" and "zones shrunk" messages + in tryxfer() to debug level 3. -675. [lint] various. + --- 8.1.1-T1A released --- -674. [feature] support added for SRV RR (untested). + 226. [bug] evCancelConn trashed the connections list if the + first element was removed. This could cause a + seg fault or trigger an 'insist'. -673. [protocol] added definitions for EID, NIMLOC, SRV, ATMA, and IXFR. + 225. [bug] In the "cannot redefine listen-on for port ..." + error message, the port was not converted to host + byte order before being printed. -672. [bug] fixed decoding problem wrt AAAA in tools/nslookup/debug.c. + 224. [port] Added port for AIX 4. -671. [bug] fixed formatting problem wrt TXT in contrib/host/host.c. + 223. [bug] The dynamic update routine findzone() didn't match + class, so if you had two zones with the same name + but different classes (e.g. IN and HS), then + the wrong allow-update ACL could be used, and the + wrong zone could be updated. - --- 4.9.5-t1a released --- + 222. [bug] If a dynamic master zone was updated and then was made + non-dynamic by removing the allow-update ACL or + changing it to "none" before the zone had been dumped, + then the master file would not reflect the update. -670. [feature] added SIG and KEY RR support (without signature or - verification). + 221. [func] added 'also-notify'. -669. [internal] name/number translations are now mostly table driven. + 220. [func] revised HAVE_GETRUSAGE ifdefs in ns_config.c. The + "cannot set resource limits on this system" message + on systems without HAVE_GETRUSAGE will now be logged + once per options block, and the message severity is + now "info" instead of "warning". -668. [feature] nslookup now has better[/different] error messages. + 219. [bug] If the root name was encoded in a message using a + compression pointer, dn_expand() would erroneously + return "." as the name instead of "". -667. [feature] inet_neta(), inet_net_ntop(), inet_net_pton() added. + 218. [bug] when gethostans() in dns_ho.c encountered a CNAME + while processing a PTR query, it erroneously required + that the CNAME target pass the res_hnok() test (i.e. + that it be an RFC 952 hostname). -666. [bug] parent zone will be reloaded when a child zone changes. + 217. [bug] dnsquery didn't work because it tried to use the + obsolete and broken p_query() call instead of + fp_nquery(). -665. [protocol] RETURNSOA logic has been refined, and now ships "enabled." + 216. [port] set SH=bash in port/freebsd/Makefile.set. -664. [protocol] cached RRsets are now completely flushed when new data arrives. + 215. [port] #define ts_sec and ts_nsec to tv_sec and tv_nsec + respectively in port/freebsd/include/port_before.h. -663. [port] IRIX shared libraries are now supported. + 214. [bug] the clarification TTL changes (see change 145 below) + set the SOA minimum field to zero if the MSB was set. + The server now leaves the SOA RR alone, but sets + z_minimum to zero if the MSB is set. -662. [port] SCO OSE5 support has been upgraded slightly. + 213. [bug] if the SOA refresh or retry fields of a slave zone + were 0, an 'insist' would be triggered when zone + maintenance was performed. The server still leaves + the SOA RR alone, but now imposes a minimum value for + z_refresh and z_retry. -661. [bug] insane root servers will now be handled correctly. + 212. [func] added the clean-interval, interface-interval, and + statistics-interval options. -660. [bug] TXT RRs are now parsed and displayed in full RFC1035 form. + 211. [func] scan for new or deleted interfaces periodically. -659. [port] UXP/DS is now supported in the top level Makefile. + 210. [func] the _PATH_DUMPFILE default is now "named_dump.db". -658. [feature] BIND now checks that UDP checksums are enabled in the kernel. + 209. [bug] and were #included + after port_after.h. They are now #included before + it, since they #include system header files. + ns_lexer.h was #including and ns_parseutil.h. + Now it #includes neither one. These changes required + that the definition of struct timespec be moved from + port_after.h to port_before.h in the ULTRIX, SunOS, + and A/UX ports. - --- 4.9.4-p1 released --- + 208. [port] removed HAVE_GETRUSAGE from the Solaris port, since + Solaris only has it if a Berkeley compatibility + package is installed. -657. [bug] some configurations were mistakenly disabling cache purges. + 207. [bug] abortxfer() always used SIGKILL, which didn't give + named-xfer a chance to clean up after itself. Now + abortxfer() does a SIGTERM first. If the SIGTERM isn't + successful, it will use SIGKILL. -656. [doc] "\ " was causing a line break in zone file parsing. + 206. [bug] If two zones with the same name but different classes + (e.g. IN and HS) were defined, then a zone transfer + of whichever zone loaded first would work normally, + but a zone transfer of the second would give only the + NS and SOA RRs. -655. [doc] named(8) wasn't describing the "response" literal. + 205. [bug] certain operating systems (notably Solaris) return + error codes the server didn't expect, and thus + treated as fatal to the interface. More error codes + are now recognized. The server will now log + unrecognized errors, but will not delete the + interface. Certain error results from recvfrom() and + accept() now panic the server. -654. [doc] formatting errors fixed in include/arpa/nameser.h. + 204. [bug] stub zone transfers would fail if there were no + NS records in the SOA response. The stub logic + now works as intended and has more error checking. -653. [doc] doc/misc/DynamicUpdate now has a deprecating comment. + 203. [bug] we logged a failure of bind() in opensocket_d() + twice. -652. [bug] BSD/nslookup/Makefile was making the wrong links. + 202. [port] Linux defines AF_INET6 as 10, so we use that value + in port/linux/include/port_after.h. -651. [bug] a hashing function should be as simple as possible, - but not simpler. + 201. [bug] library Makefiles want to press on if linking of + an individual module fails. The 'ld' rule was + set up to do this, but the subsequent 'mv' rule + was not, causing the make to stop if the 'ld' failed. + Now the 'mv' is done only if the 'ld' succeeds. -650. [bug] dn_mailok() could walk off the end of the name buffer. + 200. [bug] the value of timeout.tv_sec was printed in SendRequest + (bin/nslookup/send.c). select() on some systems + (such as Linux) modifies the value of the timeout, so + printing it is useless since it will always be 0. -649. [bug] bad names were not exiting through the right code path. + 199. [func] if s is too big for FD_SETSIZE in res_send, complain + and try another nameserver. -648. [bug] we were referencing dynamic memory after free()'ing it. + 198. [bug] sysnotify() was too strict in requiring an NS RR + for the server named in the SOA MNAME field. RFCs + 1996 and 2136 say the NS RR is optional. -647. [bug] savename() was bzero()'ing the wrong number of bytes. + 197. [bug] The parser erroneously freed zone_name if a zone + redefinition was attempted. This would cause the + server to dump core if a zone appeared more than + once in a configuration file. -646. [bug] ctypes.h needed to be included in res/res_debug.c. + 196. [bug] Makefiles below port/*/include had "fi \" followed + by "done" on the next line. This made bash 2.0 + unhappy. The "fi" is now followed by a ";". -645. [port] sys/types.h needed to be included in a lot of places. + 195. [port] ULTRIX's sh doesn't like an empty "for x in ..." list, + and that was causing "make install" to fail in + the src/port/ultrix/include/rpc directory. - --- 4.9.4-rel released --- + 194. [port] add SH variable to toplevel Makefile, document the + need to use SH=bash on systems where /bin/sh is + derived from "ash". -644. [bug] gethnamadr.c:getanswer() wasn't decrementing buflen. + 193. [bug] named-bootconf.pl could repeat end-of-line comments -643. [contrib] new contrib/misc/gencidrzone. + 192. [bug] ndc was being installed in DESTBIN instead of + DESTSBIN. - --- 4.9.4-t5b released --- + 191. [bug] block delivery of all other signals when in SIGTERM + handler in named-xfer. -642. [bug] SOA serial checking was not trying backup servers. + 190. [bug] named-bootconf.pl didn't handle non-masked xfrnets + correctly if the network was class B or class C. -641. [doc] added doc/rfc/rfc1713. + --- 8.1-REL released --- -640. [bug] don't try to purge the cache on nonrecursive servers. + 189. [port] update to the port/sco50 directory rcvd from author. -639. [bug] sysquery() was not recovering from lack of root servers. + 188. [func] to avoid potentially confusing log messages, don't + set Z_DYNAMIC if "allow-update { none; };" is + specified in the config file. -638. [bug] dnsquery.c wasn't calling res_init(). + 187. [bug] a panic() in new_ip_match_mask() erroneously + referred to the function as "new_ip_match_pattern". -637. [bug] ns_resp() was erroneously detecting name errors. + 186. [bug] transfers-in couldn't be set higher than the default. + It may now be set as high as 20. -636. [bug] nslookup() was returning failure even when fwdrs were avail. + 185. [doc] add a stub example to named.conf. -635. [bug] inet_pton() was returning EINVAL rather than EAFNOSUPPORT. + 184. [bug] the usage message was out-of-date. - --- 4.9.4-t4b released --- + 183. [port] some systems don't define AF_INET6, so we + define it if necessary in all port_after.h + + --- 8.1-T5B released --- -634. [bug] named-xfer was writing AAAA RRs to the wrong file pointer. + 182. [bug] fix the way bindname is allocated in hesiod_to_bind(). -633. [port] ULTRIX and RISCOS both need NEED_STRDUP in conf/portability.h. + 181. [bug] MAXHOSTNAMELEN wasn't defined on Solaris. -632. [bug] BSD/named/Makefile was installing its man page in section 1. + 180. [bug] a check for zptr != NULL in res_update was wrong. It + should have been zptr == NULL. - --- 4.9.4-t4a released --- + 179. [bug] sq_remove() and sq_done() were calling ns_freexfr() + when any stream was removed, resulting in a panic + when the server was reloaded. ns_freexfr() is now + only called when a zone transfer stream is removed. -631. [bug] nslookup was dumping core on bad 'server' commands. + --- 8.1-T4B released --- -630. [bug] dig was not able to print SRV RRs. + 178. [bug] if the server was reloaded and then a zone was + deleted and the server reloaded again, all within + a short period of time, then pending NOTIFY messages + would cause the server to panic when they ran. -629. [bug] dig was seeing artificial protocol errors printing AAAA RRs. + 177. [lint] replaced BUFSIZ with a more appropriate size in + several places. - --- 4.9.4-t3b released --- + 176. [func] change MAXDATA to 2*MAXDNAME + 5*INT32SZ. -628. [bug] "stub ." changes were being updated in the wrong place. + 175. [security] libirs now limits hostnames to MAXHOSTNAMELEN + characters. -627. [bug] forgot to remove fourth arg from inet_pton() in tools/addr.c. + 174. [bug] we called ns_refreshtime() instead of ns_retrytime() + in the Z_NEED_RELOAD|Z_NEED_XFER|Z_QSERIAL case in + zone_maint(). -626. [port] was missing -DSPRINTF_CHAR in one spot in the top Makefile. + 173. [bug] the server didn't clear the Z_NEED_RELOAD flag in + zoneinit(). - --- 4.9.4-t3a released --- + 172. [bug] if a server was a slave for a zone, and an outbound + transfer ever hung or terminated unusually, regular + zone maintenance would cease for the zone. -625. [api] inet_pton()'s signature changed due to ipng@sunroof discussion. + 171. [port] work around a bug in the Digital UNIX 4.0B SIOCGIFCONF + ioctl. -624. [port] shres/* should work again (was broken by inet_ntop, inet_pton) + 170. [func] the message logged when a zone is loaded now + indicates the class of the zone. -623. [bug] sprintf() doesn't return "int" on DomainOS, either. + 169. [func] the message logged when a zone is removed now + indicates both the type and class of the zone. - --- 4.9.4-t2a released --- + 168. [bug] if a zone's type changed from master to slave on a + server reload, the server erroneously deleted the + new zone data as part of cleaning up the old zone + data. -622. [bug] sprintf() doesn't return "int" on SunOS or ULTRIX. + 167. [func] when converting from wire format to printable format, + represent special characters ".;\@$ by escaping them + with \ instead of converting them to \DDD. - --- 4.9.4-t1a released --- + 166. [bug] when a slave zone expired, it was not scheduled for + immedidate maintenance. -622. [bug] more print errors in the name validation logic fixed. + 165. [port] added port for SCO OSE 5.0.2, renamed port for + SCO UNIX 3.2v4.2. -621. [feature] added support for IPv6 addresses to the resolver and daemon. - see doc/misc/IPv6 for details. + 164. [func] created the "response-checks" logging category. -620. [perf] XSTATS off by default. client stats now in XSTATS. + 163. [port] don't define AF_INET6 in nameser_compat.h. -619. [conf] LOC_RR is on by default (it's an RFC now). + 162. [bug] the server panicked if a dynamic update request + was sent for a dynamic zone which had not loaded + because of syntax errors in the master file. The + server now returns NOTAUTH. -618. [perf] pulled in memory saving NAME,NAMELEN,NAMESIZE logic from - development source pool. + 161. [bug] debugging messages in process_prereq() referred to + process_updates() instead of process_prereq(). -617. [bug] we were logging at INFO priority even when not loading a - zone due to certain kinds of database format errors. + 160. [bug] hp was not reset after a realloc() in named-xfer.c -616. [bug] truncated responses were not being forwarded. + 159. [bug] named-bootconf.pl didn't translate stub zones. -615. [contrib] added contrib/misc/gencidrzone.pl, updated contrib/host. + 158. [lint] cast a number of "no effect" statements to void so + that gcc doesn't complain when invoked with + -Wall -W -Wno-unused -614. [bug] minor and latent bug in dcalloc() fixed. + 157. [lint] a number of uses of the %lu printf() format were + converted to %u; the corresponding casts to u_long + were removed. -613. [bug] the RFC952 + "_" code wasn't strict enough. + 156. [lint] converted z_deferupdcnt and z_updatecnt from int to + u_int32_t. -612. [bug] the PTR name check was using ipv6.int rather than ip6.int. + 155. [func] maint_interval is now gone; SOA sanity checking + related to it is gone too. -611. [conf] changed "check-names forwarded" to "check-names response". + 154. [bug] in named-xfer, unsigned 32-bit integers were + sometimes stored in signed 32-bit variables and then + printed using a cast to u_long and printf() format + %lu. This would cause problems on 64-bit systems if + the MSB of the 32-bit integer was set. The variable + declarations have been changed to u_int32_t, and the + printf format is now %u. -610. [doc] man page said check-name, should have said check-names. + 153. [bug] log_open_stream() had two syslogs that said the + failing function was log_vwrite() instead of + log_open_stream(). -609. [bug] in res_send(), query ID mismatches weren't handled in VC's. + 152. [lint] made class, type, and dlen in rrextract() and + named-xfer.c/print_output() u_int16_t. -608. [bug] res_send() would overrun its buffer when parsing truncated - replies for its diagnostic output. + 151. [bug] the server was incrementing nssSentFErr in the + formerr: code in ns_resp.c even though it wasn't + sending FORMERR to anyone. -607. [bug] EINTR wasn't causing a select() restart in res_send. + 150. [func] in "check-names response fail" mode, instead of + just dropping a failing response, we now send + REFUSED to the client and drop the query. -606. [bug] fixed a race condition related to SO_LINGER. + 149. [bug] if there wasn't a space between the SOA minimum value + and a following ')' in a master file, the server + would generate an error when it tried to parse the + minimum value, causing the zone load to fail. -605. [bug] some "lame delegation" messages were printing wrong information + 148. [func] the list of supported syslog facilities has been + increased; the following facilities may now be used, + provided they're available on the system 'named' is + being built on: kern, user, mail, daemon, auth, + syslog, lpr, news, uucp, cron, authpriv, ftp, + local[0-7]. -604. [bug] uncached out of zone CNAMEs were returning SERVFAIL rather - than timing out; this prevented the client from retrying. + 147. [bug] the maybe_syslog_facility, logging_opt, + channel_severity, address_name, key_ref, key_stmt, + acl_stmt, zone_stmt, optional_class, and size_spec + rules in the parser either leaked memory or could + leak memory. -603. [bug] lame delegations will now try other servers rather than just - SERVFAIL'ing. the old behaviour was too draconian. + 146. [func] if an RR set in a reply differed from an RR set in + the cache only in the TTL, we would not update the + TTL of the RR set in the cache. We now update this + TTL to that of the reply RR set if the reply RR set's + TTL is greater. -602. [security] we were cycling back through the volatile cache when searching - for glue to match the bootstrap cache. + 145. [func] follow the direction of the clarification draft and + treat TTLs as unsigned 32-bit integers, with a + maximum value of 2^31 - 1. TTLs greater than the + maximum will be converted to 0. A warning will + be issued if this conversion occurs while loading + a master zone or during inbound zone transfer. -601. [bug] we were not recognizing upward zone cuts in some circumstances + 144. [func] "dig version.bind. txt chaos" now returns only + the version number (e.g. "8.1-T4B"). -600. [API bug] getnetbyaddr() was taking a long, rather than a u_long. + 143. [lint] fixed various mismatches between printf() format + string components and their corresponding + arguments. -599. [bug] PX RRs were not properly handled by named-xfer.c. + 142. [lint] SendRequest_close() in nslookup/send.c had a return + type of int instead of void. -598. [bug] WKS RRs were written incorrectly in db_dump.c. + 141. [port] converted bcopy() to memcpy() or memmove() as + appropriate. -597. [bug] named would not create a brand new pid file. + 140. [bug] certain buffer size checking comparisons in + rdata_expand() weren't working because they were + checking to see if an unsigned value was < 0. -596. [bug] memory leak in ns_resp.c plugged. + 139. [func] convert a few address comparisons from == to using + ina_equal(). -595. [bug] another wildcarding bug (in ns_maint.c) stomped. + 138. [bug] an address comparison used in marking a server as + bad was done incorrectly in ns_resp.c because the + comparison used = instead of ==. -594. [contrib] added contrib/misc/settransfer-gaine.shar. + 137. [lint] cleaned up warnings caused by assignment used as + truth-value in various source files. -593. [security] db_load() will allow invalid SOA ANAMEs, for now. + 136. [func] changed eventlib-related INSIST statements into + INSIST_ERR, so that we can print out strerror(errno). -592. [bug] dig and nslookup needed code from 4.9.4-T1A for AXFR (#589). + 135. [lint] replaced _getshort() with ns_get16() and _getlong() + with ns_get32() in various source files. -591. [bug] dig and nslookup both dumped core if dn_expand() failed. + 134. [lint] findzone() and rdata_expand() were used before + they were declared in ns_update.c, and were not + declared static. -590. [port] changed __RES to 19960229 due to dn_isvalid() API addition. + 133. [lint] merge_logs() was not declared in ns_func.h. -589. [bug] named-xfer was unable to handle some compliant AXFR streams. + 132. [lint] Linux port_after.h didn't declare daemon(). We now + do so, but only if GNU libc < 2.0. -588. [security] call dn_isvalid() from db_load() to catch zone naming errors. + 131. [lint] set_boolean_option() was not declared in ns_func.h. -587. [security] added function dn_isvalid(), called from dn_expand(), per CERT. + 130. [lint] yyparse() was not declared in ns_parser.y. -586. [bug] dangling NS RR's (no A RR's in cache) weren't recoverable. + 129. [lint] ns_lexer.h didn't declare lexer_end_file(). -585. [bug] named was ignoring the cache for "." even after priming. + 128. [lint] db_dump.c, db_lookup.c, db_update.c, db_glue.c, + db_save.c, ns_ncache.c, ns_req.c, ns_stats.c, and + ns_xfr.c didn't #include -584. [bug] ns_resp() could dump core during some kinds of query restarts. + 127. [lint] logging.c, ev_connects.c, ns_maint.c, ns_glue.c, + ns_update.c, dig/dig.c, nslookup/list.c, + nslookup/send.c, host/host.c, and + dnsquery/dnsquery.c didn't #include . -583. [bug] default logging priority for lame delegations now LOG_DEBUG. + 126. [lint] res_update.c, heap.c, db_load.c, db_save.c, db_glue.c, + ns_lexer.c, ns_forw.c, ns_maint.c, ns_req.c, + ns_stats.c, ns_xfr.c, ns_glue.c, ns_config.c, + ns_update.c, host/host.c, nslookup/list.c, and + nslookup/getinfo.c didn't #include . -582. [doc] added RFC 1912 which expands upon RFC 1537. + 125. [lint] res_mkupdate.c, ns_update.c, nsupdate.c, ns_print.c, + didn't #include . -581. [port] BSD really does not have SIGIOT any more, stop using it. + 124. [port] replaced bcmp() with memcmp(). -580. [bug] getnetent() could mangle /etc/networks input lines. + 123. [func] while not required, it's nice to preserve the order + of RRs as received when ROUND_ROBIN isn't on, so + we now do so. -579. [bug] db_dump was printing -1 for TTL wherever default TTL was used. + 122. [bug] under certain improbable conditions, the server + could erroneously set a maintenance timer for a + master zone. When the timer went off, it would + trigger the INSIST() in zone_maint(). -578. [port] many scanf/printf patterns misused %lu, DEC AXP didn't like it. + 121. [port] replaced bzero() with memset(). -577. [bug] named-xfer and res_debug were mishandling "\\" in TXT/HINFO. + 120. [func] added multiple-cnames option. -576. [bug] "limit" directive was setting current but not max system limit. + 119. [bug] the timeout: code in ns_resp.c didn't clean up TCP + connections. - --- 4.9.3-p1 released --- + 118. [port] added port for IRIX 5.3, 6.2, 6.4 -575. [port] Ultrix/Hesiod named responses are oversized, we were - incorrectly accepting them and then overwriting the stack. + 117. [bug] removed declaration of getnum_error from db_load.c, + since it is now declared in ns_glob.h. -574. [port] BSD/OS 2.1 required some ./BSD/Makefile changes. + 116. [bug] GNU libc 2.0 doesn't have a , so in the + Linux port we now provide a stub net/route.h that + includes the real if GNU libc < 2.0 and + does nothing if >= 2.0. - --- 4.9.3-rel released --- + 115. [func] on Linux systems, avoid an often unnecessary 'ranlib' + and the subsequent relinking of all binaries by using + the 's' flag of 'ar'. -573. [contrib] put in "951231" version of contrib/host. + 114. [bug] 'make install' didn't work on HP/UX because the + path to the install script was wrong in many cases. -572. [doc] new file doc/info/SCO-2 concerning porting. + 113. [bug] named-xfer didn't clean up properly when sent SIGTERM. -571. [bug] zones whose master files contained only $INCLUDEs were - incorrectly considered to not have any RR's (old bug.) + 112. [bug] named-xfer didn't clean up properly if an error + occured in print_output(). -570. [doc] trivial man/named.8 tweak. + 111. [func] added "max-transfer-time-in" option. The server + used to allow a maximum of 2 hours for an inbound + zone transfer to complete. This time can now be + set globally or on a per-zone basis. The parameter + is the number of minutes a transfer can take. -569. [doc] minor documentation tweak to shres/solaris/ISSUES. + 110. [func] moved declaration of d_ns in struct databuf to improve + structure alignment. - --- 4.9.3-beta34 released --- + 109. [bug] addname() in ns_print.c didn't write an "@" for RRs + that contained a domain name which was the same as + the zone origin (it wrote nothing). -568. [bug] very minor initialization bug fixed in tools/dig.c. + 108. [bug] the server didn't check for EINTR in readable() and + writable() in ev_streams.c. -567. [bug] disabled VALIDATE; all this code is trash and will be removed - along with ALLOW_UPDATES very early in the next alpha cycle. - we are now back to the B26 level of stability, with several - minor bug fixes from intervening betas. + 107. [bug] check for both EWOULDBLOCK and EAGAIN after certain + system calls instead of using PORT_WOULDBLK. This + fixes partial zone transfer problems reported on + Sun systems. -566. [bug] fixed memory leak introduced in #565. + 106. [bug] db_load() couldn't read SOAs with ( ) that were only + one line. - --- 4.9.3-beta33 released --- + 105. [bug] fixed typo in Linux Makefile.set MANROFF definition. -565. [proto] we were generating truncated RRsets due to VALIDATE bugs. + 104. [func] move various rrset debugging messages, rm_datum, and + nsfree messages to debug level 3. Moved a few rrset + debugging messages to debug level 2. -564. [proto] we weren't stopping early enough on some kinds of truncation. + 103. [bug] d_rcnt could overflow; to prevent this it has been + increased to 32 bits. d_mark was made unsigned and + decreased to 12 bits. -563. [doc] added doc/info/Solaris, concerning Sun Patch-ID# 102165-02. + 102. [func] added macro DRCNTDEC to go along with DRCNTINC. -562. [bug] named/ns_resp.c had an overzealous #ifdef. + 101. [bug] clean_cache() didn't count deleted RRs, so it + always reported "Cleaned cache of 0 RRs". -561. [port] tools/nslookup/getinfo.c had an ANSI C nit. + 100. [bug] heap_for_each() didn't return a status, and didn't + check for a NULL context or a NULL action. + heap_element() didn't set errno to EINVAL when + given invalid arguments. -560. [port] shres/netbsd and Makefile's netbsd stuff was wrong. + 99. [bug] the category rule in the parser leaked memory. -559. [doc] shres/* documentation had more pathname problems. + 98. [bug] "notify" was not recognized as a valid category + name. -558. [port] SCO OSE5 portability problem (minor). + 97. [security] zone access control wasn't applied correctly to + names that didn't exist, allowing an attacker to + determine whether or not a given name exists in a + zone. -557. [doc] added doc/misc/style.txt out of my archives. + 96. [bug] we didn't recognize certain non-fatal errno values + when recvfrom() failed; this would result in us + dropping an interface unnecessarily. -556. [contrib] updated contrib/arlib, contrib/dnsparse (really!). + --- 8.1-T3B released --- -555. [bug] quoted newlines were still broken even after #509. + 95. [bug] named-bootconf.pl didn't process xfrnets correctly + (if no netmask was specifed, it assumed a mask of + 255.255.255.255 instead of the natural netmask for + the class of the address). -554. [bug] dangling CNAME cache chains could make named dump core. + 94. [bug] named-bootconf.pl didn't handle lines ending in a + comment. -553. [bug] forwarders didn't work well with VALIDATE. + 93. [bug] if rename() failed in merge_logs(), we would return + garbage instead of -1. - --- 4.9.3-beta32 released --- + 92. [bug] writemsg() in named-xfer.c was returning a random + value instead of the number of bytes written. -552. [doc] ./Makefile had some out of date comments. + 91. [bug] schedretry() could set retry times in the past + because it was relying on 'tt' which hadn't been + updated. It now calls gettime(&tt). -551. [bug] shres/sunos/* needed some fine tuning. + 90. [bug] 'tt' might not have been current when clean_cache() + was called. -550. [contrib] contrib/dnsparse replaced with a later version. + 89. [bug] ns_lexer.h didn't #include - --- 4.9.3-beta31 released --- + 88. [cleanup] removed some relics of the early days of BIND 8's + new logging system from the parser and ns_config.c. -549. [bug] "make links" hadn't been tested in a while; shres/* req'd chg. + 87. [bug] when writing to a TCP socket, the server didn't + handle errors from the write() correctly. Under the + right circumstances, this will cause the server to + spin. The most common trigger would be a large + outbound zone transfer where the far end died. -548. [bug] shres/sunos/* needed some fixups due to a late Sun patch. + 86. [cleanup] fixed comment in dig.c that messed up font-lock mode + in emacs. -547. [doc] Makefile comments for Linux were out of date. + 85. [bug] inet_lnaof, inet_makeaddr, inet_netof, and + inet_network were missing from lib/inet. -546. [doc] OPTIONS had an incorrect path name and some factual errors. + 84. [func] improved log_channel creation and use by making the + type more opaque. The logging API provides a more + complete set of services. Added the LOG_CHANNEL_OFF + flag. -545. [bug] shres/sunos/Makefile had some incorrect path names. + 83. [func] removed statistics_channel; it wasn't being used. - --- 4.9.3-beta30 released --- + 82. [lint] a few handler functions were declared as + void (*)() instead of void (*)(void). All now have + the latter declaration. -544. [port] some systems with broken CPP's wouldn't compile ns_req.c. + 81. [port] added port for A/UX 3.1.1. -543. [bug] query restart bug in ns_resp.c. + 80. [port] added port for SCO UNIX 3.2v4.2. - --- 4.9.3-beta29 released --- + 79. [bug] when processsing slave zones during a config file + reload, in the "backup file changed" (or missing) + case we were calling purge_zone() and do_reload() + even if we had never successfully transferred and + loaded the zone. -542. [port] rearranged signal() calls to make POSIX + SYSV possible. + 78. [cleanup] moved writemsg() to named-xfer.c. -541. [port] padded _res to 512 bytes; moved initialized data to res_data.c. + 77. [cleanup] removed doupdate() from ns_resp.c. -540. [port] added experimental shres/netbsd/ directory. + 76. [bug] writev() in lib/bsd would keep going if there was + a partial write; this could cause incorrect output. -539. [bug] we weren't able to load 0 ttl's in zone files. + 75. [func] added readv() to lib/bsd. -538. [doc] BOG corrections. + 74. [bug] if evConnect() failed in tcp_send() we were aborting + the server instead of just returning an error. - --- 4.9.3-beta28 never released --- + 73. [port] automatically fix getgrgid() declaration in ULTRIX + 4.5 grp.h. -537. [contrib] new contrib/lamers/ directory. + 72. [func] make port/*/Makefile invoke SUBDIR make in + include. Add/modify include and include/sys + Makefiles. -536. [bug] there was a possible deadlock condition over missing glue. + 71. [port] added utimes() to lib/bsd. -535. [bug] previous patch to db_load() was misapplied. + 70. [doc] README broken up into INSTALL, TODO, port/README. + Added more info about many topics. -534. [bug] several ancient cache corruption bugs fixed in ns_resp(). + 69. [bug] NOTIFY didn't handle an unknown NS target. E.g. + if we had "test.domain NS unknown.name" and + "unknown.name" was not known, NOTIFY wasn't doing an + "A" query for "unknown.name". -533. [root] root servers required a new ``no-fetch-glue'' option. + 68. [lint] tweaks to ERR() and OK() in eventlib_p.h. -532. [bug] all kinds of stuff was broken under shres/ due to new subdir. + 67. [bug] 'ch' in main() was a char instead of an int. - --- 4.9.3-beta27 released --- + 66. [bug] in bin/named/Makefile, pathnames wasn't getting + linked with ${LIBBIND}, ${LIBPORT}, and ${SYSLIBS}. -531. [bug] limited support for labels containing \. (literal dot.) + 65. [port] automatically fix timespec in BSD/OS 2.1 includes. -530. [bug] new root.cache file imported from internic. + 64. [func] lib/isc/heap.c now includes port_before.h and + port_after.h. Fix 58 (below) has been undone; + with port_after.h we'll now use __ansi_realloc() + from Fix 59. -529. [bug] another set of bug fixes to the zone transfer scheduler. + 63. [bug] STRIP and PS were missing from MARGS in bin/Makefile. -528. [bug] VALIDATE reenabled but without packet editing. + 62. [func] RRs in the additional data section must relate to + RRs in the answer and authority sections. Only + certain RR types are allowed in the authority and + additional data sections. -527. [bug] glue passing through CNAMEs will now be cached properly. + 61. [bug] Dynamic update didn't understand SRV records. -526. [bug] deleted zones should no longer cause core dumps. + 60. [bug] SRV records weren't decoded properly. -525. [func] several messages changed to be more informative. + --- 8.1-T3A released --- -524. [bug] loc_ntoa() was returning a pointer to a stack variable. + 59. [bug] The IRS library also wanted an ANSI C realloc(). + port/sunos now provides __ansi_realloc(). -523. [bug] wildcard RR's were being deleted by purge_zone(). + 58. [bug] SunOS didn't like heap.c doing realloc() on a NULL + pointer (in ANSI C that is equivalent to malloc()), + so we malloc() instead. -522. [bug] "ndc start" didn't work if no pid file existed. + 57. [bug] interface discovery complained about bogus + interfaces on ULTRIX, SunOS, and HP/UX because + SIOCGIFCONF_ADDR wasn't defined in their port_after.h. -521. [port] Sun SVR4 fixes, including shared library support. + 56. [API] created lib/nameser/ns_name.c and moved a lot of the + functionality from lib/resolv/res_comp.c into it. + functions older than 8.1 were stubbed out, but new + functions from 8.1 were just renamed/removed. -520. [bug] we weren't using "forwarders" if "options forward_only" - wasn't set (in some cases.) + 55. [bug] findzone in ns_update wasn't ignoring z_nil zones. -519. [bug] named-xfer wasn't called res_init(). + 54. [bug] if the named-xfer exec() failed, a misleading message + was printed. -518. [bug] lots of byte order nits. + 53. [bug] interface discovery didn't work on NetBSD because + HAVE_SA_LEN wasn't defined in port_after.h. -517. [bug] "tools/host -a" now prints in RR format again. + 52. [func] log the host we got a NOTIFY message from -516. [proto] minimum TTL changes from five minutes to zero seconds. + 51. [bug] we weren't sending out NOTIFY messages if the SOA + was changed as the result of a dynamic update. -515. [bug] SOA TTL of zero is no longer considered an error. + 50. [bug] req_notify() wasn't calling sched_zone_maint() after + it called qserial_query(). -514. [bug] division by zero error corrected in ns_refreshtime(). + 49. [bug] initial_{data,stack,core}_size and initial_num_files + weren't in an #ifdef HAVE_GETRUSAGE block. -513. [bug] we had the #ifdefs nexted backwards in . + 48. [func] use sysconf(_SC_OPEN_MAX) instead of getdtablesize() + in all cases when USE_POSIX is defined. -512. [bug] we were able to dump core while tracing due to a NULL pointer. + 47. [bug] printupdatelog() was printing the post-update serial + number in the zone section instead of the pre-update + serial number. -511. [bug] DiG wasn't able to suppress all of res_debug.c's comments. + 46. [bug] zp->z_serial wasn't being updated if a dynamic update + changed the zone serial number. + + 45. [bug] the SEQ_GT test in db_update was backwards. -510. [doc] BOG typos. new doc/misc/FAQ. new site in MIRRORS. + 44. [func] merge_logs() didn't work because a 'break' wasn't + removed when class and type lookups were converted + to sym_ston. -509. [bug] another side effect of the inet_aton() change was fixed, - this time it was breaking escaped newlines in named.boot. + 43. [func] evResetTimer() added to eventlib. -508. [contrib] new contrib/host, contrib/misc/settransfer, contrib/msql. - contrib/umich/lame_delegation was withdrawn by the author. + 42. [bug] incr_serial() doesn't need to call schedule_dump(). -507. [bug] DiG didn't do ndots and was trigger happy about options. + 41. [bug] reset_retrytimer() could clear a timer that had + already been cleared. -506. [port] NextStep, Interactive, SCO, Digital UNIX, ULTRIX improvements. + 40. [bug] some zone data structures weren't freed if the zone + was removed. -505. [bug] we were overly restrictive about nonauthoritative NXDOMAINs. + 39. [func] The eventlib timers module now uses a heap to + implement the timer queue. -504. [bug] named was generating corrupt responses in au truncation. + 38. [bug] dynamic zones weren't dumped if they were removed + from the configuration file. -503. [port] shres/* now supports SunOS 4.1.4. + 37. [func] created the "load" logging category. -502. [bug] nslookup wasn't behaving properly in the presence of "ndots". + 36. [func] find_zone now uses a hash table instead of a linear + search. -501. [bug] we now delay 5 seconds after an "ndc restart" or "ndc start". + 35. [bug] we weren't scheduling a retry for dumps or soa serial + increments that failed. -500. [bug] change #494 was incomplete. + 34. [func] instead of doing all NOTIFY messages five seconds after + loading completes, we now spread them out over up + to fifteen minutes (the maximum delay depends on how + many zones there are). - --- 4.9.3-beta26 released --- + 33. [func] if there are too many qserials running, we'll try + again in five to thirty seconds. -499. [bug] we needed a SERVFAIL in an error case. + 32. [bug] z_dumptime wasn't getting set to zero after a + zone dump. -498. [bug] some recently added byte order bugs were stomped; - data_inaddr() was made slightly more conservative. + 31. [func] Each zone now has a maintenance timer. sched_maint() + is gone. The new programming rule: if you change + zp->z_time, it's your reponsibility to ensure + sched_zone_maint(zp) gets called. -497. [port] local_hostname_length() moved to its own source file. + 30. [func] short circuit PrintTimers evPrintfs if not debugging + at a level where PrintTimers would print something. -496. [bug] Beta25's change to compat/Makefile was wrong. + 29. [bug] if a log message with a non-default category was + logged to a default category channel which had + print-category on, "default" was printed instead + of the category name. -495. [bug] tools/host.c wasn't processing cnames properly. + 28. [func] the performance of the main loop has been improved. - --- 4.9.3-beta25 released --- + 27. [bug] NOTIFY messages weren't being delayed after a + zone load. -494. [func] "include" directive in boot file is no longer fatal if the - specified file doesn't exist or is not readable. + 26. [bug] the eventlib category wasn't working if the channel + wasn't the default debugging channel. -493. [bug] new interfaces' UDP sockets weren't affecting select()'s mask. + 25. [func] added the "maintenance" logging category. -492. [doc] another round of changes and cleanups to the BOG. + 24. [func] periodic statistics dumps are now done using an + eventlib timer instead of in ns_maint(). -491. [bug] various cleanups to lame server detection. + 23. [bug] names which have multiple CNAME records are illegal, + but the server was allowing them. -490. [port] completely new shres/* from CKD. + 22. [func] convert to POSIX signals from eventlib signal handling; + the eventlib API no longer provides signal support. -489. [doc] added a ***NOTE*** to ./INSTALL about operating system files. + 21. [func] converted assert() to INSIST() so that the logging + system (category "insist") will be used if a + consistency check fails. -488. [port] GNU C Library changes for include/netdb.h. + 20. [bug] the server could exit when it shouldn't, and without + leaving a message or a core file, because it wasn't + handling SIGPIPE. -487. [func] named will try a little bit longer to bind() its stream socket. + 19. [port] Solaris has trouble if the size of the buffer used for + IP_OPTIONS processing isn't 40 bytes. -486. [contrib] new packages: contrib/inaddrtool and contrib/trnamed. + 18. [bug] library Makefiles we were using 'ld' instead + of ${LD}. Added LD_LIBFLAGS. -485. [func] ns_forw will no longer forward to 0.0.0.0, 255.255.255.255, - or 127.0.0.1. + 17. [bug] on at least one OS, ctime() can return NULL and + this can cause problems. We now call checked_ctime() + in ns_glue.c, which returns "\n" if + ctime() fails. -484. [port] more POSIX_SIGNALS conversions. + 16. [bug] some signal handlers were calling library routines + which POSIX does not designate as safe for use by + signal handlers. -483. [bug] compat/Makefile wasn't passing on all definitions to submakes. + 15. [func] finished conversion to new options scheme of + name checking and inbound zone transfer parameters. -482. [port] bad bug in NeXT C Library worked around. + 14. [func] added os_change_directory(). -481. [doc] RFC 1794 is now included in doc/rfc. + 13. [bug] write_open() in ns_config.c wasn't checking if the + file was regular before unlinking. -480. [bug] a debugging printf() was accessing freed memory. + 12. [func] added "os" logging category. -479. [port] doc/info/NCR has been replaced. + 11. [bug] named-bootconf.pl used the deprecated channel name + "default" instead of "default_syslog". -478. [port] doc/info/interactive has been replaced by its author. + 10. [bug] named-bootconf.pl didn't understand continuation lines. -477. [port] UNIXWARE 2.X changes. + 9. [bug] remove -p from mkdep command in Makefiles for + bin/named and bin/nslookup. -476. [bug] ns_init.c was creating files in "//tmp" rather than "/tmp". + 8. [bug] add CDEBUG to Makefiles that link using ${CC}. -475. [bug] inet_aton() reverts to mostly previous behaviour. + 7. [bug] timestamp and level were printed twice for file + channels in lib/isc/logging.c. -474. [bug] PTR->CNAME support added; name test fixed. + 6. [bug] off by one with on level_text subscript in + lib/isc/logging.c. -473. [func] added gethostbyname2(), improved its man page. + 5. [bug] broken channels sometimes weren't marked as broken + in lib/isc/logging.c. -472. [port] Linux connect() can reconnect, res/res_send.c now knows this. + 4. [bug] didn't set foundname=0 after try_again: in ns_resp.c. -471. [build] several "clean" targets were not removing ".depend" files. + 3. [bug] update_pid_file() didn't put a newline after the pid. -470. [bug] dqflush() was using memory after free()ing it and never closing - any file descriptors and not clearing select()'s mask bits. + 2. [func] minor log message tweaks in ns_config.c. - --- 4.9.3-beta24 released --- - -469. [bug] We no longer share static return buffers across functions in - res_debug.c. - -468. [logging] An extraneous haveComplained() was removed from ns_resp.c. - -467. [portdoc] Linux build doc changes. - - --- 4.9.3-beta23 released --- - -466. [doc] big reorg to BOG. - -465. [doc] minor corrections to man pages. - -464. [port] NEC Makefile changes. - -463. [contrib] random updates. - -462. [bug] res_send() wasn't always clearing errno, which led to - false-negative return conditions. - -461. [port] minor u_char-vs-char lint removed. - -460. [port] backed out a recent Linux portability change. - - --- 4.9.3-beta22 released --- - -459. [port] made a major lint pass. - -458. [func] paved over a bad security hole in named-xfer. - -457. [bug] negative caching vs (secure_zone | cname checking) bugs. - -456. [port] moved all:: target to be first in top level Makefile. - -455. [bug] res/res_send.c had a bad macro definition. - -454. [doc] RUNSON moved to doc/info. MIRRORS file added. - -453. [quality] learntFrom() was reformatted. - -452. [doc] minor changes for shlib/ISSUES, tools/nslookup/nslookup.help. - -451. [port] linux, NCR, Solaris, NExT portability changes. - -450. [func] added RES_NOALIASES flag, needed for security. - -449. [bug] we were defining a nonstandard DNS header flag as PR. no more. - - --- 4.9.3-beta21 released --- - -448. [port] systems with hundreds of network interfaces need big ioctl()'s. - -447. [func] zones without NS RR's or with mismatching SOA RR's are caught. - -446. [bug] miscellaneous fixes to res/gethnamaddr.c. - -445. [bug] the secure_zone logic was incomplete. - -444. [bug] bootfile "options" parsing was broken. - -443. [bug] named-xfer was munging incoming WKS RR's. - -442. [contrib] various cleanups. - - --- 4.9.3-beta20 released --- - -441. [contrib] put in DOC 2.1.1. - -440. [func] change/addition to the "lame delegation" syslog message. - -439. [bug] emulation macros WIFSIGNALED and WIFEXITED were bogus. - -438. [bug] missing "#ifndef INVQ" added. - -437. [doc] man pages and BOG updated to include new B18/B19 features. - -436. [port] PIDDIR definition removed from Solaris 2.X. - -435. [port] shres/Makefile fixed for new location of inet_addr.c. - -434. [port] getnetnamaddr.c had a spurious "#if defined(sun)" - -433. [bugs] random typos and glitches from the beta19 afternoon rush. - - --- 4.9.3-beta19 released --- - -432. [func] we should be much more resistant to root cache corruption now. - -431. [bug] tcp socket send buffer will now be set at 16K to avoid blocks. - -430. [bug] ns_req.c had two cases where it could overflow a buffer. - -429. [bug] the "." zone will now respect the setting of NO_GLUE. - -428. [func] 0.0.0.0 A RR's are allowed in the DB but we won't use them. - -427. [func] "options fake-iquery" added, users of Sun nslookup take note. - -426. [port] include/netdb.h now has some #ifdef sun defs in it. - -425. [bug] negative caching bugs in findns() and in ns_forw.c. - -424. [func] "limit transfers-per-ns" directive added. - -423. [bug] infinite loop fixed in named-xfer.c's version number printing. - -422. [bug] gethostbyname() of a dotted quad in an auto variable will - no longer cause the caller to consume random stack trash. - -421. [port] inet_aton() has moved from lib44bsd.a back to libresolv.a. - -420. [func] any punctuation character can now terminate an inet_aton(). - -419. [port] use sigemptyset(), sigaddset() - in preference to sigmask(). - - --- 4.9.3-beta18 released --- - -418. [bug] ``close(11): interrupted system call'' now fixed. - -417. [bug] big name servers would never refresh all their zones since - tryxfer() wasn't a "fair" scheduler. it is now. - -416. [func] SOA syntax errors will now lead to dead zones, not dead srvrs. - -415. [func] expiration values lower than refresh values cause a warning. - -414. [func] added "options" and "limit" directives to named.boot. - -413. [port] new file: doc/info/solaris.too. - -412. [bug] possible div-by-zero in ns_init.c. - -411. [port] NeXTstep, UNIXWARE, ISC, AUX changes/additions to top Makefile. - -410. [port] POSIX_SIGNALS covers a bit more code now. - -409. [bug] CNAME->PTR responses were triggering syslog() unnecessarily. - -408. [port] res_send.c's socket() calls were using the wrong arguments. - this was benign but with IPv6 looming, we need to clean it up. - -407. [bug] the delayed free() logic (DATUMREFCNT) didn't account for - the possibility of some NULL pointers, in ns_resp.c. - -406. [bug] we were walking through purged list items in ns_forw.c. - this caused bad things to happen when glue expired. - -405. [bug] "attempted update to auth zone" is no longer a warning. - -404. [bug] fp_nquery() is now used everywhere, fp_query() is deprecated. - -403. [port] hstrerror()'s result is now declared as const. - -402. [bug] a flakey initialization in the resolver has been fixed. - -401. [port] removed some junk around getnetbyname(), needs testing on suns. - -400. [func] BIND's version number now appears as a comment in zone files - written by named-xfer. - -399. [func] older, bogus HINFO RR's will now be fixed up with warnings. - -398. [bug] "SOA class not same as zone's" is now a zone load error. - -397. [func] all of the syslog() priorities have been lowered. - -396. [doc] added doc/misc/{FAQ.1of2,FAQ.2of2,vixie-security.ps}. - -368. [port] top level Makefile updates: .depend files aren't shipped; - solaris, linux, dec osf/1, dynix build more cleanly. - -367. [port] LOC RR logic has had some lint removed. also named-xfer.c. - -366. [contrib] dnswalk 1.8.3 is now included. - -365. [security] initial query ID is no longer a fixed constant. - - --- 4.9.3-beta17 released --- - -364. named/ndc.sh didn't always exit with nonzero on errors. - -363. include/arpa/Makefile was installing into //. - -362. convex cleanups. osf/1 cleanups. - -361. minor nit in sprintf() format string in tools/host.c. - - --- 4.9.3-beta16 released --- - -360. CRED is long gone. - -359. convex systems have getrusage(). - -358. CPPFLAGS wasn't quite right. - - --- 4.9.3-beta15 released --- - -357. netdb.h now externs h_errno. - -356. fixed odd corner case bug in res_query(). - -355. no BIND beta is complete without a patch to shres/PROBLEMS. - -354. minor addition to the "ndc" command line syntax. - -353. "." domain syslog() raised from LOG_DEBUG to LOG_WARNING. - -352. minor nit in named-xfer.c. - -351. the BSD/* Makefiles were mode 440, are now 444. - -350. new (undocumented) make target: "make mkdirs". - -349. output format change in tools/host.c. - -348. contrib/* updates. - -347. CPPFLAGS variable added to the Makefile tree, should quieten some makes. - nextstep, solaris, and svr4 systems have some new build parameters. - -346. BOG cleanups and addition of PX RR documentation. - -345. more items for RUNSON. - -344. several combinations and permutations of compilation options didn't work. - - --- 4.9.3-beta14 released --- - -343. Type cast fix for #340. - -343. Small change to RUNSON. - -342. Removed fsync() call, it really wasn't nec'y and was causing trouble. - - --- 4.9.3-beta13 released --- - -341. Small fix for #331. - -340. Inverse queries, if enabled, will be logged if QRYLOG is enabled and on. - -339. Nonrecursive servers (-r) will once again sysquery() for missing glue. - -338. named/ndc now preserves the user's $PATH. - -337. SUNSECURITY is now only on for shres/*. - -336. New version of contrib/host has been included. - -335. tools/nsquery.c and tools/nstest.c were moved to contrib/old/. - -334. Portability changes for HP-UX, Solaris, Linux, SCO UNIX. - -333. INVQ (inverse query support) now defaults to "off". - -332. Some of the internal hashing logic for syslog() rate limiting was not - accurate (more things were logged than should have been). - - --- 4.9.3-beta12-patch2 released --- - -331. Default domain in $INCLUDE files is now intuitive (rather than "."). - -330. Lame delegations are now only logged for class "IN". - -329. Format change to XSTATS output to make it more readable. - -328. Bad responses could cause core dumps in DiG, nslookup, etc. - -327. The now-requisite change to shres/* was discovered and put in. - -326. Portability changes for Linux, SCO, ULTRIX3, NeXT. - -325. Bit the bullet and reset all the RCS revision numbers to 8.1==4.9.3.b12. - - --- 4.9.3-beta12-patch1 released --- - -324. Added some missing pieces to the NSAP and NSAP_PTR handling. - -323. Tightened some of the GEN_AXFR code, fixed potential C_HS problem. - -322. Fixed minor niggle in the way "dig" parses its arguments. - -321. Final(?) tuning of the SunOS shres stuff. - -320. Reorganized the SunOS build params in the top level Makefile. - - --- 4.9.3-beta12 released --- - -319. Fixed DiG so that ". IN NS" was the default if no args are given. (Vixie) - -318. Merged the resolver with 4.4BSD's; made a BSD/ subdirectory off the main - tree for easy integration into BSD/OS, FreeBSD, NetBSD, et al; moved the - "master" subdirectory to "conf/master" to cut down on top level clutter. - -317. Lots of last minute fiddling to make Beta12 "right". (cast of thousands) - -316. Minor byte order bug in BIND_NOTIFY. (Grange) - -315. Added code to db_load() to detect "no RR's found" case. (Vixie; Heiney) - -314. "Zone declared more than once" test added. (Grange; Vixie) - -313. XSTATS interval was changed from "no more than once a minute, and usually - every fifteen minutes" to "no more than once an hour, and usually every - hour". (Gianopoulos; Vixie) - -312. Minor stuff in BIND_NOTIFY and the Ultrix and OSF/1 builds. (Heiney) - -311. Continuing hacks to LOC RR (experimental) and shres/*. (Davis) - - --- 4.9.3-beta11-patch5 released --- - -310. Minor BOG patches. (Shapiro) - -309. Minor LOC RR lint. (Heiney; Truck) - -308. Minor STUBS changes in ns_req.c. (Andrews) - -307. Ultrix and OSF/1 now install "man" (not "cat") pages. AIX now installs - *.[0-9] rather than *.0 pages. (Vixie, et al) - -306. conf/Info.* moved to new directory doc/info/*. (Vixie) - -305. NOTIFY could cause multiple simultaneous axfr's. (Andrews; Vixie) - - --- 4.9.3-beta11-patch4 released --- - -304. Minor fixes to PURGE_ZONE, CLEANCACHE, RETURNSOA, and dig. (Mark Andrews) - -303. LOC RR support is now in. (Chris Davis; Vixie) - -302. General portability stuff (with ISC leanings). (Mark Galbraith) - -301. Minor DiG portability fix. (Dima Volodin) - -300. Yet more HINFO fixes. (Gianopoulos) - -299. Really minor patch to tools/nstest.c, plus AIX fixes. (David Bolen) - -298. More shres/* fixes. (Davis; Woods) - -297. Minor SCO fixups. (Eduard Vopicka) - -296. Fixed #include problem in db_glue.c. (cast of thousands) - -295. Minor goofs in the sources. (Grange; Gianopoulos) - -294. Minor patch to the BOG (font problem). (Shapiro; Vixie) - - --- 4.9.3-beta11-patch3 released --- - -293. Minor #ifdef screwup corrected. (Mohamed Ellozy) - -292. Small HP-UX portability change. (Truck) - -291. Minor BOG correction. (Harlan Stenn) - -290. PX RR support. (Pierluigi Bonetti) - -289. Made random refresh interval a little more robust. (Miller; Vixie) - -288. Minor portability changes for DEC OSF/1. (Bob Heiney) - -287. We now do a setvbuf() on outbound AXFR streams since the system's - default size causes more write()'s (and therefore TCP segments) - than we really want. (Paul Mockapetris' idea; Paul Vixie's code.) - -286. Recast all uses of abort() to call private function panic(). This was - nec'y since we use the ABRT (IOT) signal to force a statistics dump, and - having it dump statistics inside of abort() was a bad thing. - (Mark Andrews noticed the problem; Paul Vixie fixed it.) - -285. Minor change to top-level Makefile for OSF/1 man pages. (Shapiro) - -284. Minor change to HINFO stuff. (Gianopoulos) - -283. Minor changes to XSTATS #ifdef's. (Benoit Grange) - -282. Minor change to top-level Makefile for ULTRIX/VAX. (William Gianopoulos) - - --- 4.9.3-beta11-patch2 released --- - -281. Another batch of (minor) HINFO changes. (William Gianopoulos) - -280. Minor formatting changes to keep ctags happy. (Craig Leres) - -279. Minor changes to OPTIONS. (Mark Seiden) - -278. New option XSTATS (default "on" for now). (Benoit Grange) - -277. res_mkquery() wasn't calling res_init(). (Philip Gladstone) - -276. Minor cleanup to shres/INSTALL. (Chris Davis) - -275. We now set a SO_LINGER on outbound zone transfers. (Peter Wemm; Vixie) - -274. Minor portability fix for VAX Ultrix. (Stan Barber) - -273. Fixed two time warp problems. (Bob Heiney; Paul Vixie) - -272. Named-xfer will now log and error and abort if it encounters an RR type - it doesn't recognize. (Mark Andrews; Paul Vixie) - -271. Minor cleanups to the HINFO comparison code in db_update. (Bryan Beecher) - -270. Made CLEANCACHE less of a CPU hog. (Benoit Grange; Mark Andrews) - -269. Add even more branches to the cred/clev decision tree, to make it more - robust about borderline data at zone cuts. (Jack McCann; Mark Andrews) - -268. New option (default: "on" for now): PURGE_ZONE. (Mark Andrews) - -267. Added contrib/misc/{soa-easy,dnsfind}.shar. I will not be including - this in the b11p2 diffs, though it will be in the next full kit. - (Tim Cook) - -266. I finally broke down and made a recommendation in the BOG with respect to - "nameserver 127.0.0.1". (Greg Woods supplied the patch) - -265. Minor portability stuff for SunOS. (Greg Woods) - - --- 4.9.3-beta11-patch1 released --- - -264. 900-second check removed; TTL==0 should work now. (Mark Andrews) - -263. Minor db_save() patch for initializing memory. (Bryan Beecher) - -262. Minor ESIX (SVR4.0.4/gcc) changes. (John Polstra) - -261. Minor dig-related patch to res_send.c. (Mark Andrews) - -260. Minor line number fix for ns_init(). (Havard Eidnes) - -259. NetBSD shared library stuff is now in contrib/misc/netbsd-shlib.shar. - (Matt Ragan) - -258. NeXT portability changes. (Allan Nathanson) - -257. Minor HP-UX portability stuff. (Lewis; Corrigan) - -256. Two medium sized bugs in BIND_NOTIFY. (Don "Truck" Lewis) - -255. Minor lint in ns_req.c. (Mark Andrews) - -254. Minor ndc.sh build problem. (Michael Corrigan) - -253. Minor coding inconsistency in res/res_comp.c. (Jeff Schreiber; Vixie) - -252. Minor BOG addition (SIGIOT). (Bryan Knowles) - - --- 4.9.3-beta11 released --- - -251. If a master zone's serial number goes backwards, named now logs a - warning. (Mark Andrews) - -250. Minor portability nit in ns_forw(). (Simon Leinen) - -249. Another portability problem fixed in ndc.sh. (Corrigan) - -248. Declaration problem with findZonePri() fixed. (Corrigan) - -247. References to CNAMES from MX/NS/MB will now be explicitly logged. (Vixie) - -246. Made the BIND_NOTIFY logic more robust; it still does not match the - current I-D (no delays yet). (Vixie) - -245. Fixed a writable-string problem. Added a lot of ANSI "const"'s. (Vixie) - - --- 4.9.3-beta10-patch1 released --- - -244. Added shres/PROBLEMS file. (Chris Davis) - -243. Corrected the BOG on the meaning of ".". (Doug Luce, Paul Vixie) - -242. SOA's can now be stored in $INCLUDE files. (John Lind) - -241. Rejection of 0.0.0.0 had a potential seg fault. (Mark Andrews) - -240. NoRecurse wasn't preventing queries for missing glue. (Mark Andrews) - -239. WKS nonaggregation test had bad length. (Ed Clarke, Chris Britton) - -238. NeXT library problem worked around. (Greg Wohletz) - -237. Core dump fixed in the dprintf() macro. (Eric Murray) - -236. MBZ fields in new queries were actually stack trash. (Olson, Vixie) - -235. Adds and changes to contrib/: - Added contrib/misc/dnstools.shar, from alt.sources. (Eric Murray) - Added contrib/misc/settransfer.shar (nonrecommended). (Tom Brisco) - Updated contrib/host/* with latest public version. (Eric Wassenaar) - Updated contrib/host/makezones with latest pub. version. (Philip Hazel) - -234. Made the "ps" command needed by ndc.sh a configurable parameter. - - --- 4.9.3-beta10 released --- - -233. Added and reordered a lot of code in ns_resp() to cause it to be - slighly harder to spoof with bad packets. More work needs to be done, - so that named will be as spoof-proof as the resolver has become. (Vixie.) - -232. Added new RR types to include/arpa/nameser.h, per RFC 1700. (Vixie) - -231. New "ndc" command. (Vixie) - -230. The VALIDATE option is now formally deprecated. It has bugs its detection - of invalid responses, and is known to mutilate perfectly valid CNAME - responses, to the detriment of clients. This code will likely be deleted - in the next BIND release, to be replaced by an ``always restart query'' - strategy. (Vixie) - -229. Moved a syslog() so that primary as well as secondary loads are logged. - -228. Resolver functions now reliably set h_errno. (Vixie, Wassenaar) - -227. Expired zones now lose their cached serial number information, giving - an opportunity to refresh a zone after a serial number goes backward. - (Andrews) - -226. Sun386i support crept in on little cat feet. (Brownlee) - -225. UDP packets could be overstuffed by 12 bytes. (Reilly, Vixie) - -224. failing connect()'s in named-xfer will no longer be logged. (Andrews) - -223. merged IETF stream (Vixie): - a. made ALLOW_UPDATES even more optional (it will disappear soon); - b. added NOTIFY option (experimental); - c. cleaned up some comments; - d. removed T_SA (was experimental, replaced by ROUND_ROBIN); - e. made named/Makefile's default CFLAGS -g (it usually inherits -O); - f. random code cleanup; - g. some internal errors are now fatal instead of warnings. - these changes were brought in once it became clear that there would be - another Beta of 4.9.3. - -222. tools/Makefile was using "make" instead of "${MAKE}". (Day) - -221. yet another bug was found and fixed in the SUNSECURITY code. (Brown) - -220. a variable reuse problem in the SUNSECURITY syslog()'s in gethnamaddr.c - was fixed. (Wohletz, Wemm, Vixie) - -219. "stub" root zones now affect the hint cache (STUBS is experimental). - in this situation it is reasonable to not have a "cache" directive, - and some code was reordered to make this possible. (Andrews) - -218. contrib/umich/lame-delegation/LISA-VI-paper.ps is now a proper - PostScript(tm) file. (Davis) - -217. syslog() cleanups in named-xfer.c. (Vixie, Barrett) - -216. shres/Makefile now forces -O. (Braniss, Ray) - -215. New contrib/misc/ctldns.sh. (Bush) - -214. New contrib/misc/dns-peers.info. (Wolfhugel) - -213. BOG and named(8) fixes. (Paffrath, Vixie, Hawkinson) - -212. database input errors will no longer cause the following line to - be ignored. (Gianopoulos) - -211. the TXT RR fixes done so far in 4.9.3 have been backed out; we're - back to the 4.9.2 behaviour. (Gianopoulos) - -210. the authority section will no longer duplicate the answer section - if both would contain the same NS RR set. (Vixie) - - --- 4.9.3-beta9-patch1 released --- - -209. installed marka's patch to CRED that fixes BETA9's flaw. - -208. added comment to README about -l44bsd and inet_aton(). - -207. new directory: contrib/multizdb. highly nonrecommended. - -206. small NextStep change in Makefile. - - --- 4.9.3-beta9 released --- - -205. minor Makefile fix after beta9 was previewed on bind-workers; also, a - new file conf/Info.Linux-more has been included. - -204. BOG fixes. - -203. netlists elements are now - { addr [ "&" mask ] } - which for the EBNF-impaired, means that "&" introduces an explicit mask. - implicit masks are either by-class or 0xffffffff, depending on ALLOW_HOSTS - in the call to get_netlist(). - -202. name compression is now case-insensitive. - -201. duplicate RRDATA won't trigger the new "auth warning" in db_update(). - - --- 4.9.3-beta8-patch2 released --- - -200. added a haveComplained() to limit auth warnings. - -199. fixed idiotic code reordering from patch1. - - --- 4.9.3-beta8-patch1 released --- - -198. a bad-string-termination bug was fixed in getnetanswer(). - -197. an uninitialized-variable bug was fixed in db_update(). - - --- 4.9.3-beta8 released --- - -196. Several minor corrections were made to the BOG. - -195. "clev" now distinguishes between root and TLD (wasn't worth a darn before) - -194. empty nodes in authority zones are now protected from non-auth updates. - (most of db_update() was rewritten to fix/support this.) - -193. negative cache items weren't updated before, now they are. - -192. zone updates from answers were prevented for new types but not if some - rr already existed with that type. fixed. also syslogged. - -191. the cache now distinguishes between authoritative answers and zone rr's. - -190. negative cache items are now marked appropriately authoritative. - -189. CRED is no longer optional. - -188. Another enhancement has been made to HINFO parsing. Named-xfer now - accepts RFC-bogus input formats generated by previous versions of BIND. - -187. SUNSECURITY now forces RES_DEFNAMES on so that relative "localhost" works. - -186. Minor portability fixes for DEC OSF/1, HP-UX. - - --- 4.9.3-beta7-patch2 released --- - -186. i forgot to comment out template Linux lines in top Makefile. fixed. - -185. "bogusns" directive significantly strengthened, for IN-ADDR.ARPA problem. - also fixed a bug in hardcoded root server lame detection. - - --- 4.9.3-beta7-patch1 released --- - -184. Yet another ULTRIX incompatibility has been worked around. - -183. Bogus HINFO RR's will no longer cause corrupt secondary zone files. - -182. NeXT support is now complete. Builds right out of the box. - -181. Updated TODO file. - -180. Added new INSTALL file. - -179. Minor doc fix in OPTIONS file. - -178. Security-related bug fix to new sunos shres/* stuff. - -177. Limited Linux portability was added. - -176. Trailing dots on zone names in named.boot are now ignored. - -175. Random lint was removed. - -174. DiG changes: increment version number (2.1), allow default domain (.). - - --- 4.9.3-beta7 released --- - -173. named-xfer would act strangely if trailing dot domains given as arguments. - -172. setenv() now provided on systems that need it (NeXTStep, e.g.). - -171. doc changes for shres/*. - -170. fixed debugging output problem in ns_req.c. - -169. fixed portability "bugs" on ultrix systems (some tools wouldn't link). - -168. minor functionality change in named/ns_validate.c. - -167. minor lint in res/res_comp.c. - -166. minor change to contrib/doc-2.0/*. - - --- 4.9.3-beta6 released --- - -165. another small adjustment to the Apollo section of the Makefile. - -164. a completely new shres/* was submitted; contrib/sunlibc is deprecated. - -163. INVQ is back on again by default. See README. - -162. another set of patches for obscure corner cases in the HINFO parser. - -161. added new SUNOS4 macro to Makefile and conf/portability.h; this should - fix the trouble folks were having with strerror() on SunOS 4.X systems. - -160. minor Makefile changes. - -159. processes which send outbound zone transfers now close all inherited - descriptors, since they can be longer-lived than the main named. - - --- 4.9.3-beta5 released --- - -158. various lint involving options which are rarely defined. - -157. sunos needed -DBSD=43 rather than -DBSD. - -156. minor memory leak fixed in ns_req.c. - -155. some install directories for DGUX were wrong. - - --- 4.9.3-beta4 released --- - -154. a new man/* hierarchy was installed which should be more portable. - -153. a new contrib/host has been included. - -152. a parsing problem in HINFO was fixed. - -151. a few minor changes to contrib/sunlibc/Makefile. - -150. typo in res_send.c fixed. - -149. fine tuning the credibility-level heuristics. - -148. dn_expand() will fail on names which have bad characters in them. - -147. disappearing zones could cause a core dump in syslog() - fixed. - -146. text of warnings in named-xfer corrected. - -145. limited DGUX, RISCOS support added. - -144. contrib/sunlibc/Makefile MFLAGS/MARGS problem fixed. - -143. another SunOS recv() bug has been worked around. - -142. various BOG fixes. - -141. updated master/root.cache file from latest InterNIC version. - -140. Added ``max-fetch'' to named(8). - -139. NOT_BIND problem in named/tree.c fixed. - -138. minor lint, memory leaks, and portability problems were fixed. - - --- 4.9.3-beta3 released --- - -137. some serious (and recently) dynamic memory bugs were killed. - -136. a reference to uninitialized data was fixed in res_query(). - -135. a RES_STAYOPEN-related bug was fixed in res_send(). - -134. isascii() and isxdigit() now simulated on systems which lack them. - -133. named's local setproctitle() has been renamed to avoid system conflicts. - -132. minor bugfix to negative caching code. - -131. minor bugfix in validation code. - -130. the typestats[] multiple definition problem was fixed. - -129. some Sequent portability changes were folded in. - -128. a new contrib/sunlibc was donated, but hasn't been tested. - -127. minor changes to contrib/sunlibc/Info.*. is anybody using shres/*, tho? - -126. STDIN_FILENO and STDOUT_FILENO are now defined by conf/portability.h. - -125. there is now a ``max-fetch'' directive in the boot file (see the BOG). - -124. there is now a RENICE option in conf/options.h. - -123. the toplevel Makefile has been made slightly more readable. - -122. <> - -121. minor fixups in the lame delegation code. - - --- 4.9.3-beta2 released --- - -120. I upgraded my "-me" macros so that the included doc/bog/file.psf is OK. - -119. NXDOMAIN responses from the negative cache will now always be - authoritative. this is the least of all evils, trust me. - -118. strcasecmp() in compat/lib is now ANSI compliant. - -117. PTR RR's are no longer subject to ROUND_ROBIN processing. - -116. writev() emulation for SCO had a bug. - -115. the resolver no longer calls sscanf() or qsort(). - -114. minor debugging nit cleaned up in res_querydomain(). - -113. IP options on incoming connections are now logged and ignored. This - should probably be done for datagrams as well but not today. - -112. tree.c made portable to non-POSIX/ANSI systems. - -111. NSAP RR's are now supported. NSAP_PTR RR's are deprecated and so left out. - -110. outbound zone transfers are now logged. - -109. various lint cleaned up wrt 16-bit integer handling. - -108. named-xfer was exiting bogusly on some systems due to flakey kernel - interfaces. i've rewritten some of the code to avoid the problem, - and fixed plenty of lint in the process. - - --- 4.9.3-beta1 released --- - -107. Apollo systems were dumping core because of a missing #include . - -106. NSAP and NSAP_PTR RR's now recognized by res_debug() (but nothing else). - -105. NeXTstep 2.1/3.0 and Pyramid dcosx now nominally supported. - -104. res_querydomain() was doing Bad things if given an empty name. - - --- 4.9.3.a5.p4 published --- - -103. named-xfer's exit cause is now syslog()'d more often/clearly (Paul Vixie). - -102. I left out a ";" in the new compat/lib/ftruncate.c file (Craig Leres). - -101. X25, ISDN, and RT RR support have been added (Michael A. Meiszl). - - --- 4.9.3.a5.p3 published --- - -100. Another glitch (very minor this time) was found and fixed in the - QSERIAL logic. This was a performance problem only -- reliability - wasn't affected (Bob Heiney). - -99. SCO UNIX is now supported, thanks in part to Michael A. Meiszl. - -98. I witlessly used a GCC-only feature (automatic aggregate initialization) - in a5p2. Kazuhisa Shimizu was the first to report it. - - --- 4.9.3.a5.p2 published --- - -97. NEC EWS4800 EWS-UX/V Rel4.0/Rel4.2 support (from Kazuhisa Shimizu). - -96. Some of the security checking logic in the new res/gethnamaddr.c's - getanswer() was happening in the wrong order (thanks, Bob Heiney). - -95. Minor typo in the man/host.1 man page (caught by Robert Elz). - -94. DiG was groping core if given more than 10 tokens in a lookup string - (Michael J. Corrigan provided the fix). - -93. Queries to INADDR_ANY ("0.0.0.0") come back from the system's primary - interface, and res_send() was discarding them. A proper fix would add - a lot of code to the resolver, so for now we'll just work around it - (Michael J. Corrigan reported this). - -92. The "data outside zone" syslog message was misleading (Bob Heiney). - - --- 4.9.3.a5.p1 published --- - -91. res/gethnamaddr.c wouldn't compile on non-BSD systems since it depended - on LOG_AUTH which is a post-4.3 feature (Bob Heiney reported this). - - ****** 4.9.3-alpha5 released ****** - -90. redid most of my previous round of prototyping now that i truly - understand which variables and parameters should be u_char and which - ones should be char. (Vixie) - -89. added (optional) prototypes for _getshort() and _getlong(); this means - the calls all need casts of their argument since it usually isn't a - u_char*. Also prototyped res_query(), res_search, and the nominally - private but for some reason not static res_querydomain(). (Vixie) - -88. security related: responses from servers we didn't query are now ignored - by the resolver; answers with QDCOUNT!=1 are treated as errors; name - mismatches in the question or any part of the answer field are syslog()'d - and ignored. (Vixie) - -87. fixed a bug in the SUNSECURITY stuff. (Vixie) - -86. a long standing bug in the name hashing code that caused it to ``hash in'' - the case of the name's characters, was found and fixed. (twice.) (Vixie) - -85. Bob Heiney did some performance analysis and concluded that samedomain() - was soaking down cycles at a rate disproportionate to its usefulness; he - reimplemented it in a way that violated the (good,fast,cheap) rule. - -84. the RFC1101 implementation of getnetby*() was using case-sensitive - string compares. - -83. fp_query() will no longer try to format packets larger than PACKETSZ, - and for perversity, dig and named are now prepared to handle replies - (via TCP) larger than PACKETSZ. new function: __fp_nquery(). (Vixie) - -82. multiline initial syslog() is fixed (Bill G). - -81. Don Lewis sent in a big update for the lame delegation logic. Vixie fixed - one bug. Bryan Beecher had a big hand in this. - -80. TCP replies can now be up to 8K in size (don walsh). - -79. validation bug fixed (don lewis). - -78. BOG patches from mike minnich and others. - -77. more lint fixes for Cray (norb brotz). - -76. a new hostname(7) man page was contributed by Art Harkin. - -75. DESTINC is now a settable Makefile parameter (Marion Hakanson). - -74. the zones-not-transferring bug is finally gone. - -73. now using LOG_PERROR in openlog(); many parallel dprintf()'s are gone. - -72. inability to retrieve serial number via UDP now forces TCP transfer. - -71. removing secondary zone files and SIGHUP'ing will now force a transfer. - -70. "cache" directives can now specify "/class" as documented in the BOG. - -69. Mark Andrews' fix for the ns_forw core dump is in. - -68. Keith Bostic fixed some typo's in the man pages. - -67. Compiling without NCACHE is possible now (John Hanley). - -66. Bill Gianopoulos and Alan Barrett finally agreed on what glue was and - Bill's alpha4 patch is mostly gone now, and one new idea was added. - -65. BOG improvements (Vixie, Brooks). - -64. Mark Andrews' CLEANCACHE (recommended) and RETURNSOA (__NOT__ recommended!) - are in. RETURNSOA should not be enabled at this time; there's nothing - wrong with the code but it will cause cache corruption in older servers - and may not be necessary. The jury is still out. - -63. outbound zone transfers are now logged (requested by Ron Johnson). - -62. serial number queries sent out for zone transfer purposes will now be - limited to a maximum of four (4) simultaneous outstanding; this keeps - BIND from overflowing its UDP socket buffer when hundreds of zones must - be checked (still trying to fix Paul Pomes' problem). - -61. short A RR's in responses will no longer lead to purify errors due to short - malloc()'s in savedata() (thanks to Nicholas Briggs for reporting this). - - ****** 4.9.3-alpha4 released ****** - -60. manifest constants used instead of "sizeof({u_,}int{16,32}_t)", for - systems which lack 16- and 32-bit integers (paul vixie for norm brotz). - -59. zone transfer anti-glue logic made RFC1034-compliant (bill gianopoulos). - -58. seg fault in sysquery() (from LAME_DELEGATION) fixed (mark andrews). - - ****** 4.9.3-alpha3 released ****** - -57. a big, hefty patch was made to the negative caching logic (mark andrews). - -56. named-xfer will no longer scramble the default origin (alan barrett). - -55. random bits of lint found and removed (mario guerra). - -54. convexos-10 is now supported (jukka ukkonen). - -53. seg fault in database dumps (from VALIDATE) fixed (don lewis). - -52. problem with extra bogus 0.0.0.0 A RR's from VALIDATE fixed (mark andrews). - -51. the LAME_DELEGATION logic once written into 4.8.3 by don lewis has - been substantially reworked and put into 4.9.3-alpha3 (bryan beecher). - -50. all instances of "sizeof(HEADER)" were changed to "HFIXEDSZ" to make - life easier for the cray. also, "struct HEADER" in include/arpa/nameser.h - uses just bit fields now, for portability to 64-bit systems without - 16-bit integer types. (norb brotz suggested it; paul vixie did it). - -49. build changes for NeXT and AIX systems (artur romao; c. wolfhugel). - -48. random sunshlib changes (piete brooks). - -47. minor fixes for solaris build (carson gaspar; paul pomes). - -48. a few bugs were wrung out of the BOG (per hedeland; vixie). - - ****** 4.9.3-alpha2 released ****** - -47. several obscure Makefile problems were fixed (vixie). - -46. there is now a per-primary-NS quota for simultaneous zone transfers; this - will cut down on the retry thrashing seen on servers that are secondary for - thousands of zones (vixie). - -45. a bug introduced by change #23 has been fixed (marten terpstra; apb). - -44. the "data outside zone" messages are now consistent (piete brooks; vixie). - -43. several #include's were reordered in res/*.c and a few #ifdef's were - changed; BIND should now run OK on DGUX (henry miller). - -42. several changes to the conf/options.h and Makefile (vixie): - -> SVR4 has been added as a top-level Makefile CDEFS option - -> SYSV has moved from conf/options.h to the top level Makefile - -> INVQ is now an "#ifdef" rather than a "#if" - -41. resolver no longer uses initialized static data, which should make shared - libraries easier to generate (vixie did it, at the urging of many others). - -40. now compiles on Apollo DomainOS (don lewis). - - ****** 4.9.3-alpha1 released ****** - -39. lots of lint found and fixed (craig leres). - -38. illegal enum compare fixed in named/ns_stats.c (vixie). - -37. missing ')' added in SUNSECURITY section of res/gethnamaddr.c (h miller). - - ****** 4.9.3-prealpha released ****** - -36. ***REMOVED*** - -35. various bugs were fixed in the negative caching (vixie; mark andrews). - -34. several debugging and dump output problems were fixed (mark andrews). - -33. TXT RR's can now be read from zone files even if they lack quotes; - the RFC doesn't say quotes are needed (jim martin). - -32. limited support for AIX-3 is now included (christoph wolfhugel). - -31. SUNSECURITY is now an obvious default in ./Makefile (p killey; b beecher). - -30. VC queries that time out are now GC'd and SERVFAIL'd (mark andrews). - -29. HP-UX 9.0's top-level makefile variables have been changed (don lewis). - -28. various fixes for tools/host.c (jim martin; mark andrews). - -27. syslog messages logged by SUNSECURITY will now include the address of - the host that's having problems (david morrison). - -26. systems whose connect() calls fail if a socket is already connect()'d - will now have their sockets closed and recreated in res_send() (piete - brooks; mark andrews; vixie). - -25. res_send() will now corrected reset its "connected" variable when the - connectedness of a socket changes (mark andrews). - -24. SERVFAIL responses will no longer terminate the res_search() inner loop, - thus catastrophic problems with early search elements will no longer - prevent res_search() from trying later search elements (bryan beecher;vix). - -23. non-NS RR's for delegated subzones will no longer be accepted in a zone - transfer (alan p barrett). - -22. the setting for _PATH_PIDFILE is now overridden by the Makefile (l hume). - -21. named.restart.sh now has a smaller path with %DESTSBIN% first therein; - this should prevent the vendor version of named from being exec'd by - accident (leigh hume). - -20. big change: statistics are now kept "per name server" rather than as - a single global array. the /var/tmp/named.stats file format has changed - quite a bit, so older awk/perl scripts are likely to stop working. - -19. big change: every RR now keeps a pointer to a "nameser" struct; this - currently permits SIGINT-initiated dumps to include the address of all - non-zone data, which will help with tracking down corrupt data. - -18. db_load.c was missing two #ifdef/#endif's for CRED (mike minnich). - -17. don't aggregate SOA or WKS RR's in the cache (vixie). - -16. minor cosmetic changes (vixie). - -15. fixed typo in compat/Makefile ("LIBDIR" -> "DESTDIR") (rob davies). - -14. fixed spurious "accept: interrupted system calls" (vixie). - -13. named will now start as many named-xfer's as it should; previously it - lost track of the need for transfers at the beginning of each maint - cycle. also, we don't bother asking for an SOA if we know that our - zone is out of date. i've changed the transfer metrics so that more - transfers can happen concurrently, and maint cycles come more often. - (andrew partan; vixie). - -12. a number of LOG_ERR and LOG_CRIT syslogs were downgraded to LOG_NOTICE - (rob davies; vixie). - -11. sequence number checking now treats "zero" as a special case. - (craig leres; andrew partan; vixie). - -10. MFLAGS no longer used explicitly, since it is often used implicitly - (mark andrews; vixie). - -9. ADDAUTH is no longer considered experimental (tony stoneley; vixie). - -8. several obscure type bugs fixed (don lewis). - -7. signal handlers all now preserve errno (don lewis). - -6. TTL deprecation made more portable (don lewis). - -5. now compiles on Apollo DomainOS and is generally more POSIX-ish (don lewis). - -4. bryan beecher's "query" tool has been promoted to tools/ and renamed to - dnsquery. minor changes were required in several Makefiles (vixie). - -3. "make links" at the top level will now make a higher resolution link tree, - which makes porting easier on some systems (ian dickinson). - -2. Convex feof() bug now has a workaround (jukka ukkonen). - -1. gethostby*() will no longer overwrite its fixed-size array if a host with - too many addresses is handled (reported by piete brooks, fixed by vixie). - --------------------------------------- 4.9.3 above, 4.9.2 below - -4.9.2 ------------------ FINAL ----------------- Paul Vixie - -57. updated TODO, README files. - -56. fix to contrib/sunlibc/Makefile. - -55. several new items in contrib/. - -54. Corrected bad command line parsing bug in tools/dig.c; also added the - old query timing code back in (thanks to Havard Eidnes). - -53. Ported contrib/decwrl/host.c to the modern interfaces. - -4.9.2 ------------------ BETA5 ----------------- Paul Vixie - -52. A number of optimizations that fell out of negative caching and/or the - validation code have been turned off in order to avoid confusing older - nameservers and their unfortunate assumptions about co-invariants. - Mark Andrews and Robert Elz were the principle debuggers and contributors - to this part of the effort. - -51. We're now much more portable to systems without Posix or BSD signals, - thanks to Bill Wisner. - -50. tools/host.c now has more reasonable error messages and can deal with - negative caching servers. - -49. Lots of Makefile gaffes are now fixed. - -48. New "host" in contrib/host/, complements of Eric Wassenaar. - -47. AFSDB support is now complete, thanks to Chris Everhart. - -46. The bug whereby named would sporadically return NXDOMAIN when it should - have sent back a referral has been fixed. - -4.9.2 ------------------ BETA3, BETA4 ----------------- Paul Vixie - -45. Robert Elz has provided updated LOCALDOMAIN environment variable - processing, making it more like resolv.conf's "search" than "domain". - In the spirit of this I have added a RES_OPTIONS environment variable - and a corresponding "options" keyword to resolv.conf. All of this is - documented in the man pages and in the BOG. Robert has also contributed - several bug fixes to the validation and negative caching code. - -4.9.2 ------------------ ALPHA ----------------- Paul Vixie - -44. BETA1, BETA2, and three patches to BETA2 have all come and gone without - itemized descriptions in this file. I'll provide the RCS history on the - code to anyone who asks, but basically what's been happening is that some - core dumps were fixed, others added, then those were fixed too. Meanwhile - RFC 1535 has been published, codifying CERT's concerns and our answer to - them. BIND is now RFC 1535 compatible. RFC's 1535, 1536, and 1537 are - now included in the doc/ directory. Note that Mark Andrews supplied many - of the fixes to the core dumps, some of which were introduced by me and - some by ISI's negative caching and/or validation code. - -43. patch05 to ALPHA2 (930908) released: this includes new DNSRCH logic to - correct a serious problem that CERT called me with today. the change is - subtle and will have the effect that names which could match either as - fully qualified names or partially qualified names using the local search - list will be found as fully qualified. previous releases would have found - them first through the local search list. local search lists are a bad - idea in my opinion; see new SEARCH_DEFAULT option in OPTIONS file for more - information. also in this release: limited Solaris support, in the form - of POSIX-style signal handling used on systems which support (or require) - it. as of this patch, 4.9.2 has a good chance of compiling out of the box - on Solaris, modulo makefile edits. dig and host should be more portable - now, too. - -42. patch04 to ALPHA2 (930908) released: this corrects several borderline - syntax errors in various Makefiles (Sun and Ultrix makes complained); - it corrects a coredump on Ultrix systems (which aren't really as POSIX - as i thought they were); it lets dig and nslookup compile again on SunOS; - and it cleans up some dirty junk in named-xfer.c. this stuff is really - really minor but i would like to see it tested on a Sun system before the - beta. - -41. patch03 to ALPHA2 (930908) released: this uses compat/include by default - which is helpful on BSD/386 systems and shouldn't hurt any others except - perhaps real 4.4BSD systems (and maybe not even those); it removes Bryan - Beecher's SHUFFLE_ADDRS option since he and I agree that Marshall Rose's - ROUND_ROBIN stuff is more general and cleaner; it includes various patches - to the documentation sent in by several folks (please print the BOG and - let me know if you find problems in it); it fixes "make depend" problem - in "man/" subdirectory; it fixes several outright bugs in Gregory Shapiro's - SECURE_ZONES code; it removes an obscure syslog() that should have been a - dprintf() ("validate_count -> 0"); it fixes a bug in NCACHE whereby a T_ANY - query for a name which was negatively cached but had children would return - _answers_ with the T_ANY type for subsequent queries; several newer syslog - messages were reworded to make them clearer; a portability bug in the - SUNSECURITY logic was fixed; another in the RFC1101 logic was fixed; - support for the PAGER environment variable was added to nslookup (sorry, - i know we're in functional freeze but this will enable development in the - next cycle and it was pretty simple) and only affects the "view" and "help" - commands. - -40. patch02 to ALPHA2 (930908) released; this includes more fixed from Mark - Andrews, this time to Anant's NCACHE stuff (memory leak and functional - bug). Also included is a patch from Gregory Neil Shapiro to his SECURE_ - ZONES code, which I hadn't noticed since I don't run it here. - -39. patch01 to ALPHA2 (930908) released; this includes some fixes from Mark - Andrews to his "clev" and ADDAUTH stuff. The "clev" patch fixes a problem - on all servers; the ADDAUTH stuff is still experimental so most users will - not be affected by it. Dave Morrison also sent a patch for the USE_UTIME - logic, which is important for ULTRIX systems. - -38. 4.9.2-ALPHA2 released on 930908. - -37. Mark Andrews sent an initial attempt at implementing ADDAUTH, which will - eventually allow named to include authority and glue RR's with all - authoritative answers. I am not sure that the design goal is right, and - the implementation currently sends back glue RR's but no authority RR's, - so I'm recommending against using this for now. But since it changes some - internal interfaces in a harmless enough way, I'm including the changes. - -36. Marshall Rose's ROUND_ROBIN code snuck in at the last hour. This is the - best answer I've seen to the problems purported to be solved by SA RR's, - and my wording in the OPTIONS file shows this. - -35. These items from TODO is now done: - - [vixie@pa.dec.com 25apr93]: clean up debugging - replace all "#ifdef DEBUG...fprintf(...)...#endif" with dprintf(...) - which would be a macro that only expands to an fprintf() if DEBUG is - set. dprintf(x, (args)) with x as the log level. perhaps change log - levels to be symbolic, and perhaps make them a mask instead of a limit. - - [vixie@pa.dec.com 25apr93]: clean up #ifdef's and portability - add and use function prototypes. make everything static that can be. - externs should only be in .h files (add more .h files, per module if - needed, to cover these). add "export" keyword (null define) to make - it clear which names are exported and which are static. all top-blevel - names in a module must be "export" or "static". - - [gshapiro@wpi.edu and vixie@pa.dec.com 26apr93]: access control - "xfrnets" is ok but what we really need is full access control per - zone rather than a global list of acceptable client nets. this is - especially important if you send /etc/passwd via zone transfer. - - [postel@isi.edu anant@isi.edu jaffe@noc.rutgers.edu - 28apr93]: negative caching - Paul: - We'ed like to have included in 4.9.1 - our implemention for negative caching. - --jon & Anant. - - [vixie@pa.dec.com 16may93]: inet_addr needs to die - to be replaced by calls to inet_aton, which doesn't confuse the - broadcast address with bad addresses. - - [Paul: I know you said that you'd like to wait for the IETF DNS WG to - "bless" an official load balancing scheme, but I'll be adding my - shuffle A records to BIND 4.9 for use here at U-M anyhow. The code - mods to existing source files are minimal since the bulk of the work - is done in a separate .c I added. If you don't want SA records to - move into 4.9.1 unless they become official, please just toss this - first entry. --bryan@umich.edu] - - [bryan@umich.edu 25apr93]: add "shuffle A" records - There are several schemes for adding some kind of load balancing - capability to the DNS. Our "Shuffle Address" (SA) records are one - stab at this, and since they're in use at U-M, I need to add them - so we can use BIND 4.9 here. - - [bryan@umich.edu 25apr93]: add AFSDB records - AFSDB records were proposed in RFC xxxx. We use them here at the - University of Michigan, so I need to add them for our copy of - BIND 4.9. - - [bryan@umich.edu 25apr93]: small fix to resolver's p_cdname() - The current copy of p_cdname() in the resolver does not work - for query responses larger than 512 bytes (which can happen when - using TCP). A very small modification changes the "sanity check" - argument (the second one) to dn_expand() from "msg + 512" to - "cp + MAXCDNAME". (This showed up very recently.) - -34. While waiting for some last minute changes from volunteers, I looked - at my work queue and saw that asp@uunet.uu.net had asked a while ago - that named not fork/exec a named-xfer unless it had already determined - that the serial number was out of date. This is important to sites like - UUNET and DECWRL, which have thousands of "secondary" lines in their - named.boot and can take hours to check all the serial numbers at boot - time if named forks/execs named-xfer and lets named-xfer compare the - serial numbers, rather than comparing them in named and only fork/exec'ing - a named-xfer if it's actually neccessary to do a transfer. In spite of - C's lack of threads, this only took a few hours to do. So it's in. - -33. Gregory Shapiro's "secure_zone" changes are in. See the BOG. - -32. Internals changes: STATS is no longer optional; ns_req() has been split - into three functions for readability. Convex systems are now supported. - You can now define LOG_FAC in conf/options.h if you want to syslog as - LOG_LOCAL1 or some other non-LOG_DAEMON value. The mkstemp() problem on - ULTRIX has been fixed. More dead code has been eliminated. - -31. Large TCP queries are now printable in debug mode (which is used by - "dig" and "nslookup"), thanks to a patch and a lot of patient explain- - ations from Bryan Beecher. - -30. Data from subdomains ("deeper zones") is now considered more credible - than data from parent zones, if both are authoritative. This permits - a subdomain's data to differ from its parents delegation information - and have the most-local information supercede the least-local. Mark - Andrews sent this in, and it is nonoptional. - -29. rossc@ucc.su.oz.au's SUNSECURITY patch is now included, along with - marka@syd.dms.csiro.au's performance improvement to it. Note that - I am violating my own policies by including this, since it came - without a corresponding patch to OPTIONS, conf/options.h, and the BOG. - -28. Interfaces with multiple addresses were not being handled properly. - This is an issue for 4.3-Reno and later BSD systems, including BNR2 - ("Net-2") and 4.4BSD. Multiple addresses are not properly handled - as if they were all aliases for the localhost. - -27. Jukka Ukkonen sent me some patches for the Convex, - which I've put it but cannot test. - -26. sob@tmc.edu (Stan Barber) sent me new versions of contrib/host/host.c - and contrib/host/send.c, which I have installed but not tested. I am - still waiting for someone to update the version in tools/host.c, which - is going to be a lot more work. Contact me via e-mail if you want to - help. - -25. My credibility stuff from the original 4.9 (and before that, KJB) - was operating under a ``scorched earth'' policy due to a brain fault - on my part when I wrote the code originally. Tim.Goodwin@pipex.net - discovered this and sent in a patch. Note that throwing out glue is - generally OK since glue is generally NOT OK, but disposing of it after - ~20 references is a lot better than disposing of it after 1 reference. - -24. NS RR sorting on forwarded and system queries was not happening - unless more than 1024 milliseconds of RTT variance existed among - the servers. This was a good value for development and testing - but not for production use. The value is now 128 milliseconds. - No, this should not be a configurable in the boot file. - -23. I am including a file doc/FAQ which was posted to usenet as: - From: craig@ecel.uwa.edu.au (Craig Richmond - division) - Newsgroups: comp.protocols.tcp-ip.domains - Subject: FAQ: Setting up a basic DNS server for a domain - Date: 3 Aug 1993 10:53:51 GMT - Organization: The University of Western Australia - Lines: 1088 - Message-ID: <23lg3v$1go@uniwa.uwa.edu.au> - Summary: Step by Step implementation of a DNS server - Keywords: FAQ DNS setup - -22. named-xfer now syslogs if the remote server's serial number is _lower_ - than ours, which does seem like a bad thing. per@erix.ericsson.se - (Per Hedeland) sent this in. - -21. man/resolver.3 had a typo on the exp_dn argument to dn_expand. fixed. - (Steve Alexander sent this in.) - -20. include/sys/cdefs.h moved to compat/include/sys/cdefs.h since some - systems have their own which must be used. the top-level makefile - must be edited if you are on one of these systems, since the default - CFLAGS includes this new directory as a -I directive. sys/bitypes.h - has also moved. - -19. A neccessary bug fix for ISI's VALIDATE/NCACHE code has been incorporated. - If you had to rebuild without these turned on in options.h to get your - CNAME lookups to work again in an earlier 4.9.2 ALPHA, you can turn them - on again now. - -18. The q_system field of the query structure has been removed in favor of - a q_type field containing bit definitions. The old PRIMING_CACHE magic - cookie is no longer used. Go to the end of the universe, do not pass go. - -17. Converted to ANSI C. All functions are static unless they are actually - needed outside the current module ("file" in C terminology); static - functions are declared with prototypes if they are forward-referenced. - Externally visible functions are declared in separate header files, with - prototypes. ns.h and db.h have been split into four new header files: - db.h -> db_defs.h db_glob.h db_func.h - ns.h -> ns_defs.h ns_glob.h ns_func.h - - The *_defs files contain only structure and type definitions, and macro - definitions. Nothing that generates text or data space in the executable - is declared here. - - The *_glob files contain only global variable declarations, which used to - be defined in the various *.c files in a more or less random fashion. The - declarations are "extern" if included from non-main()-containing files, but - are defined globally and given initial values in main()-ish files. This - reuse of the same declarations insures that the type and size declarations - match between definitions and external references to them. - - The *_func files contains function prototypes for global ("extern") - functions. The prototypes are all optional so will not break non-ANSI - systems. Note that I don't have such a system any more so I may be wrong. - -16. Removed all remaining references to "short" or "long" that did not - depend on the vague semantics of those types. Most uses were actually - depending on a size of 16 bits for short and 32 bits for long, and there - are processors/compilers where each of these types is different. This - work was begun in 4.9 and is now complete. Note that some structs that - are used in large data structures use "char" for 8-bit integers. It helps. - -05Jul93 - ALPHA Released - -This is the cleanup release after 4.9. I'm going to try the TCSH style of -logging the changes; let me know if you think it's a bad way of doing it. - -15. the resolver now includes an implementation of RFC 1101, which allows - network names to be encoded in the DNS tree rather than in /etc/networks. - this implementation is by rps@matuc2.mat.uc.pt (Rui Pedro Mendes Salgueiro) - i put the test program and original documentation in contrib/rfc1101/. i - would like to see their main.c ("nettest") turned into a tools/nettest, - but i'm not willing to do the work myself. it needs a man page, etc. - -14. as expected the initial HS zone transfer stuff didn't work that well. - thanks to , retries after failed SOA queries will use - C_IN rather than falling through to C_HS inappropriately. - -13. ns_init.c was fcntl(SETFL)'ing in a destructive way. it now does a - fcntl(GETFL) to get the old option mask and then |'s in the new flag. - this patch came from Eduard Vopicka . - -12. there are two new conf/Info.* files; check 'em out. - -11. ultrix (some versions, especially the vax ones) libc.a had some bad - naming conventions for some resolver routines. getshort/putshort just - have to be real functions, not just macros, or you can't link anything - with this resolver. patch was sent by . - -10. sethostent(x) for host files was sticky for nonzero 'x' (avalon@anu.edu.au) - -9. hp9000s700 is now supported in include/arpa/nameser.h (avalon@anu.edu.au) - -8. statistics dumps now print the time in decimal-seconds-since-1970 in - addition to the old "ctime" format, for ease of debugging. (Peter Koch). - -7. systems with 14-character filename limitations have apparently been - having trouble in named-xfer since its temporary file names are bigger - than they can handle. ash@hp sent in some patches a while ago, enabled - with SHORT_FNAMES in conf/options.h, to deal with this appropriately. - We should probably just generate short names always. - -6. Some security stuff from ISI. According to Anant Kumar : - - The validation procedure is the major change here. Currently, we - accept anything from a server, as long as we had asked it a question. - This implies that a malicious server can really send us any data and - we not only pass it on, we also cache it for as long as the TTL - holds. This can be really bad for our health and for that of those - who use the DNS. - - We add this procedure to verify for each RR returned by a server - that it is indeed authoritative for either that zone, or for a - parent zone. We end up trusting the root servers for everything! - Also, the more rich our cache is the more choosy we become about the - data we add on to it. This stuff is all ifdef'd with "#ifdef VALIDATE" - - The negative caching stuff adds on a d_rcode field to the databufs. - Any positive entry now shows a NOERROR there while negative entries - have either a NXDOMAIN or NOERROR_NODATA. NOERROR_NODATA rcode is - never returned. It is used only to differentiate, within the - internal database, between negative and positive entries. We use the - regular hash table (hashtab) to store negative entries, too. Only - authoritative answers are negative cached, for NTTL (parameterized, - currently 10 minutes) seconds. Non-authoritative NXDOMAINs or - NOERROR with zero RR count, now generated, are now accepted but - never cached. This is ifdef'd with "#ifdef NCACHE". - -5. "make install" now has a prayer of working for the man pages. an observation - was made that net2++ systems _require_ formatted "cat" pages and that older - systems are _able_ to use them, so that's all we install. - -4. i wrote man pages for named.reload, named.restart, and named-xfer. these - were actually in 4.9.1 for 4.4BSD. - -3. unneeded functions in compat/lib will now generate placeholder symbols, to - make sure that the linker doesn't generate ugly-but-harmless warnings. - -2. my ignorance of the true meaning of _POSIX_SOURCE has been corrected, - along with the ugly-but-working code in conf/portability.h and elsewhere. - -1. non-resolver routines moved from res/ to compat/lib/. this will shorten - libresolv.a and make it easier to integrate new BIND releases into Net-2 - descendents such as 4.4BSD and BSD/386. - -4.9.1 ------------------ - -This is the integration of the changes that were made for 4.4BSD. This -release will not be published. Changes include: - -doc/BOG/*: many changes to improve appearance of the output, including - orphan-avoidance and better tab stops. Sent to me by someone on - the net who deserves thanks but I've lost the original mail. Oops. - -include/*: the CSRG people weren't entirely pleased with the interface - changes i made to the res_*() and inet_*() functions. in particular, - the changes from "long" to "u_int32_t" were too sweeping in their - opinion since Posix is already working on standardizing them and - might look unkindly on an apparently-still-evolving interface. also, - the possibility that all the vendors will change their implementations - to match the new interface is apparently rather dim. therefore most - externally-visible occurances of the int32_t type have been changed - back to "long" in the resolver interface. we believe that this should - still be portable to Cray and AXP machines, but i'll wait to hear from - someone who can actually try it out and let me know. - -tools/*: the "net2" version of "lex" requires some additional flags and libs, - and this had implications for the Makefiles and the dig.c source file. - nslookup's man page is now in man/ rather than tools/nslookup, for - consistency. - -named/*: last-minute 4.9-FINAL changes to named-xfer.c and db_load.c resulted - in corruption of TXT records on zone transfers, and a high number of - useless syslog(SYS_ERR) messages about zones already being up to date. - these last-minute changes have been massaged into better shape and are - now a lot readier for prime time than they were. a lesson was learned. - - the inet_aton() function is now used where appropriate, rather than the - old inet_addr(). this is just an evolutionary move that should have no - practical implications. bad addresses in the "tcplist", "bogusns", and - "sortlist" directives (from named.boot) are now syslogged. - - some open files are still inherited by named-xfer from named, but they - are properly closed now. - - the SIGXFSZ signal is now accepted as an alias for SIGHUP, in support - of the wierd DEC Hesiod implementation. no practical significance. - -res/*: one important bug fix in the gethostent() stuff, and a whole bunch of - evolutionary include file changes. - -include/*: include/sys was moved to compat/include/sys, since systems that - do not need it really really really need to get their own instead. - at some point i'm going to move the res/*.c files that are needed for - compatibility but not really part of the resolver, into compat/lib. - -general: there are more settable parameters in the top-level Makefile, and - they are propagated downward into the subdirectories' Makefiles. you - should not have to edit any Makefile except the top-level one. Note - that "make links" still creates local Makefiles in the build directory - because "mkdep" still edits the Makefiles on most systems. - -4.9-FINAL ------------------- - -Kevin Dunlap sent in some changes for the BOG. So did a lot of other folks. - -Someone asked about AXP-OSF, so I did a trivial 64-bit port. Porting to -other 64-bit systems should be simple now. Someone also sent in some MIPS -RISCOS portability changes, which were simple and therefore were put in. -Note that some type names have been added to BSD 4.4 as a result of this -work; they are going to be in in BSD 4.4 but they are in a -local include file called in this distribution, with -appropriate #ifdef's in the include files that depend on them. Those of you -who are porting to 64-bit platforms where "long" isn't 32 bits should be -using these new names for your types; there was no standard before this, -but the names we've added for BIND 4.9 and BSD 4.4 are going to be proposed -to Posix at some point. Sometimes it's just not OK for "int" to be the -"natural integer size of the machine" and you just _have_ to tell the compiler -how many bits you want. - -The NIC added a new root server, thus pushing the size of a nonauthoritative -root server response (which includes the root server list in the answer as -well as the authority sections) over the 512-byte limit. This showed up a -long-term BIND bug wherein it failed to set the TC ("truncation occurred") -bit if truncation occurred anywhere but the answer section. Since truncation -was occuring at the end of the packet, in the additional data section, this -meant that BIND was generating truncated responses without setting TC in the -response header. Upon further investigation, I found that BIND ignored TC -on responses it received from other name servers. RFC 1035 states that RR's -from truncated responses should not be cached; with creative interpretation -of the exact 1035 wording, I found a way to reach this goal while still -caching the answer section (as long as the truncation occurred in some other -section, which 1035 gives no definitive way to determine but I'm happy with -my guess). - -While researching the above, I finally broke down and added credibility -output to the zone dump files. They are in the comments so should cause -no trouble. There's more work to be done on the dump output; in particular, -Phil Almquist proposed and even prototyped a "tagging" of all RR's with the -A RR of the nameserver that sent them to us; this feature should be added -and the dump output should include it. This would add a lot to our ability -to track down corrupt data. - -Don Lewis and I had more discussions about TC and ended up agreeing that the -right thing to do is to set TC on responses that overflow in the answer or -authority section, truncating at an RR boundary, but do not set TC on responses -that overflow in the additional-data section (truncating at a {name,type} -boundary). This actually solves the root server problem pretty well, since -BIND 4.9 will, when it tries to use an NS whose A isn't in the cache, generate -a sysquery() for the missing A. (Heck, additional data TTL's are depreciated -at the rate of 5% per use, so this would end up happening pretty quickly even -if we did cache a partial {name,type} -- but now we won't have to.) - -While trying to fix all of this stuff I ended up moving some functions around -to avoid duplicating them in different source files, and I reformatted some -source lines that went over 80 characters. I also made a few things "static" -that used to be unneccessarily global. More of that will happen in 4.9.1. - -DEC's product version of MIT Hesiod uses SIGXFSZ for what we do with SIGHUP; -since the default for SIGXFSZ is to exit, it seemed prudent to wire it up to -do what SIGHUP does instead, so that this BIND can run on DEC Hesiod servers. - -At the request of several people, I integrated the USC "dig" and Rutgers -"host" tools into the distribution. This required some changes to the -resolver library's debugging output formats, which will be visible in -nslookup, nsquery, and any other tool that sets the RES_DEBUG option. -Note that there is no support for "DEFNAMES" in this version of dig, due -to design changes between 4.8 (from which "dig" is derived) and 4.9. there -is no reason in principle why it can't be made to work, but it doesn't work -now. therefore only fully-qualified names can be looked up with this "dig". - -I had to change the name of the resolver "state" structure to be "__res_state" -for standards conformance (really, it is not reasonable to expect that because -a program includes it will never define its own structure called -"state". This change highlights the imperative that any application which is -relinked against this resolver must first be recompiled against these include -files (notably ). This is true for almost all versions of libresolv. - -I asked for items for the "TODO" list and got quite a few. Check them out -before you hack; someone else may already have started doing what you want to -do. I also asked for tools for the "contrib" subdirectory and got 650KB worth. -They make the BIND 4.9 distribution a lot larger than 4.8.3 was, but the extra -bytes are well worth their weight. - -Kenneth Almquist (no relation to Phil, as far as I know) posted a patch for -res_send() that lets it keep track of servers that are responding "SERVFAIL" -or some other fatal condition; these servers are NOT used for retries of the -current query. This information is not persistent between calls to res_send() -since future calls will probably be for different {name,type} queries, which -will not neccessarily fail in the same way. This change is trivial and makes -a measurable difference in the amount of DNS traffic on my local net. - -4.9-BETA ------------------- April 17, 1993 -- Paul Vixie -- DECWRL - -"Peter Koch" 's previous patch caused core -dumps on some systems. I fixed part of it and Peter sent me a fix for -the rest of it. All is now well. - -The Bind Operations Guide in doc/BOG has been updated to 4.9. Also, the -man page in man/named.8 has had some patches applied. The copyrights are -all fixed now. Let's get this thing OUT of here! - -4.9-ALPHA ------------------- March 15, 1993 -- Paul Vixie -- DECWRL - -There was a really bad bug affecting wildcards. I received a patch -from "Peter Koch" which fixes some of -it, but I can't quite motivate myself to fix the rest of it since I -know that what's _really_ wrong is going to require chainsaws and -dynamite to fix and that'll add another year to the release. I think -that this patch will hold us for a while. - -There are a LOT of portability changes that I'm holding onto, especially -including 64-bit fixes. Do not submit any more portability changes -until 4.9.1 opens. Go ahead and make them, but be prepared to remake -them later. Let me know what you are doing but don't send me any diffs -for portability until I ask for them. 4.9 has been stuck in the barrel -for way too long already -- patches that don't fix RFC-noncompliance or -core dumps will just go into my "todo" folder (which is presently a -black hole of great mass). - -4.9-ALPHA ---------------- Febrtuary 2, 1992 -- Paul Vixie -- DECWRL - -Mostly portability fixes. The nslookup "lex" problem is BSDI-specific -and I'm not going to hold up release because of it. This will be the -last alpha release before the public beta. It is, as usual, running -the DEC.COM primary name service and has done so for more than a week -without any problems. - -4.9-ALPHA ---------------- January 10, 1993 -- Paul Vixie -- DECWRL - -Once I get the known bug in nslookup (see below) fixed, this version is going -to go into public beta. I would appreciate it if everyone would try it out. - -KNOWN BUG IN THIS RELEASE: something wild is going on inside of the yylex() -routing on BSD/386 systems. It only affects nslookup. I'm still trying to -figure out how I'm going to debug this; lex experts, please see what's going -on. None of the changes since the 930105 release should have been capable -of producing this change, but something is sure doing it. - -I finally fixed the {GET,PUT}{SHORT,LONG} macros to stop issuing warnings -on HP-UX systems. They are also warning-free on Ultrix(SPIM,VAX), BSDI(386), -and SunOS(SPARC) systems. I took the plunge and changed the internal functions -in res/res_comp.c to depend on these macros instead of duplicating the code, -and everything still works. - -Tom Limoncelli found three ancient memory leaks. I fixed two of them -but the last one looks too much like a "cannot happen" for me to be -willing to experiment with it. Besides which, it's "very" minor. - -Uses setsid() on POSIX systems. PID file is now optional. (arc@sgi) - -Comments (";" or "#") are now allowed in resolv.conf (arc@sgi). - -Documentation and copyright changes in README. - -Known to compile on NeXT machines. - -Some portability changes for AIX, whose CC is very picky. - -I forgot to mention in the 921227 release that T_RP is supported (arc@sgi). - -I included a number of changes that Alan Barrett has been trying to get -in since the 921221 version. Most are portability-related, and the few -things that are functional are changes to my own previous additions :-), -so I'm fairly sure that they are doing the right thing. Alan's changes -include: - - include/arpa/nameser.h - improved error diagnosis in the BYTE_ORDER configuration. - - changed hp9000 test to hp9000s300. As far as I know, there is - no hp9000 preprocessor symbol. Should probably add other - hp9000s tests, but have not done so. - - named/ns.h - Moved the XFER-related stuff from the end of the file to near - the top, where it is grouped with similar stuff. - - Makefiles: - Add SYSLIBS variable, so folk can compile with -lBSD easily. - - Changed install targets to make them easier to customise. - - make links wasn't handling named.{reload,restart}* - - Add ${CDEBUG} flag to link step. Some debuggers don't work - right if the program isn't linked with the -g flag. - - struct timeval members are declared as unsigned long on some systems. - Add casts to (long) in several if statements that appear to assume - that tv_sec is signed. - - PID_FIX in ns_main.c controlled more than just whether or not the - pid file gets fixed. - Changed it to control only that one feature. - - For debugging, it is useful for a nameserver to listen to non-standard - port, but to forward requests to a standard port. - Add "-p remote/local" option to named/ns_main.c. - Also needed some other changes elsewhere. - - Don't forward back to the host that asked us a question, unless they - asked from some port other than their nameserver port. This allows a - dig or nslookup user on a host to ask us questions with - recursion-desired, where we are willing to recursively ask the - nameserver on their host. However, if a nameserver asks us something - we will not recurse back to them. - nslookup() in named/ns_forw.c checks for this and returns -1. - ns_forw() and sysquery() notice this and return SERVFAIL. - - Moved the nsContainsUs functionality from a separate routine - into nslookup(). No need to do the same tree walk several times. - - While trying to track down various problems, added detection - and logging of errors in several syscalls in ns_main.c. - - Avoid integer overflow in roundtrip time calc in ns_resp. - This needs a definition for INT_MAX. - - Fixed root zone transfer bug. Also corrected some slightly misleading - comments in the doaxfr() code, and added some more comments. - -4.9-ALPHA ---------------- January 5, 1993 -- Paul Vixie -- DECWRL - -This one was built and tested on Ultrix 4.2 (SPIM, MIPS CC and GCC), -BSD/386 (Gamma.4), Sun SPARC (4.0.3, sorry, that's the latest I have), -4.3BSD Reno (VAX, PCC), and Ultrix 3.0 (VAX PCC). - -Moved res/defs.h to conf/portability.h; named/options.h to conf/options.h. - -Portability changes for O_NDELAY. SUNOS is really strange about this. - -Removed some unneccessary goto's added to ns_main.c on 1jan. Oops. - -Art Harkin of HP sent in a number of small (read: obviously correct) -improvements, some related to portability, some to functionality. - -4.9-ALPHA ---------------- January 1, 1993 -- Paul Vixie -- DECWRL - -Changed all O_NONBLOCK to O_NDELAY. Changed all {r}index to str{r}chr. - -Added some SysV support in the form of bcopy->memcpy, bzero->memset. - -Added C_HS support to named-xfer (greg@duke.cs.unlv.edu). - -Fixed a line-number problem in asp's "include" logic (asp@uunet.uu.net). - -streamq's were being used after free(). bug report from fuat@ans.net -and jpe@ee.egr.duke.edu. bug fix by vixie. - -In the resolver, we now default to address 127.0.0.1 rather than 0.0.0.0. -There's a comment in the code that explains why. - -In the resolver, arc@xingping.esg.sgi.com changed it to use inet_aton() -and included that function for those not running 4.4bsd. - -arc@xingping.esg.sgi.com also provided lots of portability fixes and -general cleanups, in particular to nslookup which he maintains for CSRG. - -4.9-ALPHA ---------------- December 27, 1992 -- Paul Vixie -- DECWRL - -Added strtoul() to libresolv.a since it's yet another neccessary function -that older systems don't have. If we can stomach strcasecmp() we can sure -handle this. - -Moved res/named/gethostnamadr.c to res/gethnamaddr.c (note basename change) -and res/named/sethostent.c to res/sethostent.c. Since the host table stuff -isn't in separate files any more I saw no reason to retain the subdirectory. - -Updated all the copyrights and applied the small lint changes that bring -the baseline of this version from "4.8.3 as seen on ucbarpa" up to "4.8.3 -as released with net-2". Thanks to the alpha testers for pointing this out -to me and for sending in the diffs. - -With much howling and screaming, I ported this to UMIPS (MIPS System V). -There are a lot of really bad things going on in their libc.a, and now -they're going on in BIND as well. - -I added a "res/defs.h" file and then proceeded to include it from all kinds -of files that aren't in res/. I'm thinking of moving it but I'm also trying -to figure out where -- include/ is the wrong place. res/defs.h has in it all -the ugly ifdef's needed to figure out whether this is a late-model BSD system, -a POSIX system, or just old. - -All the "#endif" and "#else" cpp directives now have comments around their -annotations. It turns out that System V CPP complains about "#endif DEBUG" -but has no problem with "#endif /*DEBUG*/". In many cases where the #ifdef -was obviously visible and unambiguous, I simply removed the annotation. - -The "l" is now a ";". Thanks to all who replied :-). - -There was a very bad bug in the named-xfer interface. 'nuff said. - -AIX needs a 32-bit field for PID's. I can't imagine. But it's fixed. - -The "domain" directive in named.boot is now an option, defaulting to off. - -There was a benign bug in sqrm(). - -doaxfr() is now shorter and clearer. - -There is an "include" directive in the named.boot file now. Its syntax is -simple: "include somefile". No quotes, no "#", no . This feature -was in 4.9-ALPHA as well, courtesy of Andrew Partan. I forgot to document it. - -4.9-ALPHA ---------------- December 21, 1992 -- Paul Vixie -- DECWRL - -This release incorporates fixes from a lot of people, including many from -DECWRL. Some fixes are just lint; some are to avoid dumping core on non-VAX -computers; many are to fix promiscuity, corruption, and rudeness. - -Various internal DEC programmers have ported the old 4.8.3 code to various -not-entirely-BSD-like platforms and turned up some interesting lint. All -of this has been fixed. Also, we fixed a bad bug in the handling of timeouts -and SERVFAIL's when forwarders and slave are both used. - -I have made major changes to the code inside the ALLOW_UPDATES ifdef's, but -I don't use it and have never compiled with that option turned on so I don't -know if it still works. Given that SNMP has come and there is an IETF WG for -SNMP management of the DNS, I am thinking very seriously of purging all of the -ALLOW_UPDATES code in 4.9.1. I suspect that Mike Schwartz will let me know if -this is ok.. - -(interrim "KJB" notes) ------------------- March, 1992 -- Paul Vixie -- DECWRL - -If we are about to forward a query for some zone for which we are one of the -servers, we send back a SERVFAIL instead. If we don't have it, chances are -good that the other name servers won't have it either. This is the major -cause of "network meltdown" when the root servers declare you as a name server -for some zone you don't know about and havn't configured yourself for. - -Fixed a memory leak such that if db_update() fails to update the database -from a response packet, a databuf will no longer be orphaned. Also fixed -what looks like a similar leak in the ALLOW_UPDATES code but I don't use it -that hasn't been tested. - -Fixed a memory sponge such that if we forward a query to someone who is not -ever going to answer it, we will eventually expire it from our query queue. -Previously it would expire after N retries to N' different servers, which -could be a very long time. Particularly in the case of lame delegations and -other forwarding loops, we feel that 90 seconds (two max-retry intervals) is -enough time for a query to be answered. While we were into this code we made -several fields in the query structure into "short"'s since they were only -being used to store smallish integers. The query list gets Very Long during -a forwarding loop -- even 90 seconds worth of queries is a lot of queries. - -This version includes my hacks that assign a "credibility index" to each - such that when more credible data arrives for a given -, all old data is purged. When equally-credible data arrives it -is aggregated in the way we all know and love; when less credible data -arrives it is completely ignored. Credibility, from best to worst, is: - 1. zone files (primary or secondary) - 2. authoritative answers - 3. non-authoritative answers and authority records - 4. additional data - 5. zone files ("cache" or "bootstrap" information) -You need this version of bind if you still show any A RR's in network -32.0.0.0 when you look up uucp-gw-1.pa.dec.com's A or adobe.com's NS. - -I have also added some extra code to prevent pollution of the internal -"hint cache." In all versions of BIND that I was able to test, any IN_A -response to any sysquery() would cause the IN_A RR to be added to the -fcachetab ("hint cache"). This resulted in lots of extra cruft in the hint -cache, that wasn't timed out properly, which in turn resulted in lots of -strange answers ('nuff said, take my word for it.) - -Though changes have been made to make the Ultrix and GNU (2.1) C compilers -stop complaining about the source, it should still compile and run just -about anywhere. In fact, after I cleaned up lots of old lint, this version -of BIND is known to compile and run on: - - Ultrix 4.2 (MIPS or VAX) - SunOS 4.0.3 - BSD/386 (BSDi beta) - -This was being released as King James Bind because, like KJ Sendmail, it is -a merge of every major variant of Bind that we know about. It was -assembled and tested by Paul Vixie of DEC NSL/WRL, with generous donations -of code and advice from Win Treese of DEC CRL. Changes from Don Lewis of -Harris, Andrew Partan of UUNET, and Piet Beertema of EUNet are also included. -See the OPTIONS file for a description of the changes you can control with -#ifdef's. - -This server has been run on UUCP-GW-{1,2}.PA.DEC.COM, which are in the UUCP -Zone. Our named.boot file has ~1900 lines in it. Before we instituted the -changes in this release, our name server usually ran at about 16MB virtual, -15MB physical, growing slowly but constantly until we restarted it. -Whenever a new zone was added to the NIC's root zone listing us as a name -server, our servers would kill themselves and eachother (and NS.UU.NET, one -of the other UUCP Zone name servers) with forwarding loops. After these -changes, we run at a fairly constant 8MB virtual and physical size, and our -apparent CPU utilization is always 0.0% since we never finish a quantum and -the scheduler always sees us as waiting for I-O. In other words, life is good. - -Notes from UCB version 4.8.3 follow: - -------------------- - -This is version 4.8.3 of bind. It is a test release that updates -versions 4.8 and 4.8.1 with fixes, and is essentially the same as -the version of named on the 4.3BSD Reno release. Although it is -currently described as a test release, it is believed to be reasonably -stable and more usable than the previously-released versions. -Here are some of the more important changes: - - o A list of domains may be specified for searching in resolv.conf instead - of just the local domain name. - - o gethostbyname() will accept a dotted quad. - - o Support has been added for the the T_TXT data type and for the class - C_HS. These are both used by Hesiod from Project Athena at MIT. - - o All of the pathnames have been put into one header file. This - makes it easier to change the location based upon your local - configuration. - - o Responses are only accepted from an address to which we might of sent - the request. This might cause problems if some server is multihomed - and is still running BIND 4.3, but it prevents attacks induced by - sending responses from another address. - - o Numerous bugs have been fixed: Adding a new authoritative zone now - works when the server has a cached SOA record. Comparisons in the - db now look at type and class as well instead of dropping records - with identical data. Scheduling of maintenance interrupts has been - moved to one routine avoid spurious ones. Named goes into the background - after more of the initialization is done. Stream connection queue - handling was cleaned up including a bug that caused data corruption - and core dumps. Sys5 no longer can have multiple transfers of the - same zone occuring at the same time. Handle CNAME -> CNAME loops - more gracefully. Avoid making one server never get queried. Border - conditions in resolver are checked more accurately. - - o Nslookup has been updated. - -There are several bug reports that have yet to be integrated into this -version. Hopefully they will be dealt with in the next release. Please -send feedback on this release. - -Notes from versions 4.8.1 and 4.8 follow: - ------------------- - -This is version 4.8.1 of bind. It is a test release that includes -version 4.8 with fixes, asynchronous zone transfer and better reload -capabilities. Although it is currently described as a test release, -it is believed to be reasonably stable and more usable than the currently- -released version, 4.8. The changes of note are: - - o The asynchronous zone transfer code previously posted to the bind - mailing list has been integrated, completed and tested. There are - a number of changes from the version posted, including fixes to - allow top-level domains to work and a simplification of the timer - code. - - o The code for reloading the server has been changed so that only - primary zones master files that have changed are reloaded. The - cache and secondary zones are not flushed, and the sortlist, domain, - etc. are reset to correspond to the boot file contents. - - o Several bugs have been fixed: the name "*" is not interpreted as - a wildcard in cached zones, only in primary zones. Secondary servers - no longer decrement the time-to-live of records by the time since - they verified the zone with the master; as a result, they never - hand out nameserver referrals with too short a TTL to be usable. - A bug was fixed that caused secondary servers with out-of-date - zones to return empty answers between the actual expiration time - and the next timeout. - -There are several other bugs that have been reported but have not yet -been fixed. In addition, the next regular release of named will -support negative caching, but this has not been integrated. - -I would appreciate receiving feedback on this release; in particular, -problems (or lack of problems) when installing on various systems. -I attempted to update the SysV code when integrating the zone-transfer, -but haven't tested it. - -The notes from version 4.8 follow. - ----------- -Welcome to version 4.8 of bind. - -There have been several changes to the named boot file (/etc/named.boot) -of which you should be aware. The "domain" line for each zone is no longer -needed, but one such line may still be used to specify a default domain -to be used for queries containing names with only a single component. -The term "suffixes", which was added in version 4.7alpha, has been removed. - -The manual page on named (named.8) has been updated to reflect all -these changes. Please read this and look at the example files -before installation. You should also note the changes in the -resolver code to support non-fully-qualified addresses and per-user -host aliases. See hostname(7) for an overview. Two new routines -have been added to the resolver library since the last test release: -res_query formulates a query, sends it, waits for a response and does -preliminary error checking; res_search implements the search rules -of gethostbyname using res_query. - -The MX lookup routine in sendmail has been modified to use res_search. -Also, dn_skip takes an additional parameter and has been renamed -to dn_skipname. While old sendmail binaries will work with the new -version of bind, because of these changes, it is desirable to install -new sendmail sources and recompile sendmail. Do not rebuild sendmail -from old sources. The new sendmail is on ucbarpa.Berkeley.EDU for -anonymous FTP from pub/4.3/sendmail.MX.tar and pub/4.3/sendmail.MX.tar.Z. - -There have been numerous changes to named, fixing most of the known -bugs that can be fixed without major structural changes in the server. -Several server configurations that failed before should now work. -Certain robustness problems have been fixed, in particular bounds- -checking when processing incoming packets. Two changes have been made -in preparation for negative caching: SOA records are sent in the authority -section in negative responses with NXDOMAIN set, and a bug was fixed that -caused confusion and repeated requests if a response had no error, no answer -and an SOA in the authority section. As such responses are already sent -by other servers, and will be sent by the next release of BIND, it is -important that all sites upgrade to this version as quickly as possible. - -The root "hint" cache and cache file remain the largest problem area, -along with named's naivete in accepting bogus server's data. -These will be addressed in the next release, along with asynchronous -zone transfers, intelligent reloading of zone files, faster startup, -and caching of negative responses. - -This version (4.8) will replace the last officially released version (4.5). -Version 4.5 has a serious bug that causes the generation of a continuous -stream of bogons to the root domain servers (bogus queries with the query -response bit set and possibly garbage for nsid and rcode). It is imperative -that these versions of named be replaced as fast as possible. We urge you to -field 4.8 quickly, for the sake of the root domain servers. - - Mike Karels - Jean Wood - bind@ucbarpa.Berkeley.EDU - -## ++Copyright++ -## - -## Copyright (c) -## The Regents of the University of California. All rights reserved. -## -## Redistribution and use in source and binary forms, with or without -## modification, are permitted provided that the following conditions -## are met: -## 1. Redistributions of source code must retain the above copyright -## notice, this list of conditions and the following disclaimer. -## 2. Redistributions in binary form must reproduce the above copyright -## notice, this list of conditions and the following disclaimer in the -## documentation and/or other materials provided with the distribution. -## 3. All advertising materials mentioning features or use of this software -## must display the following acknowledgement: -## This product includes software developed by the University of -## California, Berkeley and its contributors. -## 4. Neither the name of the University nor the names of its contributors -## may be used to endorse or promote products derived from this software -## without specific prior written permission. -## -## THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND -## ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -## IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -## ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE -## FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -## DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -## OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -## HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -## LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -## OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -## SUCH DAMAGE. -## - -## Portions Copyright (c) 1993 by Digital Equipment Corporation. -## -## Permission to use, copy, modify, and distribute this software for any -## purpose with or without fee is hereby granted, provided that the above -## copyright notice and this permission notice appear in all copies, and that -## the name of Digital Equipment Corporation not be used in advertising or -## publicity pertaining to distribution of the document or software without -## specific, written prior permission. -## -## THE SOFTWARE IS PROVIDED "AS IS" AND DIGITAL EQUIPMENT CORP. DISCLAIMS ALL -## WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES -## OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL DIGITAL EQUIPMENT -## CORPORATION BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL -## DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR -## PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS -## ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS -## SOFTWARE. -## - -## --Copyright-- + 1. [bug] zone names needed to be canonicalized in the parser. + + --- 8.1-T2B released --- -- cgit v1.1