]> git.ipfire.org Git - thirdparty/dhcp.git/blame - RELNOTES
Add to main branch.
[thirdparty/dhcp.git] / RELNOTES
CommitLineData
da411127 1 Internet Software Consortium DHCP Distribution
0596b051
TL
2 Version 3, Release Candidate 4
3 April 30, 2001
72c7bd79
TL
4
5 Release Notes
6
74f45f96
TL
7This is a development snapshot of Version 3 of the Internet Software
8Consortium DHCP Distribution.
72c7bd79 9
da411127 10 NEW FEATURES
16449d9c 11
6d779c72
TL
12Version 3 of the ISC DHCP Distribution includes the following features
13that are new since version 2.0:
29d5553a 14
da411127
TL
15 - DHCP Failover Protocol support
16 - OMAPI, an API for accessing and modifying the DHCP server and
17 client state.
18 - Conditional behaviour
19 - Storing arbitrary information on leases
20 - Address pools with access control
21 - Client classing
22 - Address allocation restriction by class
23 - Relay agent information option support
24 - Dynamic DNS updates
25 - Many bug fixes, performance enhancements, and minor new DHCP
26 protocol features.
72c7bd79 27
6d779c72
TL
28This release has been beta tested quite thorougly, and we think it is
29substantially more robust at this time than 2.0pl5. The release
30candidate is expected to be free of serious bugs, but it's called a
31release candidate because we want people to try it and find any last
32real problems before we call it done. We do not expect to add
33anything other than documentation and any remaining bug fixes to the
343.0 release.
35
36The 3.0 Release Candidate 1 lease file is not backwards compatible
f67f6c4a
TL
37with the 3.0 Beta 1 lease file, so if you have to go back, you will
38have to convert your lease files back to the 3.0 Beta 1 format - if
87784777 39you try to run a 3.0 Beta 1 server on a 3.0 lease file, it will
6d779c72
TL
40cheerfully delete all your leases.
41
42If you are running 3.0 beta 1 and are doing dynamic DNS updates, the
43lease file is no longer forward-compatible to 3.0 final. A script
44has been provided to convert 3.0b1 lease files. This is in
45contrib/3.0b1-lease-convert.
4ff4053b 46
ca4606b5
TL
47For information on how to install, configure and run this software,
48as well as how to find documentation and report bugs, please consult
49the README file.
50
da411127
TL
51The Dynamic DNS Update support is a descendent of an implementation
52done by Lans Carstensen and Brian Dols at Rose-Hulman Institute of
de57e64b
TL
53Technology, Jim Watt at Applied Biosystems, Irina Goble at Integrated
54Measurement Systems, Igor Sharfmesser at Kazakh Telecom, and Brian
55Murrell at BC Tel Advanced Communications. I'd like to express my
56thanks to all of these good people here, both for working on the code
57and for prodding me into improving it.
58
d758ad8c
TL
59 Changes since 3.0 Release Candidate 8 Patchlevel 1
60
61- Fix a parsing bug that broke dns updates (both interim and ad-hoc).
62 This was introduced in rc8pl1 as an unintended result of the memory
63 leakage fixes that were in pl1.
64
65- Fix a long-standing bug where the server would record that an update
66 had been done for a client with no name, even though no update had
67 been done, and then when the client's lease expired the deletion of
68 that nonexistant record would time out because the name was the null
69 string.
70
71- Clean up the omshell, dhcpctl and omapi man pages a bit.
72
73
74 Changes since 3.0 Release Candidate 8
75
76- Fix a bug that could cause the DHCP server to spin if
77 one-lease-per-client was enabled.
78
79- Fix a bug that was causing core dumps on BSD/os in the presence of
80 malformed packets.
81
82- In partner-down state, don't restrict lease lengths to MCLT.
83
84- On the failover secondary, record the MCLT received from the primary
85 so that if we come up without a connection to the primary we don't
86 wind up giving out zero-length leases.
87
88- Fix some compilation problems on BSD/os.
89
90- Fix a bunch of memory leaks.
91
92- Fix a couple of bugs in the option printer.
93
94- Fix an obscure error reporting bug in the dns update code, and also
95 make the message clearer when a key algorithm isn't supported.
96
97- Fix a bug in the tracing code that prevented trace runs that used
98 tcp connections from being played back.
99
100- Add some additional debugging capability for catching memory leaks
101 on exit.
102
103- Make the client release the lease correctly on shutdown.
104
105- Add some configurability to the build system.
106
107- Install omshell manual page in man1, not man8.
108
109- Craig Gwydir sent in a patch that fixes a long-standing bug in the
110 DHCP client that could cause core dumps, but that for some reason
111 hadn't been noticed until now.
112
113 Changes since 3.0 Release Candidate 7
114
115- Fix a bug in failover where we weren't sending updates after a
116 transition from communications-interrupted to normal.
117
118- Handle expired/released/reset -> free transition according to the
119 protocol specification (this works - the other way not only wasn't
120 conformant, but also didn't work).
121
122- Add a control object in both client and server that allows either
123 daemon to be shut down cleanly.
124
125- When writing a lease, if we run out of disk space, shut down the
126 output file and insist on writing a new one before proceeding.
127
128- In the server, if the OMAPI listener port is occupied, keep trying
129 to get it, rather than simply giving up and exiting.
130
131- Support fetching variables from leases and also updating and adding
132 variables to leases via OMAPI.
133
134- If two failover peers have wildly different clocks, refuse to start
135 doing failover.
136
137- Fix a bug in the DNS update code that could cause core dumps when
138 running on alpha processors.
139
140- Fixed a bug in ddns updates for static lease entries, thanks to a
141 patch from Andrey M Linkevitch.
142
143- Add support for Darwin/MacOS X
144
145- Install omshell (including new documentation).
146
147- Support DNS updates in the client (this is a very obscure feature
148 that most DHCP client users probably will not be able to use).
149
150- Somewhat cleaner status logging in the client.
151
152- Make OMAPI key naming syntax compatible with the way keys are
153 actually named (key names are domain names).
154
155- Fix a bug in the lease file writer.
156
157- Install DHCP ISC headers in a different place than BIND 9 ISC
158 headers, to avoid causing trouble in BIND 9 builds.
159
160- Don't send updates for attributes on an object when the attributes
161 haven't changed. Support deleting attributes on remote objects.
162
163- Fix a number of bugs in omshell, and add the unset and refresh
164 statements.
165
166- Handle disconnects in OMAPI a little bit more intelligently (so that
167 the caller gets ECONNRESET instead of EINVAL).
168
169- Fix a bunch of bugs in the handling of clients that have existing
170 leases when the try to renew their leases while failover is
171 operating.
172
0596b051
TL
173 Changes since 3.0 Release Candidate 3
174
175- Do lease billing on startup in a way that I *think* will finally do
176 the billing correctly - the previous method could overbill as a
177 result of duplicate leases.
178
179- Document OMAPI server objects.
180
892fe689
TL
181 Changes since 3.0 Release Candidate 2 Patchlevel 1
182
183- Fix some problems in the DDNS update code. Thanks to Albert
184 Herranz for figuring out the main problem.
185
186- Fix some reference counting errors on host entries that were causing
187 core dumps.
188
189- Fix a byte-swap bug in the token ring code, thanks to Jochen
190 Friedrich.
191
192- Fix a bug in lease billing, thanks to Jonas Bulow.
193
194 Changes since 3.0 Release Candidate 2
195
196- Change the conditions under which a DHCPRELEASE is actually
197 committed to be consistent with lease binding states rather than
198 using the lease end time. THis may fix some problems with the
199 billing class code.
200
201- Fix a bug where lease updates would fail on Digital Unix (and maybe
202 others) because malloc was called with a size of zero.
203
204- Fix a core dump that happens when the DHCP server can't create its
205 trace file.
206
79ea3de8 207 Changes since 3.0 Release Candidate 1 Patchlevel 1
87784777 208
79ea3de8
TL
209- Fix the dhcp_failover_put_message to not attempt to allocate a
210 zero-length buffer. Some versions of malloc() fail if you try to
211 allocate a zero-length buffer, and this was causing problems on,
212 e.g., Digital Unix.
213
214- Fix a case where the failover code was printing an error message
215 when no error had occurred.
216
217- Fix a problem where when a server went down and back up again, the
218 peer would not see a state transition and so would stay in the
219 non-communicating state.
220
221- Be smart about going into recover_wait.
222
223- Fix a problem in the failover implementation where peers would fail
224 to come into sync if interrupted in the RECOVER state. This could
225 have been the cause of some problems people have reported recently.
226
227- Fix a problem with billing classes where they would not be unbilled
228 when the client lease expired.
229
230- If select fails, figure out which descriptor is bad, and cut it out
231 of the I/O loop. This prevents a potentially nasty spin. I
232 haven't heard any report it in a while, but it came up consistently
233 in testing.
234
235- Fix a bug in the relay agent where if you specified interfaces on
236 the command line, it would fail.
237
238- Fix a couple of small bugs in the omapi connection object (no known
239 user impact).
240
241- Add the missing 3.0 Beta 1 lease conversion script.
242
243- Read dhcp client script hooks if they exist, rather than only if
244 they're executable.
245
246 Changes since 3.0 Release Candidate 1
87784777
TL
247
248- Fix a memory smash that happens when fixed-address leases are used.
249 ANY SITE AT WHICH FIXED-ADDRESS STATEMENTS ARE BEING USED SHOULD
250 UPGRADE IMMEDIATELY. This has been a long-standing bug - thanks to
251 Alvise Nobile for discovering it and helping me to find it!
252
79ea3de8
TL
253- Fix a small bug in binary-to-ascii, thanks to H. Peter Anvin of
254 Transmeta.
255
87784777
TL
256- There is a known problem with the DHCP server doing failover on
257 Compaq Alpha systems. This patchlevel is not a release candidate
258 because of this bug. The bug should be straightforward to fix, so
259 a new release candidate is expected shortly.
260
261- There is a known problem in the DDNS update code that is probably a
262 bug, and is not, as far as we know, fixed in this patchlevel.
263
6d779c72
TL
264 Changes since 3.0 Beta 2 Patchlevel 24
265
266- Went over problematic failover state transitions and made them all
267 work, so that failover should now much less fragile.
268
269- Add some dhcpctl and omapi documentation
270
271- Fix compile errors when compiling with unusual predefines.
272
273- Make Token Ring work on Linux 2.4
274
275- Fix the Digital Unix BPF_WORDALIGN bug.
276
277- Fix some dhcp client documentation errors.
278
279- Update some parts of the README file.
280
281- Support GCC on SCO.
282
de57e64b
TL
283 Changes since 3.0 Beta 2 Patchlevel 23
284
285- Fix a bug in the DNS update code where a status code was not being
286 checked. This may have been causing core dumps.
287
288- When parsing the lease file, if a lease declaration includes a
289 billing class statement, and the lease already has a billing class,
290 unbill the old class.
291
292- When processing failover transactions, where acks will be deferred,
293 process the state transition immediately.
294
295- Don't try to use the new SIOCGIFCONF buffer size detection code on
296 Linux 2.0, which doesn't provide this functionality.
297
298- Apply a patch suggested by Tuan Uong for a problem in dlpi.c.
299
300- Fix a problem in using the which command in the configure script.
301
302- Fix a parse error in the client when setting up an omapi listener.
303
304- Document the -n and -g flags to the client.
305
306- Make sure there is always a stdin and stdout on startup. This
307 prevents shell scripts from accidentally writing error messages into
308 configuration files that happen to be opened as stderr.
309
310- If an interface is removed, the client will now notice that it is
311 gone rather than spinning. This has only been tested on NetBSD.
312
313- The client will attempt to get an address even if it can't create a
314 lease file.
315
316- Don't overwrite tracefiles.
317
318- Fix some memory allocation bugs in failover.
2aa36519 319
140158d3
TL
320 Changes since 3.0 Beta 2 Patchlevel 22
321
322- Apply some patches suggested by Cyrille Lefevre, who is maintaining
323 the FreeBSD ISC DHCP Distribution port.
324
325- Fix a core dump in DHCPRELEASE.
326
3a395e60
TL
327 Changes since 3.0 Beta 2 Patchlevel 21
328
329- This time for sure: fix the spin described in the changes for pl20.
330
fc74dd0c
TL
331 Changes since 3.0 Beta 2 Patchlevel 20
332
333- Fix a problem with Linux detecting large numbers of interfaces (Ben)
334
335- Fix a memory smash in the quotify code, which was introduced in
336 pl19.
337
338- Actually fix the spin described in the changes for pl20. The
339 previous fix only partially fixed the problem - enough to get it
340 past the regression test.
341
ed5ee591
TL
342 Changes since 3.0 Beta 2 Patchlevel 19
343
344- Fix a bug that could cause the server to abort if compiled with
345 POINTER_DEBUG enabled.
346
347- Fix a bug that could cause the server to spin when responding to a
348 DHCPREQUEST.
349
350- Apply Joost Mulders' suggested patches for DLPI on x86.
351
352- Support NUL characters in quoted strings.
353
354- Install unformatted man pages on SunOS.
355
b3fad8ac
TL
356 Changes since 3.0 Beta 2 Patchlevel 18
357
3350f5b7
TL
358- Allow the server to be placed in partner-down state using OMAPI.
359 (Damien Neil)
360
361- Implement omshell, which can be used to do arbitrary things to the
362 server (in theory). (Damien Neil)
363
364- Fix a case where if a client had two different leases the server could
365 actually dereference the second one when it hadn't been referenced,
366 leading to memory corruption and a core dump. (James Brister)
367
368- Fix a case where a client could request the address of another client's
369 lease, but find_lease wouldn't detect that the other client had it, and
370 would attempt to allocate it to the client, resulting in a lease conflict
371 message.
372
373- Fix a case where a client with more than one client identifier could be
374 given a lease where the hardware address was correct but the client
375 identifier was not, resulting in a lease conflict message.
376
377- Fix a problem where the server could write out a colon-seperated
378 hex list as a value for a variable, which would then not parse.
379 The fix is to always write strings as quoted strings, with any
380 non-printable characters quoted as octal escape sequences. So
381 a file written the old way still won't work, but new files written
382 this way will work.
383
b3fad8ac
TL
384- Fix documentation for sending non-standard options.
385
386- Use unparsable names for unknown options. WARNING: this will
387 break any configuration files that use the option-nnn convention.
388 If you want to continue to use this convention for some options,
389 please be sure to write a definition, like this:
390
391 option option-nnn code nnn = string;
392
393 You can use a descriptive name instead of option-nnn if you like.
394
395- Fix a problem where we would see a DHCPDISCOVER/DHCPOFFER/
396 DHCPREQUEST/DHCPACK/DHCPREQUEST/DHCPNAK sequence. This was the
397 result of a deceptively silly bug in supersede_lease.
398
399- Fix client script exit status check, according to a fix supplied by
400 Hermann Lauer.
401
402- Fix an endianness bug in the tracefile support, regarding ICMP
403 messages.
404
3350f5b7
TL
405- Fix a bug in the client where the medium would not work correctly if
406 it contained quoted strings.
407
b3fad8ac
TL
408 ** there was no pl17 **
409
e6d30fd6
TL
410 Changes since 3.0 Beta 2 Patchlevel 16
411
6da9db9d
TL
412- Add support for transaction tracing. This allows the state of the
413 DHCP server on startup, and all the subsequent transactions, to be
414 recorded in a file which can then be played back to reproduce the
415 behaviour of the DHCP server. This can be used to quickly
416 reproduce bugs that cause core dumps or corruption, and also for
417 tracking down memory leaks.
418
419- Incorporate some bug fixes provided by Joost Mulders for the DLPI
420 package which should clear up problems people have been seeing on
421 Solaris.
422
423- Fix bugs in the handling of options stored as linked lists (agent
424 options, fqdn options and nwip options) that could cause memory
425 corruption and core dumps.
426
427- Fix a bug in DHCPREQUEST handling that resulted in DHCPNAK messages
428 not being send in some cases when they were needed.
429
430- Make the lease structure somewhat more compact.
431
432- Make initial failover startup *much* faster. This was researched
433 and implemented by Damien Neil.
434
435- Add a --version flag to all executables, which prints the program
436 name and version to standard output.
437
438- Don't rewrite the lease file every thousand leases.
439
e6d30fd6
TL
440- A bug in nit.c for older SunOS machines was fixed by a patch sent in
441 by Takeshi Hagiwara.
442
6da9db9d
TL
443- Fix a memory corruption bug in the DHCP client.
444
445- Lots of documentation updates.
446
447- Add a feature allowing environment variables to be passed to the
448 DHCP client script on the DHCP client command line.
449
450- Fix client medium support, which had been broken for some time.
451
452- Fix a bug in the DHCP client initial startup backoff interval, which
453 would cause two DHCPDISCOVERS to be sent back-to-back on startup.
454
455
af49fdff
TL
456 Changes since 3.0 Beta 2 Patchlevel 15
457
458- Some documentation tweaks.
459
460- Maybe fix a problem in the DLPI code.
461
462- Fix some error code space inconsistencies in ddns update code.
463
464- Support relay agents that intercept unicast DHCP messages to stuff
465 agent options into them.
466
467- Fix a small memory leak in the relay agent option support code.
468
c5b569f8
TL
469- Fix a core dump that would occur if a packet was sent with no
470 options.
471
754ae3e9
TL
472 Changes since 3.0 Beta 2 Patchlevel 14
473
474- Finish fixing a long-standing bug in the agent options code. This
475 was causing core dumps and failing to operate correctly - in
476 particular, agent option stashing wasn't working. Agent option
477 stashing should now be working, meaning that agent options can be
478 used in class statements to control address allocation.
479
480- Fix up documentation.
481
482- Fix a couple of small memory leaks that would have added up
483 significantly in a high-demand situation.
484
485- Add a log-facility configuration parameter.
486
487- Fix a compile error on some older operating systems.
488
489- Add the ability in the client to execute certain statements before
490 transmitting packets to the server. Handy for debugging; not much
491 practical use otherwise.
492
493- Don't send faked-out giaddr when renewing or bound - again, useful
494 for debugging.
495
2f2e7960
TL
496 Changes since 3.0 Beta 2 Patchlevel 13
497
498- Fixed a problem where the fqdn decoder would sometimes try to store
499 an option with an (unsigned) negative length, resulting in a core
500 dump on some systems.
501
502- Work around the Win98 DHCP client, which NUL-terminates the FQDN
503 option.
504
505- Work around Win98 and Win2k clients that will claim they want to do
506 the update even when they don't have any way to do it.
507
508- Fix some log messages that can be printed when failover is operating
509 that were not printing enough information.
510
511- It was possible for a DHCPDISCOVER to get an allocation even when
512 the state machine said the server shouldn't be responding.
513
514- Don't load balance DHCPREQUESTs from clients in RENEWING and
515 REBINDING, since in RENEWING, if we heard it, it's for us, and in
516 REBINDING, the client wouldn't have got to REBINDING if its primary
517 were answering.
518
519- When we get a bogus state lease binding state transition, don't do
520 the transition.
521
522
66e98927
TL
523 Changes since 3.0 Beta 2 Patchlevel 12
524
525- Fixed a couple of silly compile errors.
526
a1e2e3d6
TL
527 Changes since 3.0 Beta 2 Patchlevel 11
528
529- Albert Herranz tracked down and fixed a subtle bug in the base64
530 decoder that would prevent any key with an 'x' in its base64
531 representation from working correctly.
532
533- Thanks to Chris Cheney and Michael Sanders, we have a fix for the
534 hang that they both spotted in the DHCP server - when
535 one-lease-per-client was set, the code to release the "other" lease
536 could spin.
537
538- Fix a problem with alignment of the input buffer in bpf in cases
539 where two packets arrive in the same bpf read.
540
541- Fix a problem where the relay agent would crash if you specified an
542 interface name on the command line.
543
544- Add the ability to conditionalize client behaviour based on the
545 client state.
546
547- Add support for the FQDN option, and added support for a new way of
548 doing ddns updates (ddns update style interim) that allows more than
549 one DHCP server to update the DNS for the same network(s). This
550 was implemented by Damien Neil with some additional functionality
551 added by Ted Lemon.
552
553- Damien added a "log" statement, so that the configuration file can
554 be made to log debugging information and other information.
555
556- Fixed a bug that caused option buffers not to be terminated with an
557 end option.
558
559- Fixed a long-standing bug in the support for option spaces where the
560 options are stored as an ordered list rather than in a hash table,
561 which could theoretically result in memory pool corruption.
562
563- Prevent hardware declarations with no actual hardware address from
564 being written as something unparsable, and behave correctly in the
565 face of a null hardware address on input.
566
567- Allow key names to be FQDNs, and qualify the algorithm name if it is
568 specified unqualified.
569
570- Modify the DDNS update code so that it never prints the "resolver
571 failed" message, but instead says *why* the resolver failed.
572
573- Officially support the subnet selection option, which now has an
574 RFC.
575
576- Fix a build bug on MacOS X.
577
578- Allow administrator to disable ping checking.
579
580- Clean up dhcpd.conf documentation and add more information about how
581 it works.
582
6c68ec36
TL
583 Changes since 3.0 Beta 2 Patchlevel 10
584
585- Fix a bug introduced during debugging (!) and accidentally committed
586 to CVS.
587
9fd337e7
TL
588 Changes since 3.0 Beta 2 Patchlevel 9
589
590- Fix DHCP client handling of vendor encapsulated options.
591
592- Fix a bug in the handling of relay agent information options introduced
593 in patchlevel 9.
594
595- Stash agent options on client leases by default, and use the stashed
596 options at renewal time.
597
598- Add the ability to test the client's binding state in the client
599 configuration language.
600
601- Fix a core dump in the DNS update code.
602
603- Fix some expression evaluation bugs that were causing updates to be
604 done when no client hostname was received.
605
606- Fix expression evaluation debugging printfs.
607
608- Teach pretty_print_option to print options in option spaces other than
609 the DHCP option space.
610
611- Add a warning message if the RHS of a not is not boolean.
612
613- Never select for more than a day, because some implementations of
614 select will just fail if the timeout is too long (!).
615
616- Fix a case where a DHCPDISCOVER from an unknown network would be
617 silently dropped.
618
619- Fix a bug where if a client requested an IP address for which a different
620 client had the lease, the DHCP server would reallocate it anyway.
621
622- Fix the DNS update code so that if the client changes its name, the DNS
623 will be correctly updated.
624
3922772a
TL
625 Changes since 3.0 Beta 2 Patchlevel 8
626
627- Oops, there was another subtle math error in the header-length
628 bounds-checking.
629
630 Changes since 3.0 Beta 2 Patchlevel 7
848c2547
TL
631
632- Oops, forgot to byte-swap udp header length before bounds-checking it.
633
3922772a 634 Changes since 3.0 Beta 2 Patchlevel 6
0f6045f8 635
f8572308
TL
636- Fix a possible DoS attack where a client could cause the checksummer
637 to dump core. This was a read, not a write, so it shouldn't be
638 possible to exploit it any further than that.
639
640- Implement client- and server-side support for using the Client FQDN
641 option.
642
643- Support for other option spaces in the client has been added. This
644 means that it is now possible to define a vendor option space on the
645 client, request options in that space from the server (which must
646 define the same option space), and then use those options in the
647 client. This also allows NWIP and Client FQDN options to be used
648 meaningfully.
649
650- Add object initializer support. This means that objects can now be
651 initialized to something other than all-zeros when allocated, which
652 makes, e.g., the interface object support code a little more robust.
653
654- Fix an off-by-one bug in the host stuffer. This was causing host
655 deletes not the work, and may also have been causing OMAPI
656 connections to get dropped. Thanks to James Brister for tracking
657 this one down!
658
659- Fixed a core dump in the interface discovery code that is triggered
660 when there is no subnet declaration for an interface, but the server
661 decides to continue running. Thanks to Shane Kerr for tracking
662 down and fixing this problem.
663
664 Changes since 3.0 Beta 2 Patchlevel 5
665
0f6045f8
TL
666- Fix a bug in the recent enhancement to the interface discovery code
667 to support arbitrary-length interface lists.
668
669- Support NUL-terminated DHCP options when initializing client-script
670 environment.
671
672- Fix suffix operator.
673
674- Fix NetWare/IP option parsing.
675
676- Better error/status checking in dhcpctl initialization and omapi
677 connection code.
678
679- Fix a potential memory smash in dhcpctl code.
680
681- Fix SunOS4 and (maybe) Ultrix builds.
682
683- Fix a bug where a certain sort of incoming packet could cause a core
684 dump on Solaris (and probably elsewhere).
685
686- Add some more safety checks in error logging code.
687
688- Add support for ISC_R_INCOMPLETE in OMAPI protocol connection code.
689
690- Fix relay agent so that if an interface is specified on the command
691 line, the relay agent does not dump core.
692
693- Fix class matching so that match if can be combined with match or
694 spawn with.
695
696- Do not allow spurious leases in the lease database to introduce
697 potentially bogus leases into the in-memory database.
698
699- Fix a byte-order problem in the client hardware address type code
700 for OMAPI.
701
702- Be slightly less picky about what sort of hardware addresses OMAPI
703 can install in host declarations.
704
801de092
TL
705 Changes since 3.0 Beta 2 Patchlevel 4
706
707- Incorporated Peter Marschall's proposed change to array/record
708 parsing, which allows things like the slp-agent option to be encoded
709 correctly. Thanks very much to Peter for taking the initiative to
710 do this, and for doing such a careful job of it (e.g., updating the
711 comments)!
712
713- Added an encoding for the slp-agent option. :')
714
6ed7a93d
TL
715- Fixed SunOS 4 build. Thanks to Robert Elz for responding to my
716 request for help on this with patches!
717
718- Incorporated a change that should fix a problem reported by Philippe
719 Jumelle where when the network connection between two servers is
720 lost, they never reconnect.
721
722- Fix client script files other than that for NetBSD to actually use
723 make_resolv_conf as documented in the manual page.
724
725- Fix a bug in the packet handling code that could result in a core
726 dump.
727
728- Fix a bug in the bootp code where responses on the local net would
729 be sent to the wrong MAC address. Thanks to Jerry Schave for
730 catching this one.
731
490eb5e7
TL
732 Changes since 3.0 Beta 2 Patchlevel 3
733
734- In the DHCP client, execute client statements prior to using the values
735 of options, so that the client configuration can overried, e.g., the
736 lease renewal time.
737
738- Fix a reference counting error that would result in very reproducible
739 failures in updates, as well as occasional core dumps, if a zone was
740 declared without a key.
741
742- Fix some Linux 2.0 compilation problems.
743
744- Fix a bug in scope evaluation during execution of "on" statements that
745 caused values not to be recorded on leases.
746
747- If the dhcp-max-message-size option is specified in scope, and the
748 client didn't send this option, use the one specified in scope to
749 determine the maximum size of the response.
750
592d8153
TL
751 Changes since 3.0 Beta 2 Patchlevel 2
752
359b023e
TL
753- Fix a case where spawning subclasses were being allocated
754 incorrectly, resulting in a core dump.
755
592d8153
TL
756- Fix a case where the DHCP server might inappropriately NAK a
757 RENEWING client.
758
759- Fix a place dhcprequest() where static leases could leak.
760
761- Include memory.h in omapip_p.h so that we don't get warnings about
762 using memcmp().
763
2aa36519
TL
764 Changes since 3.0 Beta 2 Patchlevel 1
765
766- Notice when SIOCFIGCONF returns more data than fit in the buffer -
767 allocate a larger buffer, and retry. Thanks to Greg Fausak for
768 pointing this out.
769
770- In the server, if no interfaces were configured, report an error and
771 exit.
772
773- Don't ever record a state of 'startup'.
774
775- Don't try to evaluate the local failover binding address if none was
776 specified. Thanks to Joseph Breu for finding this.