Opened 5 years ago

Closed 5 years ago

Last modified 4 years ago

#3963 closed defect (wontfix)

Dhcpv4Srv::processDiscover() shouldn't return a null PtkPtr is a hook lib is registered

Reported by: pallotron Owned by:
Priority: medium Milestone: Kea1.0-beta
Component: dhcp4 Version: git
Keywords: Cc:
CVSS Scoring: Parent Tickets:
Sensitive: no Defect Severity: N/A
Sub-Project: DHCP Feature Depending on Ticket:
Estimated Difficulty: 0 Add Hours to Ticket: 0
Total Hours: 0 Internal?: no


Hi, my name is Angelo, and I'm a Production Engineer at Facebook.

As you know we use KEA in our Facebook DCs, see
We wrote a custom hook library.

We recently started trying 0.9.2 after it was released, and we noticed that the way Dhcpv4Srv::processDiscover() works in 0.9.2 is causing a regression in our hook library.

Basically Dhcpv4Srv::processDiscover() returns a NULL pointer if a lease can't be assigned. However this is a perfectly valid thing that can happen in our environment. We don't care about leases as we use our hook library to modify egressing packets populating the options we want based of our inventory system database.

I've written a patch, please let me know which way you prefer for review it, my preferred way is a pull request on github.
I can attach it here if you want :)
Basically the way it works is that the code checks if a hook library is registered, if it is not everything works as before, otherwise an empty Pkt4 is returned (like it was in the past with bind10 or kea <0.9.2).



Change History (5)

comment:2 Changed 5 years ago by pallotron

so it seems the proposed way is to implement a more generic stateless dhcpv4 server as explained in the thread linked.
not sure if you want to close this and create a new ticket for it, i can't find a way to change the title of a trac ticket.

comment:3 Changed 5 years ago by marcin

  • Resolution set to wontfix
  • Status changed from new to closed

I am closing this ticket because we have come up with a proposal to deal with this differently. We will put the proposal in the separate ticket.

comment:4 Changed 5 years ago by hschempf

  • Milestone changed from Kea-proposed to Kea1.0

comment:5 Changed 4 years ago by tomek

  • Milestone changed from Kea1.0 to Kea1.0-beta

Milestone renamed

Note: See TracTickets for help on using tickets.