-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathChangeLog
9462 lines (7901 loc) · 381 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
Kea 1.5.0 released on Dec 14, 2018
1506. [build] marcin
Bumped up libraries version numbers for Kea 1.5.0 final release.
(Gitlab #338,!168, git 551c5d704804d0ab2ea276e95dbae66b9d0f5561)
1505. [bug] marcin
Corrected an issue in the lease_cmds hooks library which caused
errors while adding leases with high lease expiration time value
to the database. Many thanks to Shawn Routhier from Infoblox for
finding and reporting the issue.
(Gitlab #337,!167, git 3fcdc28814310ac93b3903897e952b3b60cfa0bc)
1504. [bug] fdupont
Created separate control buffers for reception and transmission
over UDP sockets.
(Gitlab #327,!166, git cbb573858d7b1a4d2ba2316db457aa55ab037fc3)
1503. [doc] fdupont, marcin
Updated "JSON Configuration" section of the Kea User's Guide.
(Gitlab #198,!160, git 94c66b3c071d7bbf4b247bf57cd75ddcc343177e)
1502. [bug] fdupont
Unicode parser for JSON structures has been improved. It now
handles escape sequences better.
(Gitlab #45,!40, git ba9b18cf2af66f8fb80e3dbbe13da11c99764588)
1501. [func] fdupont
keactrl now supports kea-netconf. The new daemon is disabled by
default. Please edit keactrl.conf (netconf=yes) if you want to
start using it.
(Gitlab #186,!163, git 8f7d556456891e7c675082f7e6cc88da71a92fee)
1500 [func, doc] tmark
Streamlined the isc::dhcp::PacketQueue interface and
added a section on Congestion Handling to the developer's guide.
(Gitlab #278,!162, git 0ce615f5da993ac90f675c5315ba7cb5c2ef3e1c)
1499. [func] tmark
For Kea 1.5.0, congestion handling has been disabled by
default.
(Gitlab #277,!164, git 8d87c46a3cc7b7be4dd5f751b48449e92ee62d84)
1498. [bug] marcin
Corrected behavior of the DHCP servers with respect to the
"reconnect-wait-time" parameter setting. This parameter is
specified in milliseconds, but the servers used to interpret
it as specified in seconds.
(Gitlab #173,!154, git 377f49e84ad6ebc91cbeac4116d24a15571c522d)
1497. [func] fdupont
All YANG modules now have a revision specified. When starting,
kea-netconf daemon will now check if the required modules are
installed and have a proper revision. This should help spotting
issues when migrating from older YANG modules.
(Gitlab #204,!121, git 9e772e1472e073ee85924cfc706cb57a5e70a0b1)
1496. [doc] marcin
Updated Kea documentation to reference RFC 8415, which is the
new DHCPv6 specification. It obsoletes a number of RFCs:
RFC 3315 (previous DHCPv6 specification), RFC 3633, RFC 3736,
RFC 4242, RFC 7083, RFC 7283 and RFC 7550. Kea documentation
now refers to RFC 8415 where appropriate instead of obsoleted
RFCs.
(Gitlab #288,!158, git 974b033a8de7a8e671156c33efeb13d4ac847c96)
1495. [bug] marcin
Corrected an issue in the Memfile lease backend which caused
errors while reading leases with very long lifetimes. Many
thanks to Shawn Routhier from Infoblox for finding and reporting
the issue.
(Gitlab #303,!151, git ab92ab6fcd414f1efc7c5de6a641274da7c04e92)
1494. [bug] marcin
Kea servers reject commands with unsupported parameters.
(Gitlab #253,!147, git 7fc55489887c0e8f32db5c1fe9f46fa1cc2a4407)
1493. [bug] marcin
Names carried in DHCPv4 Client FQDN option, Hostname option and
stored in the lease database are case insensitive.
(Gitlab #86,!152, git d9e23e2a6a3114b1c87de9c881ef10cdb1e00c61)
Kea 1.5.0-beta2 released on Nov 30, 2018
1492. [doc] fdupont
Added a step by step netconf operation example in the
Kea Administrators's Guide.
(Gitlab #195,!131, git 994a826caf3c1a9f5f84d8b703a3b202120e91b6)
1491. [build] tomek
coroutine.hpp from Boost 1.68 has been added the Kea source.
It is used only if the Boost library provided by the system
is very old and does not include that header. This effectively
reverts the change done in Kea 1.4.0.
(Gitlab #293,!45, git df0f507b8b750c8dff1f537cad5b5748b7841852)
1491. [build] marcin
Bumped up libraries version numbers for Kea 1.5.0 beta2 release.
Also, generated logger message files are now installed with Kea.
(Gitlab #62,!144, git 7dc8d73a58504fd81a49b1c54651388d53d98d53)
1490. [bug] marcin
Applied fixes in Cassandra Host Manager which prevents Kea
crash during an attempt to delete non-existing reservation.
In particular, this crash was observed as a result of sending
reservation-del command over RESTful API.
(Gitlab #27,!138, git 8666ed4754ffd27f3aa46a2cf3e4b161a1d877ee)
1489. [doc] fdupont
Added examples of global host reservations.
(Gitlab #136, !143, git bee8b8620f849f6bcaf2b31c3b130bb371c6312c)
1488. [doc] marcin
Added stat_cmds to the list of available hooks libraries.
(Gitlab #85,!142, git 08615372b4f869fe61b13559efa33d0d9794d79b)
1487. [doc] marcin
Corrected broken links and various typos in Kea documentation
which had been identified during Kea 1.5.0 beta1 release
process.
(Gitlab #263,!137, git 79a224288efa1e1c51b0f2ec11ff646563b306e1)
1486. [func] tmark
For Kea 1.5.0-beta2, congestion handling has been enabled by
default. This was done to expose the feature to more testing.
We will finalize the default setting prior to releasing Kea 1.5.0.
(Gitlab #276,!132, git fda1f985997412a58d3b4eee4a1ca0588d3f3beb)
1485. [func] fdupont
Simplified and updated Kea YANG models. For instance the list of
loggers was moved from the removed logging container to global
config parameters.
(Gitlab #204, !97, git 1de6c2987ec9067b7c1baa577c6dcd6ddd1b30fb)
1484. [bug] marcin
Resolved issues with MySQL backend failing to insert a lease
to the MariaDB database on OpenSUSE. This fix may also
improve stability of the MySQL backend on other systems running
MariaDB.
(Gitlab #53,!125, git 038eddbc7b904289e4b74b5ef2406cb57f79a646)
1483. [func] tmark
Use of congestion handling is now optional via the 'enable-queue'
flag added to 'dhcp-queue-control'. It is disabled by default.
When disabled Kea's DHCPv4 and DHCPv6 servers will consume packets
directly from interface sockets in the main thread (i.e. employs
pre Kea 1.5 technique).
(Gitlab #260, !120, git 9e304fae48d0d0658fd39a21aba9da528b4cc6f4)
1482. [func] fdupont
The configuration parameter "reservation-mode" can be specified
at global (new), subnet and shared network levels.
(Gitlab #268,!126, git c72d381c39868308c7d11c7d4def3bdae0a0e04e)
1481. [func] fdupont
Cleaned up the keatest-module YANG test module.
(Gitlab #204,!98, git a830adcefd9306969216d35c51306df3610278bb)
1480. [func] fdupont
The unused configuration parameter "always-include-fqdn"
was removed. Configurations using it will be rejected as
it is no longer recognized.
(Gitlab #182,!128, git cafeba167e7c64370dd39eca4551f61acd89d3da)
1479. [build] fdupont
Support for sysrepo 0.7.6 (and libyang 0.16-r2) was added.
Previous versions of sysrepo (and libyang) are still supported.
(Gitlab #176, !107, git 4304a10b21708afb2a7599c77bc7508a600333cb)
1478. [bug] marcin
Performance improvements in the HTTP client code used in the
Kea High Availability.
(Gitlab #57,!122, git 7bd97af1f3d7670cd64cadf0d0cb9ddbe4e74909)
Kea 1.5.0-beta1 released on Nov 9, 2018
1477. [build] marcin
Bumped up libraries version numbers for Kea 1.5.0 beta release.
(Gitlab #261,!119, git 54d63139048e7fe2dd0384b547ed6f8b96ff0e8f)
1476. [func] tmark
Added initial implementation of congestion handling to kea-dhcp4
and kea-dhcpt6. This adds a new top level element to the server
configurations, "dhcp-queue-control". Both servers will now
read client packets from interface sockets in a separate thread
queueing them for server level processing. For Kea 1.5-Beta
this feature is always on.
(Gitlab #42, !103, git 09d5ffebc8f9bfab2ab99c384eec9c3a3c915f39)
1475. [func] sebschrader
Add authoritative feature for DHCPv4 from ISC DHCP: requests from
unknown clients are dropped (default/previous behavior) or
answered with DHCPNAK (new behevior with new authoritative flag
set to true for the subnet). Patch proposed by Sebastian Schrader.
(Gitlab #66, !115, git 0fc1b767826f214475025d8631227970de368de5)
1474. [doc] godfryd
Updated list of supported operating systems.
(Gitlab #205, !109, git 73253af554cf48434798282f8440a99b1494fd04)
1473. [doc] tomek
Outdated FAQ section removed from the User's Guide.
(Gitlab #118, !113, git 7d079384bd5f49e0e36a571ee964bfd7d6ebd25d)
1472. [bug] marcin
Timeout is now reported by the HTTP client when connecting to the server
takes too long. This eliminates HTTP client hangs when firewall is
misconfigured and causes connection to never be established. This issue
was found during Kea High Availability testing.
(Gitlab #26,!106, git 9724823f160af0ef5e8ccdf779087ff08a04457a)
1471. [bug] lmasarati
Fixed a bug in kea-admin that ignored specified remote hostname.
Thank you to lmasarati and Thorsten Krohn for reporting it and
proposing a patch!
(Gitlab #61, #138, !114, git 901cac7dc85ad8dacf631bf3a5c266eefeb3e6a1)
1470. [func] marcin
Improved lease database synchronization mechanisms in High
Availability hooks library. The new implementation uses
lease4-get-page and lease6-get-page commands to fetch leases
from the partner server. This prevents timeouts occurring
during long synchronizations as well as decreases CPU and
memory consumption on the HA enabled servers during lease
database synchronization.
(Gitlab #78,!85, git c54ea216463dcc6df693c96c4a5f82c0fbec2ff6)
1469. [doc] marcin, fdupont
Documented new class_cmds premium library which is used
to modify client class configuration of the DHCP servers.
(Gitlab #64,!41, git c1c1d0b71496d81b330a8c1eb95996bbf634ada0)
1468. [build] wlodek
make distcheck fix.
(Gitlab #202, !111, git 5d8fb5f7af5fa36f4cb2b89f10631683b2e230d5)
1467. [doc] fdupont, tomek
Doxygen errors fixed.
(Gitlab #180,!93, git d12fb04d71c3b2d0e84ebb2c957334454b5705c4)
1466. [func] fdupont
Added random number generation in services provided by
the crypto library (and ultimately by the crypto backend,
i.e. Botan or OpenSSL).
(Gitlab #29,!9, git 609ddc69613dc828b3d93673d61a2c259c3944aa)
1465. [build] marcin
Removed libkea-process dependency on MySQL, Postgres and
Cassandra libraries.
(Gitlab #194,!104, git bcce7d3c2226c10218d537c4688344c3b7f8c84a)
1464. [build] marcin
Exclude mysql_cb hooks library from the Kea 1.5.0 release. This
library will be added back in Kea 1.6.0 release.
(Gitlab #93,!105, git 49572aa300ea2b25712d7e8cea0dd0df34faf7ee)
1463. [bug] tmark
Added missing parsing logic for the reservation-mode value,
"global", to kea-dhcp6. The parsing logic was somehow omitted
and caused kea-dhcp6 configuration parsing to fail on values
of "global".
(Gitlab #129,!55, git 00352d701f61274f0993b468a413af6c5623af3d)
1462. [build,doc] tomek,sgoldlust,vicky
Kea REST API is now documented. Thanks to Suzanne Goldlust for
providing descriptions for great majority of commands and to
Vicky Risk for review and corrections. Also, docgen, a new
tool for documentation generation has been written.
(Gitlab #10,!3, git 5d2e4d6fcc182a19eafa895abc35b1aee599fd23)
1461. [doc] marcin, fdupont
Added new sample configurations providing all parameters at
the exception of host reservations for DHCPv4 and DHCPv6 servers
for testing of configuration managers.
(Gitlab #130,!89, git 4bc7e0dbe4804f63c51d100a8f724327e3d3a936)
1460. [func] tmark
While kea-dhcp4 and kea-dhcp6 configuration parsing supports
configuration backend elements "server-tag" and "config-control",
use of these parameters has been disabled. Development of this
feature will resume after Kea 1.5 release.
(Gitlab #101,!87, git 4292a7ef7ab268826f846812e7320e1fe1fc46ef)
1459. [func] marcin
Implemented libdhcp_mysql_cb hooks library which provides
Configuration Backend functionality for MySQL.
(Gitlab #93, git 98456608056b3361352b3127767138845eeb5d00)
1458. [func] fdupont
Control sockets for kea-netconf has been implemented. The code is
not functional yet, but the capability of the kea-netconf daemon
to communicate with CA, D2, DHCPv4 and DHCPv6 daemons is there.
(Gitlab #153,!60, git 11486e255aef704114645f8e7c5fee9c3abf9e76)
1457. [func] tmark
Both kea-dhcp4 and kea-dhcp6 configuration parsing support new,
server-level configuration elements "server-tag" and "config-control".
While these elements will parse, they are not yet used by the servers.
(Gitlab #32,!23, git c0727407da8d749d9fb51d873a725369800c967b)
1456. [build] tomek
Extended Kea version is now stored in a separate file for
build performance reasons.
(Gitlab #137,!42, git 87479e979ca3d3025cb4129ace991a59e32e0f62)
1455. [func] fdupont
Implemented hexstring(value, separator) operator that can be used
in any expression, such as client classification, flex-id or
RADIUS attribute.
(Gitlab #67,!34, git 004d9a29db09b1c203c52e23585bd275c52095fa)
1454. [func] fdupont
Unused interface-id and rapid-commit parameters removed from
DHCPv4 parser.
(Gitlab #116,!24, git 7e47292f10acb9179241c991d3591e9bfa47c37d)
1453. [func] marcin
Updated MySQL schema to facilitate Kea Configuration Backend
feature.
(Gitlab #89,!22, git e28c0c7b3e7a7729167cdad993f634ed1f0ac53b)
1452. [func] marcin
Implemented libkea-cb library which includes basic class
hierarchy for the Kea Configuration Backend.
(Gitlab #28,!20, git fb5c031ecaf4182e56f62874e9a6bd4c1d755a77)
1451. [build] tmark
Resolved a namespace issue with std::distance() in libdhcp++.cc
when building with Boost 1.68. Thanks to Huy Vu and Khem Raj
for reporting and suggesting a fix.
(Gitlab #109,!21, git 1fd301f998129e9926ffa35eac27768ae150633d)
1450. [build] tomek
Dependencies improved. libkea-process no longer requires libkea-dhcpsrv.
As a result, D2 and CA are no longer linked with libkea-dhcpsrv.
(Gitlab #25,!14, git cdb3a6f2d98a303b80433df7e0d5698c77897b7f)
1449. [func] tmark
Modified Kea 1.5.0 database upgrade scripts to convert
subnet ID values of 0, to either null (MySQL and Postgres)
or 0xFFFFFFFF (CQL), in existing host reservations. This
is done to accommodate support for global host reservations.
(Gitlab #15,!11, git 25b54fd9ced4c6d3a2c8ceff9cc7c866b56da2c1)
1448. [build]* marcin
Created new Kea libraries: libkea-database, libkea-mysql,
libkea-pgsql and libkea-cql. Some database specific code was
moved from libkea-dhcpsrv to those new libraries.
(Gitlab #92,!13, git 5feb6b8a53675c27715e9e8fbeb312bd6eb17547)
1447. [doc] tmark
Updated Kea Administrators's Guide with discussions of the
use of subnet ID parameters in hook library commands.
(Gitlab #14,!15 git# 4a7da8069feab1e21132689a9368f8ccb4174683)
1446. [func] tmark
kea-dhcp6 now supports global host reservations and a new
global reservations-mode . Prior to this reservations could
only be specified per subnet. This is supported by by Memfile,
MySQL, PostgreSQL, and Cassandra host data sources.
(Gitlab #13,!6, git# a5484c4d8852662be7da1e6e8b1d4c1a19e6502f)
1445. [func] tomek
Implemented initial skeleton version of the kea-netconf tool.
Currently it can't do anything, but the build system is now
capable of detecting sysrepo (use --with-sysrepo in configure),
there's a very basic documentation and unit-tests.
(gitlab !1, git 89ff2093811d65220d99dc2a6516375c4ec953dc)
1444. [bug] tomek
keactrl version tests now work properly on macOS.
(Gitlab !5, git a8c385e1507ffd101f65b445783b0355b01decce)
1443. [func] tmark
kea-dhcp4 now supports global host reservations and a new
global reservations-mode . Prior to this reservations could
only be specified per subnet. This is supported by by Memfile,
MySQL,PostgreSQL,and Cassandra host data sources.
(Trac #5705, git f991cffd06add941f8bf2937232f51d597623e21)
1442. [func] MayyaSunil
Implemented new queries for IPv6 leases by DUID.
(Github #99, git c20b5248da1283e596e35ad057ae242f4d613965)
1441. [func] marcin
Added log message indicating that the control socket has been
opened by a server.
(Gitlab #8, git 3dbaf4917bea112466f1ee5726870c545950e114)
1440. [func] tmark
The internal representation of an "unused" subnet-id has been
changed from zero to 0xFFFFFFFF. The largest, valid value for
a subnet's ID is now 0xFFFFFFFE. Three new constants have been
added so subnet_id.h:
isc::dhcp::SUBNET_ID_GLOBAL
isc::dhcp::SUBNET_ID_UNUSED
isc::dhcp::SUBNET_ID_MAX
which should be used in code/hooks in place of hard-coded values.
(Trac #5704, git 90fe9ca2cd6f63bcc7168bdc3786677db57b65ec)
1439. [func] tomek
keactrl and kea-admin tools can now report version.
(Gitlab #9, git 4a00ab5d4b9ac9193fc5f924149aeaca7a88e2ef)
1438. [func] tomek
subnet-id parameter is now optional in lease4-add, lease6-add,
lease4-update and lease6-update commands. If not specified or
its value is zero, Kea will attempt to figure out the correct
value of subnet-id. If there is no matching subnet configured,
the lease will be rejected.
(Trac #5683, git a8ce7a78b5b294e6bce02de887552a1e4593db4e)
1437. [func] tomek
DHCPv4 and DHCPv6 servers are now able to sanity check and
possibly correct some inconsistencies in leases when loaded from
disk (memfile). A new parameter to govern this behavior has been
added.
(Trac #5682, git 609bfa0a67caa91fac6834eb39260acfd19e3be4)
1436. [func] tmark
Added two new configuration parameters to kea-dhcp4 and kea-dhcp6
DhcpDdns sections: 'hostname-char-set' and 'hostname-char-replacment'.
These values (when not empty) are used by the server to sanitize
host name and FQDN domain names sent by clients prior to using them
to construct DNS names.
(Trac #5680, git 32466ab3d4688e66c8c2f9fd24d4a98fcc871ff6)
1435. [func] marcin
Implemented ha-continue command in HA hooks library and
updated the Kea User's Guide with the information how to
pause and resume the HA state machine.
(Trac #5675, git 98a9bd4f6766ff2f53681d84d55c56988be4d501)
1434. [func] MayyaSunil
Code added to support storage of Authentication key host reservation.
There is no way to use the code yet.
(Github #88, git 66602af46b1a7d9f4197b1f285c928bd9f80ba2b)
1433. [func] marcin
Implemented state HA state machine pausing in the high
availability hooks library.
(Trac #5674, git b9f3f082c7a88fe98fa4545b9649193ceb5e3ef5)
1432. [func] MayyaSunil
Code added to handle Authentication option in DHCPv6. There
is no way to use this code yet.
(Github #93, git 022dae4393da9e714678d52886d4f478ba308ba9)
1431. [func] marcin
Implemented lease4-get-page and lease6-get-page commands
in lease_cmds hooks library.
(Trac #5651, git b056828212f7b206ff8bd07c097fd6f427d22d71)
1430. [func] fdupont
Lease objects and lease backends are now able to store user
context. User context can store an arbitrary data as long
as it is in JSON format. Database schemas updated.
(Trac #5584, git b0b7a198b99fd417466708c80cb7cc2162ae480c)
1429. [bug] marcin
Removed memory leak in the DHCPv4 and DHCPv6 servers which
occurred when hooks libraries where loaded.
(Trac #5664, git 2584b902d2617089bfa7238133490ddd855aa77a)
1428. [bug] marcin
Corrected behavior of the standby server in the HA hot-standby
mode, which failed to monitor delays in responses to the
DHCP queries sent to the primary server after the primary
server became unavailable. This resulted in transition of
the standby server to the partner-down state immediately
after detecting interruption in communication with the
primary over the control channel.
(Trac #5654, git 7a83f05fe40fb1b6812b055e2d6d633d9e00160c)
Kea 1.4.0 released on June 15, 2018
1427. [bug] marcin
Resolved multiple problems causing slow synchronization of
leases in the HA hooks library, including adjusting
timeouts in control channel and improving performance of
responses sent by the Command Manager to Control Agent.
Also, introduced 'sync-timeout' configuration parameter
into HA hooks library to control lease database
synchronization timeout.
(Trac #5649, git cbc29128863916a13364749bf681586aea2aa51e)
1426. [func] fdupont
Added KNOWN and UNKNOWN built-in client classes: after host lookup
if a matching host entry is found the incoming packet is added to
the KNOWN class, if none is found to the UNKNOWN class. Then
expressions depending directly or indirectly on these classes are
evaluated. Note these classes may be used to select a pool but
they may not to select a subnet.
(Trac #5549, git 6a856ed9722b918a65dca15ff44314e28897784e)
1425. [bug] marcin
Improved performance of the DHCP server running in High
Availability configuration by optimizing the management of
CalloutHandle objects passed to the callouts.
(Trac #5647, git eea88d5c8f4d8efb6c5bfdfbf4e070a90069db5d)
1424. [doc] marcin
List of hooks libraries provided by ISC includes an
information which Kea servers the libraries can be attached
to. The detailed description of each supported hooks library
also contains this information.
(Trac #5613, git 9d6f8de3d988c42c413a7d628e31854e9c80d8c9)
1423. [bug] tmark
kea-dhcp4 and kea-dhcp6 now retain and emit global, scalar
parameters specified in their configuration.
(Trac #5378, git 4d05122f03d00b10a888c768fe1725cae9d6aea6)
1422. [build] fdupont
Commented out BOOST_ASIO_DISABLE_THREADS in configure to reflect
the current use of threads by boost ASIO in Kea.
(Trac #5615, git f3fc8b1a4257a42a97aaf88a36287bbe33d1f65b)
1421. [build] marcin
Moved libdhcp_ha (High Availability) hooks library from
premium to main Kea repository and changed its license to
MPLv2.0. Future ChangeLog entries for this library will be
tracked in the Kea ChangeLog file.
(Trac #5645, git 19b2553d4869bdd52b63b6f7969052d8a724f78d)
1420. [doc] marcin
Updated list of loggers in the Kea Administrator's Manual.
The updated list contains all loggers, including those
from supported hooks libraries.
(Trac #5622, git bd94afc0af7183452c94f3b5768c6138f79d3b60)
1419. [doc] marcin
Documented "sync-leases" configuration parameter of the HA
hooks library in the Kea Administrator's Manual.
(Trac #5621, git 4ebac3a411aa02d1cc3d74e7eaf3212ad208159a)
1418. [bug] marcin
Corrected bug in the allocation engine which caused occasional
lease allocation failures when a loaded hooks library set the
callout status to non default value, e.g. "skip" rather than
"continue". In such cases, the server reported that it failed
to allocate a lease "after 0 attempts".
(Trac #5638, git f2e9b686ae52e1b06f660e1b522588b1440e2620)
1417. [bug] marcin
Improved logging in the HTTP library both for the server and
the client.
(Trac #5205, git fd0bec610c89084d5a5d43ef032c9875c3e6ad46)
1416. [bug] fdupont
Added support of recent Botan 2.x crypto backend.
Note that Botan 1.[9-11] is still supported but not recommended.
(Trac #5382, git 22651b1935a2397edfbddb9b8873c353c090f18e)
1415. [bug] tmark
kea-dhcp4 and kea-dhcp6 now validate the schema version
of lease and host back ends after establishing a connection.
If a schema version does not match the version the server
expects, the server will emit an error log and close
the connection. This applies to MySQL, PostgreSQL, and Cassandra.
(Trac #5629, git 15c34afdba45be609e35284a209ad18ed66605f8)
1414. [bug] tmark
kea-dhcp4 parsing now treats renew-timer and rebind-timer
as optional with no defaults. The logic for sending them
to the client was changed to: send rebind-timer only
when it is less than the lease lifetime; and send renew-timer
only when it less than either the rebind-timer if specified,
or lease lifetime in the absence of rebind-timer.
(Trac #5596, git 38426e16ec04a786e35a65d27cbcb7dbabfe79b5)
1413. [func] fdupont
Removed getAll, get4 and get6 methods using both hardware address
and DUID from host backend (aka host data source) APIs.
This is an *incompatible* change.
(Trac #5563, git db4c34b069f114f93d9f29cdeb02b536a0fbc982)
1412. [func]* marcin
The client classes used by the High Availability hook library
use upper case "HA_" prefix and they are now built-in classes.
This means that those classes do not need to be declared in the
server configuration.
(Trac #5632, git 2d590bfd7d1b0eca377eb99eef83a3083a1d7399)
1411. [bug] fdupont
Fixed warnings about lambda's not using captured variables.
(Trac #5591, git f88a505823d39faec7dc5f647f40e6454e5dfc74)
1410. [bug] marcin
Fixed multiple hanging Control Agent unittests.
(Trac #5576, git 310af68101cba74220652ec2b403520fc5666dc0)
1409. [doc] marcin
Documented in the User's Guide how Kea HA service behaves
when the clock skew between active servers becomes too
high.
(Trac #5603, git ffaff4d2a03600bb4f81d335b49a840e31d03c8c)
1408. [func] tomek
perfdhcp now supports -o option that adds DHCP options.
This may be used to simulate various clients.
(Github #77, git b81dedb7f0a2516130e7bd799d9084c63f0e844c)
1407. [bug] tmark
Corrected an issue where the destruction of loggers
prior to the destruction of the TimerMgr singleton
caused unit tests to segfault.
(Trac #5626, git 9f4e3f9cd8acf8e7d1d3e714d8f904754377c00f)
1406. [func] fdupont
Added pkg-config alternative to configure --with-cql path so
now you can use either pkg-config or cql_config.
(Trac #5488, git 55498ca3455517132533a39002ebfc05d26c7e38)
1405. [bug] tmark
Corrected missing "override" warning in cql_lease_mgr.h
(Trac #5625, git df3068ba0e520df4d96dd38e2de679beb99f2e23)
Kea 1.4.0-beta released on May 18, 2018
1404. [doc] tomek
Hooks package installation intruction added to Kea
User's Guide.
(Trac #5427, git 7bc5e4297e8b2ccb87d5d5d79ae066fe32964841)
1403. [build] tomek
Support for hook packages has been updated. The --with-tierX
flags have been removed. Each hook library is now detected
independently.
(Trac #5619, git aa1f95d699dc664a5660db120ef71edee910a9b3)
1402. [bug] tomek
Fixed a crash that was caused by hook library registering
new hook points. This fixes unit-tests with forensic
logging, but the problem was generic and could cause
other libraries to segfault during unloading or reconfiguration.
(Trac #5577, git 2f9d1aa95c16e12fabc50d581b966f20b6d8a950)
1401. [bug] tmark
Corrected an issue which caused kea-dhcp4 and kea-dhcp6 servers
to unload their hooks libraries upon receipt of the first client
message following a dynamic reconfigure.
(Trac #5564, git 5111f569bd251c2a98a2e6d958e8f6b640a1802d)
1400. [func] tmark
A new hooks library, Stat Cmds, has been added to the open source
distribution. This library provides commands for fetching lease
allocation statistics using lease backend as the source for
lease counts per state. This resolves an issue in deployments,
where multiple Kea servers share a common lease backend, which made
it difficult to obtain accurate lease statistics.
(Trac #5589, git 36f20f1c8b28f629fe2896b817ac0f3c6026fe0e)
1399. [func] tmark
Support for fetching lease allocation statistics by subnet-id
or subnet-id range has been added to the Cassandra back end. This
allows it to be used in conjunction with the Stat Cmds hooks
library commands for fetching shared lease statistics.
(Trac #5588, git 3fcfefdea5ac838936c2109ecbbbc32eabc8fdba)
1398. [bug] fdupont
Fixed bug in configurations where "outbound-interface" parameter
was set to "use-routing", which in some cases would reset outbound
interface index to a negative value and cause the server to fail
to respond to the clients.
(Trac #5515, git 9d8d00f1f127ee606f09f7ff6006f0d142aac976)
1397. [bug] marcin
A bug in http client library was fixed. The IPv6 address specified
in brackets is now supported properly.
(Trac #5620, git fe38c4368853e47bc993d6c3844cdddba5effde5)
1396. [bug] tmark
The PostgreSQL schema was expanded to include two new tables:
lease4-stat and lease6-stat and triggers to update them as leases
are modified. This resolves an issue in deployments, where multiple
Kea servers share a common PostgreSQL lease database, which made
it difficult to obtain accurate lease statistics. Since these statistics
are now tracked by the database, they do not have to be recalculated at
startup or following reconfiguration. This may result in less
processing overhead during these events. The new statistics will be
accessible via a new Hooks library, being developed for Kea 1.4
under #5589.
(Trac #5587, git 36a0160de0df7789eea224954717be05c08638b7)
1395. [bug] tmark
The MySQL schema was expanded to include two new tables:
lease4-stat and lease6-stat and triggers to update them as leases
are modified. This resolves an issue in deployments, where multiple
Kea servers share a common MySQL lease database, which made it difficult
to obtain accurate lease statistics. Since these statistics are now
tracked by the database, they do not have to be recalculated at startup
or following reconfiguration. This may result in less processing overhead
during these events. The new statistics will be accessible via a new Hooks
library, being developed for Kea 1.4 under #5589.
(Trac #5586, git a070c327668c10de3b28f5e249f91d6d16a97ff5)
1394. [doc] marcin
Documented High Availability hook library in the Kea
Administrator Reference Manual.
(Trac #5478, git 3db34400d0331e3d4fc208529eeb18f6abfb6562)
1393. [build] marcin
Install new header files introduced since Kea 1.3 release.
Also, bumped up libraries version numbers for Kea 1.4 beta
release.
(Trac #5590, git 64351229a30832735c5a81ac17ca1521aa2483b2)
1392. [func] fdupont, marcin
Implemented new hook point "leases6_committed" in the DHCPv6
server. It supports new next step status NEXT_STEP_PARK
which causes the server to "park" the client's DHCP packet.
(Trac #5458, git 04d6fb0a0ac5b9dff2a02764cc9265f9a2a05ae8)
1391. [func] tmark
For both kea-dhcp4 and kea-dhcp6, the "ip-address" parameter
in the "relay" element for both subnets and shared networks,
has been replaced with a list form, "ip-addresses". Configuration
parsing will continue to honor the singular form, but it should
be considered deprecated. In addition, an omission in 1.3 that
caused shared network parsing to ignore the "relay' element has
been corrected.
(Trac #5535, git f4601abdb657122a8ba5d7784eded773ec01d171)
1390. [doc] tomek
User's Guide documentation for RADIUS and Host Cache written.
(Trac #5538, git c73337a8ec691874b8ac0b2efcd8708f1a79acbb)
1389. [func] fdupont
dhcp6_srv_configured hook point added.
(Trac #5530, git 3bb521f6ec8b4e2a1e57ec84b17ee12b0ccf0f83)
1388. [build] tmark
Modified configure script to support --with-dhcp-mysql and
--with-dhcp-pgsql but emit a deprecation warning message
encouraging their replacement with --with-mysql and --with-pgsql.
(Trac #5567, git 53761069761ddde44636baa30185322debfe4186)
1387. [func] tmark
perfdhcp no longer requires -r (rate) be specified in order to use
-D<max-drop>, -n<num-request>, -p<test-period> and -t<report> options.
(Trac #5115, git c3ba89c56882cac1080899ad201f0c02056eef38)
1386. [func] fdupont
Extended comment / user-context support to DHCP-DDNS and
Control Agent configuration syntax.
(Trac #5495, git fe79959e3bc3c46ccb89661cb27696671a8508b8)
1385. [func] tomek
lease4-wipe and lease6-wipe are now able to wipe all leases
from all configured subnets if subnet-id specified is 0
or the subnet-id parameter is omitted.
(Trac #5543, git ecaf777dff4b8d1100c2a97c4fb1cf8f8e63566d)
1384. [func] fdupont
Significant improvements to client classification introduced.
The order of classes evaluation has changed from alphabetical
to the order of appearance. New 'member' expression allows
combination of classes. The new 'only-if-required' and
'require-client-class' parameters controlling the scope of
a class have been introduced.
(Trac #5474, git 3f2d93f0731fc1858b20e831a7d1f090ea8841fe)
1383. [func] tmark
kea-dhcp4 and kea-dhcp6 can now be configured to attempt to
reconnect to MySQL backends if connectivity is lost.
(Trac #5556, git b31da6f9a3545a2cac228eb17c59d72b6b4823f2)
1382. [func] fdupont
Added support for generalized UDP Source Port for DHCP Relay
(RFC 8357) for DHCPv4, DHCPv6 and DHCPv4-over-DHCPv6. Note
this required changes to the inter-server protocol used by
our 4o6 implementation, and is therefore not backward
compatible.
(Trac #5404, git 2a6049947ad4caaaa697dba8cb7669a09264f0bc)
1381. [bug] marcin
Corrected a bug in the libkea-asiolink library which caused
the DHCP servers to crash while processing commands over
the unix domain socket on some systems.
(Trac #5580, git cb5276a24436a9e9ce4d1ab4630e7193a4c2d803)
1380. [func] fdupont
Implemented lease6-get-all command in lease_cmds hooks library.
(Trac #5469, git a0bb7188df47a0f8020ff57739c5a6ab5f7e9828)
1379. [func, bug] marcin
The network_state argument is provided to the callouts in
the dhcp4_srv_configured hook point. Also, fixed a couple
of minor bugs in the HTTP client classes.
(Trac #5470, git 93e2b2198c3163afb81d51fdf5ec547602a12415)
1378. [doc] tomek
New parameter subnets-action for network4-del and network6-del
commands is now documented.
(Trac #5441, git 8b2ffabb3d1ba709f319df2b34d0804ee824446b)
1377. [doc] tomek
New parameters for Cassandra are now documented.
(Trac #5484, git 56e7026ea2bfab99dbfa1a047dc920ec2f743540)
1376. [func] razvan
Cassandra backend improvements: get all IPv4 leases, delete
hosts, ability to store fixed DHCPv4 fields (next-server,
server-hostname, boot-file-name) and user contexts in host
reservations. Also, the ability to store MAC address details
in DHCPv6 leases on PostgreSQL has been improved.
(Github #70, git 8cd0c1ae416be88baf69c2243e83a429d6d5c965)
(Trac #5506, git 8cd0c1ae416be88baf69c2243e83a429d6d5c965)
(Trac #5507, git 8cd0c1ae416be88baf69c2243e83a429d6d5c965)
(Trac #5508, git 8cd0c1ae416be88baf69c2243e83a429d6d5c965)
(Trac #4530, git 8cd0c1ae416be88baf69c2243e83a429d6d5c965)
1375. [func] tmark
When encountering errors unpacking vendor specific options,
both kea-dhcp4 and kea-dhcp6 will now log the error, skip
unpacking any remaining options, and then attempt to process
the packet as is. Prior to this the servers would log the issue
and then drop the packet.
(Trac #5551, git 59ef33ee17672c55cee4ec86ff59737b361a3c21)
1374. [func] tmark
kea-dhp4 and kea-dhcp6 can now be configured to attempt to
reconnect to Postgresql backends if connectivity is lost.
(Trac #5477, git 8e62a058382b2245d418cfbf829776934c638e5e)
1373. [func] marcin
Implemented leases parsing from JSON in libkea-dhcpsrv.
(Trac #5466, git 84c2a2084b0fb7c086fc6b9502f7ff58b708174e)
1372. [func] marcin
Implemented new hook points "dhcp4_srv_configured" and
"leases4_committed" in the DHCPv4 server. The latter supports
new next step status NEXT_STEP_PARK which causes the server
to "park" the client's DHCP packet.
(Trac #5457, git af43f07b0e227ccabcdf07a046a64cebb11bdccf)
1371. [bug] fdupont
Fixed a bug in JSONfeed tool which did not correctly handle
strings and interpret their content.
(Trac #5513, git 231e923a85db7fb8305c7baa4d15f766fdf60942)
1370. [bug] tmark
Fixed a bug which prevented inserting multiple host reservations
where IPv4 address was unspecified or when selected subnet identifier
was not specified (5416). Corrected inconsistent data types for
subnet id columns in both Postgres and MySQL schemas. Now both
schemas support up to MAX UINT32 in all subnet id columns. Exiting
databases may be updated without data migration.
(Trac #5416, #5522, git d1dd0f2e27ffa49515c17cf68d54f162359b6384)
1369. [bug] marcin
Multiple critical performance optimizations in the allocation
engine for shared networks.
(Trac #5437, git 9d8bcd39802795d48c737a05ef3de3634a28ca4e)
1368. [func] tmark
kea-dhcp4 now explicitly logs packets dropped due to a lack
message type as a log type DHCP4_PACKET_DROP_0009. Prior
to this such packets were logged has having an unsupported
message type of 0.
(Trac #5553, git ff97e5ffb5f3478be71aae8130b6eff3208bd69a)
1367. [func] fdupont
Added initial skeleton implementation for Radius hook library.
(Trac #5524, git 832aa23b89eab71875bcbdb1e955eb92fdc0e01a)
1366. [func] fdupont
Implemented FNV hashing function. Cassandra backend no longer
explicitly depends on OpenSSL.
(Trac #5502, git 71de75c3bb099f21fdef0d41806da281d6271287)
1365. [func] fdupont
Both DHCPv4 and DHCPv6 servers can now listen on loopback
interfaces. This capability requires setting socket type to UDP in
DHCPv4. Note the feature has not been thoroughly tested.
(Trac #5390, git f38cbd73581a7a0f8634a63cb17f9b60407e3acc)
1364. [func] fdupont
Extended forensic (aka legal) logging with database capability.
(Trac #5420, git 94bd3cc313e9f2a982ef8f8adf0cf44024c76499)
1363. [func] tmark
Added support for automatically recalculating lease statistics
to the CQL backend.
(Trac #5487, git c807388d581ee1c3e479324f3c399f27feba1c96)
1362. [func] razvan, andrei
A new parameter exit-wait-time has been added to perfdhcp. It is
now possible to tell perfdhcp to wait certain amount of time after
exit conditions are met before actually terminating.
(Github #55, git 0cd1178ae092fa0c2f122d0e16fb673b4074a6e6)
1361. [func] razvan, andrei, tomek
Support for Google Benchmark has been added. To compile
benchmarking support, please use --with-benchmark option.
(Github #36, git d6819971410b460d7742c762844e2e75ba580944)
1360. [build,bug] fdupont
Cassandra build fixes for macOS.
(Trac #5494, git cb0d735628aefd6bca2acc11b73d1f66b45d1c40)
1359. [bug] rcgoodfellow
Fixed bug in kea-admin causing error on lease-dump.
(Github #61, git 2c9454ec56edc8f3cff8a23329f53ced0d172280)
1358. [func] andreipavelQ,tomek
The logging configuration is now applied early, which helps
seeing errors in case the new configuration is faulty.
(Github #41, git d77fbec5a003a69cab207aa741133015f2657878)
1357. [build] andreipavelQ
--with-dhcp-mysql renamed to --with-mysql and
--with-dhcp-pgsql renamed to --with-pgsql. These names were
leftovers from old BIND10 times when Kea was part of bigger
solution that also provided DNS services. Kea is now a stand-alone
software, thus the -dhcp- doesn't make sense in those options any
more.
(Github #40, git 318c9e3d3db9bb938ced27932d8401172529a2ff)
1356. [doc] andreipavelQ
Documentation has been upgraded to DocBook 5.0.
(Github #39, git 9b6705bd6c534128ec18820ff0cbdd72b7fce9e9)
1355. [func] tomek
Lightweight 4over6 options reinstantiated. Definitions for DHCPv6
options 89 through 96 were added back. DHCPv4 v4 Parameters Option
159 has its definition tweaked slightly.
(Trac #5514, git 6a4aac2b3bfffe41460db6d1cd3c55b1430aa50c)
1354. [build] andrei
Support for coverage tests has been improved.
(Github #43, git 1949bb3abf71fb3997044d239eb683095166c39f)
1353. [build,bug] andrei, razvan
Various small changes and bugfixes. Thank you to Andrei Pavel
and Razvan Becheriu for submitting their patch.
(Github #54, git 2efa7494228a1797dff8d9d74107a452c61e2386)
1352. [func] fdupont
It is now possible to specify client classification restrictions
on per pool basis. This capability will be useful for grouping
certain types of devices into specific address and/or prefix
pools.
(Trac #5425, git 5f3a89d6e32e90cd9cbb2347c7b2208c3e1561e0)
1351. [build] andreipavelQ
Compilation parameters unified (every file now includes config.h,
several makefile tweaks).
(Github #38, git 7206aa79c57be7466c4ab3dd558663c6c4f858b7)
1350. [func] fdupont
Several hook points now support next step status DROP. This allows
more flexibility with dropping packets from within hooks.
(Trac #5443, git ff22a906915a34df327174f550f69a396a05bb2c)
1349. [func] marcin
Implemented HTTP client classes in libkea-http.
(Trac #5451, git 94267e252b372650e4235389251b49d6f5501322)
1348. [build] fdupont
Modified configure.ac to include premium module m4 macros, if the
module is present. Prior to this it relied on premium having it's
own configure.ac script.
(Trac #5400, git 38c4f2fb8fc8c8874a0e4671cc295a049acf675f)
1347. [build] fdupont
Added support of boost 1.66.0 ASIO.
(Github #60/Trac #5496, git bc2947de4296bd99b74e50e65f272c7ad5312429)
1346. [func] marcin
Implemented lease4-get-all command in lease_cmds hooks library.
(Trac #5468, git a378ec28489e98df64830d1f26c3bebd20e256b2)
1345. [func] marcin
Implemented "force-create" parameter for lease4-update and
lease6-update commands.
(Trac #5472, git 369245e4c5308a701fd483123f2cb2fd7d3d0966)
1344. [func] andrei, razvan
Support for host reservations stored in Cassandra added. The core
functionality was added. There are some limitations (delete,
client classes, fixed DHCPv4 fields, statistics recount, etc.)
These will be addressed in upcoming tickets.
(Github #37, git e37606fd2d0c02234a55f7445c52a12b2e7a82ec)
1343. [func] fdupont
User-context and comments are now supported in many new scopes:
global, shared-network, subnet, pool, host reservation, option,
option definition, client-class, control-socket, dhcp-ddns,
interfaces, loggers, and for DHCPv6 pd-pool and server-id.
(Trac #5351, git 3405a8fa5d391d96cd15874fd3de3ac63ceb33b6)
1342. [bug] fdupont
Fixed subnets and host reservations returned by config-get and
config-write.
(Trac #5452, git c24d057bed2692eaf3cdb6af889122eb582ffede)