Commit | Line | Data |
---|---|---|
dc0d77d7 CE |
1 | 19991129 |
2 | version: dnscache 0.50, alpha. not released yet. | |
3 | 19991223 | |
4 | version: dnscache 0.60, alpha. | |
5 | 19991224 | |
6 | internal: dns_sortip() takes length argument. | |
7 | api: dns_ip4() sorts output. currently this means just random. | |
8 | api: added socket_bind4_reuse(). removed reuse from bind4(). | |
9 | ui: used bind4_reuse() for port 53, bind4() otherwise. | |
10 | internal: eliminated some unused variables. | |
11 | internal: prototypes in cdb.h, cdbmake.h, cdbmss.h. | |
12 | internal: prototypes in case.h, env.h, fmt.h, scan.h, str.h. | |
13 | internal: prototypes in stralloc.h. | |
14 | internal: prototypes in error.h, strerr.h. | |
15 | internal: prototypes in ndelay.h, open.h, seek.h. | |
16 | internal: prototypes in sgetopt.h, subgetopt.h. | |
17 | internal: prototypes in tai.h, taia.h. | |
18 | internal: added some missing declarations. | |
19 | bug: query.c checked void response_finishanswer() return code. | |
20 | impact: cached responses were dropped on systems that | |
21 | didn't follow the traditional C return behavior. fix: | |
22 | obvious. tnx Giles Lean. | |
23 | internal: switched from taia_addsec() to taia_uint(). | |
24 | api: switched to uint16 for socket_* port numbers. | |
25 | internal: integrated uint16_pack() and friends. | |
26 | ui: dnscache allows (recursive) queries from port 53. | |
27 | ui: dnscache has 10-second idle timer on TCP read/write. | |
28 | ui: dnscache limits itself to 20 concurrent TCP connections. | |
29 | internal: moved dns_domain_fromdot() to separate file. | |
30 | ui: supported \X, \1, \12, \123 in dns_domain_fromdot(). | |
31 | ui: supported \123 in dns_domain_todot_append(). | |
32 | version: dnscache 0.61, alpha. | |
33 | 19991230 | |
34 | api: added dns_ip4_qualify(). | |
35 | api: added dns_resolvconfrewrite(). | |
36 | ui: added dnsipq. | |
37 | api: dns_ip4() checks for (strings of) IP addresses. | |
38 | 20000106 | |
39 | port: Solaris needs /dev/udp, not just /dev/tcp. impact: | |
40 | dnscache and tinydns would stop immediately under | |
41 | Solaris. fix: create /dev/udp in configure; and have | |
42 | tinydns create socket before chroot. tnx Louis Theran. | |
43 | internal: moved dns_name4_domain() to dns_nd.c. | |
44 | ui: tinydns no longer excludes screwy queries from its log. | |
45 | internal: moved respond() to tdlookup.c under new name. | |
46 | ui: added tinydns-get. | |
47 | ui: rewrote tinydns-data for new data format. | |
48 | internal: expanded rts to cover tinydns-data using tinydns-get. | |
49 | 20000107 | |
50 | ui: tinydns-data allows arbitrary case in domain names. | |
51 | ui: dnscache supports preconfigured servers for non-root | |
52 | domains. | |
53 | ui: dnscache uses textual addresses for preconfigured servers. | |
54 | 20000108 | |
55 | ui: tinydns-data excludes the additional and authority sections | |
56 | if doing so helps meet the 512-byte UDP limit. | |
57 | version: dnscache 0.70, beta. | |
58 | 20000114 | |
59 | internal: in log.c, ulong() now prints a uint64. | |
60 | internal: added cache_motion, query_count, log_stats. | |
61 | ui: dnscache now prints queries/motion stats after typical | |
62 | response packets. | |
63 | 20000115 | |
64 | internal: added droproot.c. used in tinydns and dnscache. | |
65 | internal: moved tinydns log() to qlog.c under new name. | |
66 | ui: added walldns, configure-wd. | |
67 | ui: configure-td now creates an empty root/data. | |
68 | ui: added tinydns-edit. | |
69 | ui: configure-td now sets up root/add-{ns,childns,host,mx}. | |
70 | 20000116 | |
71 | ui: renamed configure* as *-conf. | |
72 | ui: added axfrdns, axfrdns-conf. | |
73 | ui: added axfr-get. | |
74 | ui: dnscache-conf 10.* or 192.168.* now sets IPSEND=0.0.0.0. | |
75 | 20000117 | |
76 | ui: added pickdns, pickdns-conf, pickdns-data. | |
77 | version: dnscache 0.75, beta. | |
78 | 20000118 | |
79 | internal: address* -> address_* in pickdns-data.c. | |
80 | internal: start writing cdb earlier in pickdns-data.c. | |
81 | internal: keep track of namelen in pickdns-data.c. | |
82 | ui: added client-location variability to pickdns, pickdns-data. | |
83 | ui: qlog logs short packets. | |
84 | ui: qlog logs header if RD or other unusual bits are set. | |
85 | ui: qlog logs non-Internet classes. | |
86 | api: dns_domain_todot_append() -> dns_domain_todot_cat(). | |
87 | ui: axfr-get prints A records more nicely. tnx Russ Nelson. | |
88 | ui: tinydns, pickdns, and walldns respond REFUSED to multiple | |
89 | queries, strange classes, and strange header bits. | |
90 | pickdns and walldns also respond REFUSED to unrecognized | |
91 | domain names. | |
92 | 20000120 | |
93 | ui: dns_resolvconfip() and dns_resolvconfrewrite() reread after | |
94 | 10 minutes or 10000 uses. | |
95 | ui: dns_resolvconfrewrite() treats "domain" like "search". | |
96 | ui: dns_resolvconfrewrite() supports $LOCALDOMAIN. | |
97 | ui: dns_resolvconfrewrite() supports gethostname(). | |
98 | api: dns_ip4_qualify() -> dns_ip4_qualify_rules(). new function | |
99 | under the old name uses dns_resolvconfrewrite(). | |
100 | internal: cleaned up log.h. | |
101 | 20000121 | |
102 | port: the gcc 2.95.2 -O2 optimizer can destroy parameters in a | |
103 | function that calls another function with a long long | |
104 | argument. impact: gcc 2.95.2 kills dnscache in | |
105 | log_query(). fix: pass log_stats() inputs by reference, | |
106 | and pass uint64's through a variable inside log.c. | |
107 | internal: introduced x_* in axfr-get. | |
108 | internal: more format verification in axfr-get. | |
109 | ui: minimal Z support in tinydns-data. | |
110 | ui: axfr-get prints Z lines. | |
111 | ui: juggled axfr-get to support BIND 8's many-answers option. | |
112 | ui: axfr-get prints common characters readably rather than in | |
113 | octal. tnx Karsten Thygesen. | |
114 | ui: install copies VERSION into .../etc. | |
115 | 20000122 | |
116 | ui: dns_domain_todot_cat() now lowercases everything. | |
117 | internal: split printrecord.c out of tinydns-get. | |
118 | ui: added dnstrace. | |
119 | 20000123 | |
120 | version: dnscache 0.76, beta. | |
121 | 20000124 | |
122 | port: Solaris needs socket libraries for dnstrace. impact: | |
123 | couldn't compile under Solaris. fix: use socket.lib. | |
124 | tnx Karsten Thygesen. | |
125 | 20000126 | |
126 | ui: dns_resolvconfip() supports $DNSCACHEIP. | |
127 | ui: changed tinydns-get arg order. | |
128 | internal: split printpacket.c out of tinydns-get. | |
129 | ui: added dnsquery. | |
130 | internal: merged case.a, fs.a, str.a, uint.a, ip4.a into byte.a. | |
131 | internal: merged strerr.a into buffer.a. | |
132 | internal: merged stralloc.a, getln.a into alloc.a. | |
133 | internal: merged error.a, open.a, seek.a, ndelay.a, socket.a | |
134 | into unix.a. | |
135 | internal: used catulong in axfr-get.c. | |
136 | ui: packet-parsing errors produce error_proto. | |
137 | ui: axfr-get goes out of its way to reject wildcards. | |
138 | internal: introduced generic-conf.c. | |
139 | internal: upgraded timeoutread and timeoutwrite to iopause. | |
140 | 20000127 | |
141 | ui: revamped details of the log formats. | |
142 | ui: full Z support in tinydns-data. | |
143 | ui: axfr-get accepts authority records and additional records. | |
144 | ui: axfrdns tries to imitate BIND's handling of glue. | |
145 | internal: expanded rts to try out the servers and *-conf. | |
146 | ui: added rbldns. | |
147 | 20000128 | |
148 | ui: increased MAXNS to 16 in query.h. | |
149 | 20000129 | |
150 | version: DNScache 0.80, beta. | |
151 | 20000205 | |
152 | ui: tinydns-data supports ^, for the benefit of people stuck | |
153 | behind reverse CNAMEs. tnx Petr Novotny. | |
154 | 20000206 | |
155 | ui: rbldns supports $. | |
156 | ui: tinydns-data supports C. CNAME is overridden by NS; CNAME | |
157 | overrides other records; no multiple CNAMEs. | |
158 | ui: axfr-get supports C. | |
159 | ui: axfr-get no longer rejects wildcards, except for NS. | |
160 | internal: eliminated flagempty from tinydns-data. | |
161 | internal: cleaned up delegation/NXDOMAIN loops in tinydns-data. | |
162 | internal: reorganized packet_start interface in tinydns-data. | |
163 | ui: tinydns-data supports BIND-style wildcards, except for NS. | |
164 | version: DNScache 0.81, beta. | |
165 | 20000207 | |
166 | ui: renamed dnsquery as dnsq, to eliminate name conflict with | |
167 | Beecher dnsquery program. tnx Anand Buddhdev. | |
168 | 20000208 | |
169 | ui: tinydns-edit supports add alias. | |
170 | ui: tinydns-conf sets up root/add-alias. | |
171 | 20000209 | |
172 | ui: dnscache-conf now sets IPSEND=0.0.0.0 in all cases. | |
173 | ui: dnsq and dnstrace allow server names. | |
174 | ui: dnsq and dnstrace allow type names. | |
175 | 20000210 | |
176 | internal: response_tc() reduces len, simplifying udprespond(). | |
177 | ui: response_tc() now truncates immediately after query. this | |
178 | should work around the Squid parsing bug reported by | |
179 | Stuart Henderson. | |
180 | 20000211 | |
181 | ui: tinydns-get allows type names. | |
182 | ui: tinydns-data prints query name for >512 error. tnx Uwe Ohse. | |
183 | version: DNScache 0.82, beta. | |
184 | 20000212 | |
185 | ui: dns_transmit starts with loop 1 for recursive queries. | |
186 | ui: dnscache tries to allocate 128K of incoming UDP buffer | |
187 | space. tnx Jeremy Hansen. | |
188 | 20000213 | |
189 | ui: tinydns tries to allocate 64K of incoming UDP buffer space. | |
190 | internal: renamed response_*answer as response_r*. | |
191 | internal: expanded response_rfinish to allow au and ar. | |
192 | internal: expanded response_rstart to allow any ttl. | |
193 | internal: rewrote tinydns-data, tinydns, tinydns-get, axfrdns | |
194 | for compact new data.cdb format. a few ui effects: empty | |
195 | nodes produce NXDOMAIN; wildcards affect empty nodes. | |
196 | ui: response_addname() tries more extensive compression. | |
197 | 20000215 | |
198 | ui: tinydns-edit takes fn arguments. tnx Jason R. Mastaler. | |
199 | 20000218 | |
200 | internal: upgraded to new cdb library. | |
201 | internal: added globalip(). | |
202 | ui: dnscache assigns IP addresses to dotted-decimal domain | |
203 | names in canonical form. | |
204 | internal: merged handling of C and ^ in tinydns-data. | |
205 | port: FreeBSD 3.4-RELEASE poll() doesn't think that regular | |
206 | files are readable. impact: under FreeBSD 3.4-RELEASE, | |
207 | dnsfilter hangs waiting to read from regular files. tnx | |
208 | Kenji Rikitake. fix: check for this bug in trypoll.c. | |
209 | 20000219 | |
210 | ui: tinydns-data supports time-to-die. | |
211 | ui: changed home directory from /usr/local/dnscache to | |
212 | /usr/local; moved @ from home/etc to home/etc/dnscache. | |
213 | internal: reorganized response.c. | |
214 | 20000220 | |
215 | ui: tinydns-data allows omitted numeric fields in Z lines. tnx | |
216 | Timothy L. Mayo. | |
217 | version: DNScache 0.85, beta. | |
218 | 20000222 | |
219 | ui: dns_transmit_get() pauses after server failure, if udploop | |
220 | is 2. | |
221 | internal: sped up name handling in response.c. | |
222 | 20000223 | |
223 | ui: dnscache ignores some garbage in queries: AA, !RD, RA, Z, | |
224 | RCODE, AN, AU, AR. (note that responses still say RD.) | |
225 | this allows bogus queries from Ultrix versions of BIND. | |
226 | internal: split dd.c out of query.c. | |
227 | internal: split server.c out of tinydns. | |
228 | internal: rewrote walldns, pickdns, rbldns to use server.c. | |
229 | ui: server.c allows some garbage in queries: RA, Z, RCODE, AN, | |
230 | AU, AR. | |
231 | ui: axfrdns logs packets. | |
232 | ui: walldns supports dotted-decimal IP addresses. | |
233 | 20000224 | |
234 | ui: revamped qlog, again. | |
235 | ui: better error message in dnscache-conf.c. tnx Chris Johnson. | |
236 | 20000225 | |
237 | version: DNScache 0.90, gamma. | |
238 | 20000226 | |
239 | internal: dnscache-conf sets up dnscache/run to avoid env. tnx | |
240 | Chris Cappuccio. | |
241 | 20000227 | |
242 | ui: tinydns-data uses server name instead of a.ns.domain for | |
243 | automatic primary in SOA. tnx Frank Tegtmeyer. | |
244 | 20000228 | |
245 | bug: axfrdns doesn't set aa bit in responses. impact: named-xfer | |
246 | refuses to do zone transfers from axfrdns. fix: set aa | |
247 | bit. tnx Peter Hunter. | |
248 | ui: server.c now accepts packets from low ports. sigh. | |
249 | 20000229 | |
250 | version: DNScache 0.91, gamma. | |
251 | 20000307 | |
252 | internal: switched from slurp to openreadclose. | |
253 | 20000308 | |
254 | ui: dns_transmit_get() pauses after recv() failure (such as | |
255 | connection-refused), if udploop is 2. | |
256 | ui: tinydns-data uses refresh 16384, retry 2048, expire 1048576. | |
257 | tnx Frank Tegtmeyer. | |
258 | version: DNScache 0.92, gamma. | |
259 | 20000314 | |
260 | portability problem: the poll() emulation in RedHat 5.1 doesn't | |
261 | clear revents when select() returns 0. tnx Petr Novotny. | |
262 | impact: dns_transmit_get() never times out; | |
263 | dns_resolve() busy-loops. fix: clear revents before | |
264 | poll(). | |
265 | 20000315 | |
266 | ui: axfr-get grabs zones when serials drop. tnx Frank Tegtmeyer. | |
267 | version: DNScache 0.93, gamma. | |
268 | 20000323 | |
269 | ui: dns_rcip() accepts 0.0.0.0 in /etc/resolv.conf as 127.0.0.1. | |
270 | tnx Chris Saia. | |
271 | 20000325 | |
272 | version: DNScache 1.00. | |
273 | 20000914 | |
274 | ui: axfr-get decodes PTR. tnx to various people. | |
275 | ui: added dnsqr. | |
276 | 20000915 | |
277 | portability problem: on some buggy kernels, accept() fails to | |
278 | copy O_NONBLOCK. tnx Pavel Kankovsky. impact: with these | |
279 | kernels, dnscache hangs if a TCP connection times out. | |
280 | fix: ndelay_on() after accept(). | |
281 | ui: dnscache discards non-recursive queries. | |
282 | ui: *-conf use envdir in */run. | |
283 | internal: reorganized seed_addtime() calls in dnscache-conf. | |
284 | ui: tinydns-data prohibits PTR in generic records. | |
285 | 20000917 | |
286 | ui: dns_transmit_get() does not pause after most recv() errors. | |
287 | still pauses after connection-refused when udploop is 2. | |
288 | version: djbdns 1.01. | |
289 | 20000922 | |
290 | portability problem: Linux distributions use bash as /bin/sh; | |
291 | bash destroys $UID. dorks. impact: dnscache and axfrdns | |
292 | run as root. fix: envdir, then sh, then envuidgid. but | |
293 | /bin/sh really has to stop polluting the environment. | |
294 | 20000923 | |
295 | ui: install /etc/dnsroots.global. dnscache-conf tries | |
296 | dnsroots.local, then dnsroots.global. | |
297 | ui: no longer install home/etc/dnscache. | |
298 | version: djbdns 1.02. | |
299 | 20001224 | |
300 | ui: new dnstrace output format. | |
301 | ui: dnstrace shows all servers providing each ns/a line. | |
302 | ui: added dnstracesort. | |
303 | 20001225 | |
304 | internal: response_rstart() and response_cname() use uint32 ttl. | |
305 | internal: added response_hidettl(). | |
306 | internal: cache_get() returns ttl. | |
307 | internal: dnscache keeps track of ttls for aliases. | |
308 | ui: dnscache returns ttl unless $HIDETTL is set. | |
309 | ui: dnscache returns ttl 655360 for localhost et al. | |
310 | 20001226 | |
311 | ui: dnscache supports $FORWARDONLY. tnx to several people for | |
312 | the suggestion. tnx Dan Peterson for sample code. | |
313 | ui: dnscache now logs sequential query numbers, not indices. | |
314 | internal: revamped dnscache to separate udp from tcp. | |
315 | ui: dnscache reports uactive, tactive separately. | |
316 | ui: dnscache reports tcpopen/tcpclose by port and ip. | |
317 | ui: dnscache artificially times out oldest UDP query if UDP | |
318 | table is full, and oldest TCP connection if TCP table is | |
319 | full. | |
320 | ui: dnscache reports broken pipe when a TCP client sends FIN. | |
321 | 20001228 | |
322 | ui: dnstrace supports dd. | |
323 | ui: dnscache logs stats when it handles 1.0.0.127.in-addr.arpa. | |
324 | ui: pickdns actively refuses queries for unknown types. | |
325 | ui: pickdns responds to MX queries. tnx Mike Batchelor. | |
326 | internal: added const at various places. | |
327 | internal: removed some unused variables. | |
328 | internal: used time_t in tai_now.c. | |
329 | internal: used stdlib.h in alloc.c. | |
330 | api: split dns_domain_suffix() into suffix(), suffixpos(). | |
331 | internal: switched to buffer_unix*. | |
332 | internal: included unistd.h for various declarations. | |
333 | 20010103 | |
334 | ui: increased maximum data size from 512 bytes to 32767 bytes in | |
335 | tinydns, tinydns-get, axfrdns. allows big TXT records. | |
336 | ui: dnsmx reformats name when it prints an artificial 0 MX. | |
337 | 20010105 | |
338 | ui: increased MAXLEVEL to 5. the Internet is becoming more | |
339 | glueless every day. | |
340 | 20010106 | |
341 | version: djbdns 1.03. | |
342 | 20010113 | |
343 | ui: increased MAXALIAS to 16. | |
344 | ui: dnscache no longer caches SERVFAIL. per-ip is obviously the | |
345 | way to go. | |
346 | ui: tinydns et al. now respond FORMERR to non-Internet-class | |
347 | queries. | |
348 | ui: tdlookup now returns A records in a random order in the | |
349 | answer section, and truncates the list after 8 records. | |
350 | ui: tinydns-data skips lines starting -. | |
351 | 20010114 | |
352 | internal: documented the tinydns data.cdb format. | |
353 | ui: tinydns-data, tinydns, tinydns-get, axfrdns support client | |
354 | differentiation. | |
355 | ui: dnsqr aborts if it is given an extra argument. | |
356 | 20010117 | |
357 | ui: dnstracesort removes duplicate lines. | |
358 | ui: dnstracesort prints glue. | |
359 | ui: dnstrace uses a ``start'' IP address for the root glue. | |
360 | 20010121 | |
361 | version: djbdns 1.04. | |
362 | 20010206 | |
363 | internal: response_query() takes a class argument. | |
364 | internal: query_start() takes a class argument. | |
365 | internal: packetquery() takes a class argument. | |
366 | ui: tinydns et al., axfrdns, and dnscache repeat qclass * in | |
367 | response to bogus * queries. tnx Mike Batchelor. | |
368 | ui: axfrdns rejects queries for weird classes. | |
369 | ui: axfrdns uses query ID instead of ID 0 in the series of AXFR | |
370 | response messages between the SOAs, to support the AXFR | |
371 | client in BIND 9. | |
372 | ui: axfrdns sets AA in the series of AXFR response messages. | |
373 | 20010211 | |
374 | ui: servers print starting message. | |
375 | internal: some respond() declarations. | |
376 | version: djbdns 1.05. |