Integrate HA hook into base code
There were two original reasons to have HA implemented as a hook: we wanted it to be optional, so people not interested wouldn't run the code and the second was business. Neither of those aged well and it is now more of a burden to maintain and extend HA.
As such, @marcin proposed to integrate the code into core Kea. This is a master-ticket covering this goal. If needed, feel free to create additional ticket(s) for design or split this into smaller tasks.
After looking at the problem in more detail, there's a depressingly long list of problems with this:
- this would require updating every config. HA is very popular, so this would affect a large number of users
- for the years to come, we would have to write every HA related doc or blog in if-else notation
if using 1.8.x or older, do ..... If using 1.9.x or newer, do ..... We could possibly get rid of this after 1.8 is EOLed.
- the internal packet parking mechanism is currently very tightly coupled with the hook point mechanism
And the potential benefits would be somewhat unimpressive:
- simpler code
- one fewer hook (fewer opportunities for people to misconfigure)