feature-28 #30

Manually merged
nicolas.boufideline merged 18 commits from feature-28 into main 2026-05-23 20:43:51 +00:00
2 changed files with 3 additions and 18 deletions
Showing only changes of commit 91a5d7ac78 - Show all commits

f-28: bridge: fix ebtables

Signed-off-by: GnomeZworc <nicolas.boufidjeline@g3e.fr>
GnomeZworc 2026-05-18 21:11:09 +02:00
Signed by: nicolas.boufideline
GPG key ID: 4406BBBF8845D632

View file

@ -93,21 +93,15 @@ func createSubnet(db *badger.DB, subnetName string, d subnetData) error {
case "bridge":
}
applyEbtables := func() error {
switch d.mode {
case "vxlan":
if err := ebtables.DropARPToGateway(d.bridge, d.gatewayIP.String()); err != nil {
return err
}
return ebtables.DropDHCP(d.bridge)
}
switch d.mode {
case "vxlan":
if err := applyEbtables(); err != nil {
if err := ebtables.DropDHCP(d.bridge); err != nil {
return err
}
case "bridge":
if err := netns.Call(d.vpc, applyEbtables); err != nil {
return fmt.Errorf("set ebtables in netns: %w", err)
}
}
return startDHCP(db, subnetName, d)

View file

@ -99,15 +99,6 @@ func deleteSubnetVxlan(d subnetData) error {
}
func deleteSubnetBridge(d subnetData) error {
if err := netns.Call(d.vpc, func() error {
if err := ebtables.DeleteARPToGateway(d.bridge, d.gatewayIP.String()); err != nil {
return fmt.Errorf("delete ebtables arp rule: %w", err)
}
return ebtables.DeleteDHCP(d.bridge)
}); err != nil {
return fmt.Errorf("delete ebtables in netns: %w", err)
}
if err := netns.Call(d.vpc, func() error {
return netif.DeleteLink(d.bridge)
}); err != nil {