dhcp.node-server

Framework for creating DHCP server implementations.

create-server

(create-server {:keys [if-name port buffsz log-msg server-message-handler error-handler], :as cfg, :or {port dhcp/RECV-PORT, server-message-handler server-message-handler, log-msg (fn* [& rest__3390#] (apply println rest__3390#)), error-handler (fn* [p1__3391#] (prn :err p1__3391#))}})

Create a DHCP server listening on if-name that will call message-handler to get a response message for a client message.

send-message

(send-message {:keys [sock log-msg]} msg-map addr port)

server-message-handler

(server-message-handler {:keys [log-msg sock message-handler disable-broadcast], :as cfg} buf rinfo)

Read/decode DHCP messages from a client, call message-handler to get a response map, and then write/encode the response and send it via sock.