two/internal
GnomeZworc 0c0b58820c
f-46: dhcpapi: add the control socket, its protocol and its client #46
Le contrat et le listener vont dans internal/api/dhcp (package dhcpapi), sur la
forme de internal/api/agent, et le client dans internal/client/dhcp. Chaînage
des imports : statefile <- dhcpd <- dhcpapi <- dhcpclient, sans cycle.

dhcpd parle net.IP et net.IPNet et garde ses structs disque privées ; dhcpapi
parle chaînes JSON et convertit à la frontière. Un même type portait jusqu'ici
le format du fil, la signature du Store et le format du .state — ce qui couplait
le fichier au protocole alors que le ticket le décrit comme un détail interne.

Le digest est calculé sur une forme canonique partagée par les deux côtés : MAC,
IP et CIDR normalisés, hôtes triés, doublon de MAC refusé. Un écart de digest
signale donc une vraie divergence, pas une différence d'écriture.

Le listener pose un recover par connexion, plafonne les lignes à 64 Kio, refuse
une ligne malformée sans fermer la connexion, écoute en 0600 et supprime une
socket résiduelle avant le bind. Le client pose une deadline.

101 tests au total, -race propre, treize mutations toutes détectées.

Signed-off-by: GnomeZworc <nicolas.boufidjeline@g3e.fr>
2026-09-05 23:17:59 +02:00
..
api f-46: dhcpapi: add the control socket, its protocol and its client #46 2026-09-05 23:17:59 +02:00
client/dhcp f-46: dhcpapi: add the control socket, its protocol and its client #46 2026-09-05 23:17:59 +02:00
config/agent f-29: watchdog: add specific config #29 2026-08-17 23:52:48 +02:00
dhcp f-33: vm: start vms with multiple nic 2026-08-25 23:12:55 +02:00
dhcpd f-46: dhcpapi: add the control socket, its protocol and its client #46 2026-09-05 23:17:59 +02:00
dispatcher/agent f-33: net: add multi net in dispatch et vms #33 2026-08-25 22:48:13 +02:00
ebtables f-28: fix: add proper dhcp handle 2026-05-18 22:28:51 +02:00
iptables f-34: route: fix missing route for metadata #34 2026-08-24 22:57:03 +02:00
metadata f-34: route: add test for route metadata #34 2026-08-24 22:57:30 +02:00
migration f-33: net: add multi net in dispatch et vms #33 2026-08-25 22:48:13 +02:00
netif f-29: watchdog: add checkvpc #29 2026-08-17 23:39:07 +02:00
netns f-15: fix: error in netns creation 2026-04-02 23:49:48 +02:00
prometheus/agent f-37: prometheus: add vms 2026-08-14 01:00:00 +02:00
qemu f-33: vm: start vms with multiple nic 2026-08-25 23:12:55 +02:00
qmp f-25: qmp add interaction lib 2026-04-26 16:29:53 +02:00
state f-37: add new lib for state handle #37 2026-08-13 23:02:36 +02:00
subnet f-33: mise en place d'un nouveau system de reservation #33 2026-08-25 22:37:07 +02:00
vm f-33: vm: start vms with multiple nic 2026-08-25 23:12:55 +02:00
vpc f-37: code: add state lib in vm, subnet and vpc #37 2026-08-13 23:32:00 +02:00
watchdog f-33: net: add multi net in dispatch et vms #33 2026-08-25 22:48:13 +02:00