summaryrefslogtreecommitdiff
path: root/templates/interfaces
diff options
context:
space:
mode:
Diffstat (limited to 'templates/interfaces')
-rw-r--r--templates/interfaces/ethernet/node.def4
-rw-r--r--templates/interfaces/pseudo-ethernet/node.def7
2 files changed, 9 insertions, 2 deletions
diff --git a/templates/interfaces/ethernet/node.def b/templates/interfaces/ethernet/node.def
index 426f8f87..45d6ec09 100644
--- a/templates/interfaces/ethernet/node.def
+++ b/templates/interfaces/ethernet/node.def
@@ -20,7 +20,9 @@ begin: rm -f /tmp/speed-duplex.$VAR(@)
--set-mac "$VAR(mac/@)"
fi
-create: ip link set "$VAR(@)" up
+create: if ! cli-shell-api exists interfaces ethernet $VAR(@) disable;
+ then ip link set $VAR(@) up
+ fi
/opt/vyatta/sbin/vyatta-link-detect $VAR(@) on
delete: [ -d /sys/class/net/$VAR(../@) ] || exit 0
diff --git a/templates/interfaces/pseudo-ethernet/node.def b/templates/interfaces/pseudo-ethernet/node.def
index 5b0aaac9..4f8510f3 100644
--- a/templates/interfaces/pseudo-ethernet/node.def
+++ b/templates/interfaces/pseudo-ethernet/node.def
@@ -6,9 +6,14 @@ val_help: <pethN>; Pseudo Ethernet interface name
syntax:expression: pattern $VAR(@) "^peth[0-9]+$" \
; "name must be (peth0-peth999)"
+
commit:expression: $VAR(link) != ""
; "link device must be set for virtual ethernet $VAR(@)"
+
create: ip link add $VAR(@) link $VAR(link/@) type macvlan || exit 1
- ip link set $VAR(@) up
+ if ! cli-shell-api exists interfaces ethernet $VAR(@) disable;
+ then ip link set $VAR(@) up
+ fi
/opt/vyatta/sbin/vyatta-link-detect $VAR(@) on
+
delete: ip link delete dev $VAR(@) type macvlan