From c037bf9c5f65cb567123a7e03467e37370227f1c Mon Sep 17 00:00:00 2001 From: Michael Stapelberg Date: Mon, 22 Oct 2018 18:39:25 +0200 Subject: [PATCH] dhcp4d: fix panic when receiving unsupported requests --- internal/dhcp4d/dhcp4d.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/internal/dhcp4d/dhcp4d.go b/internal/dhcp4d/dhcp4d.go index 0cba287..3b39830 100644 --- a/internal/dhcp4d/dhcp4d.go +++ b/internal/dhcp4d/dhcp4d.go @@ -158,6 +158,9 @@ func (h *Handler) canLease(reqIP net.IP, hwaddr string) int { func (h *Handler) ServeDHCP(p dhcp4.Packet, msgType dhcp4.MessageType, options dhcp4.Options) dhcp4.Packet { reply := h.serveDHCP(p, msgType, options) + if reply == nil { + return nil // unsupported request + } buf := gopacket.NewSerializeBuffer() opts := gopacket.SerializeOptions{ ComputeChecksums: true,