Skip to content

Commit 7e37fc4

Browse files
committed
confd: prevent IP addresses on bridge ports
Bridge ports should not have IP addresses configured. The IP address should be configured on the bridge interface itself, not its member ports. Add YANG must expression to enforce this rule at configuration time. Fixes #1122 Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
1 parent cb5d804 commit 7e37fc4

File tree

3 files changed

+13
-0
lines changed

3 files changed

+13
-0
lines changed

doc/ChangeLog.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,9 @@ All notable changes to the project are documented in this file.
3535
change infers a pool range (only) for /24 networks, and only when a pool is
3636
enabled. YANG validation for this and other use-cases is also included. As
3737
an unforeseen bonus, Infix now also support non-pool (static lease) setups
38+
- Fix #1122: Add YANG validation for consistency, IP addresses are not allowed
39+
on bridge port (interfaces). Even though Infix previously allowed this, but
40+
disregarded it operationally, it is no longer supported in the configuration
3841
- Fix #1146: Possible to set longer containers names than the system supports.
3942
Root cause, a limit of 15 characters implicitly imposed by the service mgmt
4043
daemon, Finit. The length has not been increased to 64 characters (min: 2)

src/confd/yang/confd/infix-if-bridge.yang

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,9 @@ submodule infix-if-bridge {
1515
import ietf-interfaces {
1616
prefix if;
1717
}
18+
import ietf-ip {
19+
prefix ip;
20+
}
1821
import ieee802-dot1q-types {
1922
prefix dot1q-types;
2023
}
@@ -26,6 +29,10 @@ submodule infix-if-bridge {
2629
contact "kernelkit@googlegroups.com";
2730
description "Linux bridge extension for ietf-interfaces.";
2831

32+
revision 2025-10-28 {
33+
description "Prevent IP addresses on bridge ports.";
34+
reference "internal";
35+
}
2936

3037
revision 2025-10-23 {
3138
description "Add WiFi interfaces to be able to be added to a bridge.";
@@ -918,6 +925,9 @@ submodule infix-if-bridge {
918925
description "Extension of the IETF Interfaces model (RFC7223).";
919926

920927
container bridge-port {
928+
must "not(../ip:ipv4/ip:address or ../ip:ipv6/ip:address)" {
929+
error-message "Bridge ports cannot have IP addresses configured.";
930+
}
921931
description "Bridge association and port specific settings.";
922932
uses bridge-port-common;
923933
uses bridge-port-lower {

0 commit comments

Comments
 (0)