summaryrefslogtreecommitdiff
path: root/interface-templates/ip
diff options
context:
space:
mode:
Diffstat (limited to 'interface-templates/ip')
-rw-r--r--interface-templates/ip/node.def1
-rw-r--r--interface-templates/ip/ospf/authentication/md5/key-id/node.def16
-rw-r--r--interface-templates/ip/ospf/authentication/md5/key-id/node.tag/md5-key/node.def9
-rw-r--r--interface-templates/ip/ospf/authentication/md5/key-id/node.tag/node.def1
-rw-r--r--interface-templates/ip/ospf/authentication/md5/node.def5
-rw-r--r--interface-templates/ip/ospf/authentication/node.def2
-rw-r--r--interface-templates/ip/ospf/authentication/plaintext-password/node.def10
-rw-r--r--interface-templates/ip/ospf/bandwidth/node.def7
-rw-r--r--interface-templates/ip/ospf/cost/node.def11
-rw-r--r--interface-templates/ip/ospf/dead-interval/node.def8
-rw-r--r--interface-templates/ip/ospf/hello-interval/node.def8
-rw-r--r--interface-templates/ip/ospf/mtu-ignore/node.def3
-rw-r--r--interface-templates/ip/ospf/network/node.def11
-rw-r--r--interface-templates/ip/ospf/node.def2
-rw-r--r--interface-templates/ip/ospf/priority/node.def8
-rw-r--r--interface-templates/ip/ospf/retransmit-interval/node.def10
-rw-r--r--interface-templates/ip/ospf/transmit-delay/node.def8
-rw-r--r--interface-templates/ip/rip/authentication/md5/node.def8
-rw-r--r--interface-templates/ip/rip/authentication/md5/node.tag/node.def1
-rw-r--r--interface-templates/ip/rip/authentication/md5/node.tag/password/node.def19
-rw-r--r--interface-templates/ip/rip/authentication/node.def1
-rw-r--r--interface-templates/ip/rip/authentication/plaintext-password/node.def13
-rw-r--r--interface-templates/ip/rip/node.def2
-rw-r--r--interface-templates/ip/rip/split-horizon/disable/node.def6
-rw-r--r--interface-templates/ip/rip/split-horizon/node.def1
-rw-r--r--interface-templates/ip/rip/split-horizon/poison-reverse/node.def9
26 files changed, 180 insertions, 0 deletions
diff --git a/interface-templates/ip/node.def b/interface-templates/ip/node.def
new file mode 100644
index 00000000..92e252e1
--- /dev/null
+++ b/interface-templates/ip/node.def
@@ -0,0 +1 @@
+help: Set IPv4 parameters for specified interface
diff --git a/interface-templates/ip/ospf/authentication/md5/key-id/node.def b/interface-templates/ip/ospf/authentication/md5/key-id/node.def
new file mode 100644
index 00000000..630bd3f0
--- /dev/null
+++ b/interface-templates/ip/ospf/authentication/md5/key-id/node.def
@@ -0,0 +1,16 @@
+tag:
+type: u32
+help: Set MD5 key id
+syntax:expression: $VAR(@) >= 1 && $VAR(@) <= 255; "ID must be between (1-255)"
+commit:expression: $VAR(md5-key/) != ""; "Must add the md5-key for key-id $VAR(@)"
+delete:touch /tmp/ospf-md5.$PPID
+
+end: if [ -f /tmp/ospf-md5.$PPID ]
+ then vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" \
+ -c "no ip ospf message-digest-key $VAR(@)"
+ rm /tmp/ospf-md5.$PPID \
+ else vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" \
+ -c "ip ospf message-digest-key $VAR(@) md5 $VAR(md5-key/@)"
+ fi
+comp_help: possible completions:
+ <1-255> Set the key id
diff --git a/interface-templates/ip/ospf/authentication/md5/key-id/node.tag/md5-key/node.def b/interface-templates/ip/ospf/authentication/md5/key-id/node.tag/md5-key/node.def
new file mode 100644
index 00000000..5efd3ef7
--- /dev/null
+++ b/interface-templates/ip/ospf/authentication/md5/key-id/node.tag/md5-key/node.def
@@ -0,0 +1,9 @@
+type: txt
+help: Set md5 key
+syntax:expression: exec " \
+ if [ `echo -n '$VAR(@)' | wc -c` -gt 16 ]; then \
+ echo MD5 key must be 16 characters or less ; \
+ exit 1 ; \
+ fi ; "
+comp_help: possible completions:
+ <text> MD5 Key (16 characters or less)
diff --git a/interface-templates/ip/ospf/authentication/md5/key-id/node.tag/node.def b/interface-templates/ip/ospf/authentication/md5/key-id/node.tag/node.def
new file mode 100644
index 00000000..d14a2583
--- /dev/null
+++ b/interface-templates/ip/ospf/authentication/md5/key-id/node.tag/node.def
@@ -0,0 +1 @@
+help: Set md5 key
diff --git a/interface-templates/ip/ospf/authentication/md5/node.def b/interface-templates/ip/ospf/authentication/md5/node.def
new file mode 100644
index 00000000..9389c838
--- /dev/null
+++ b/interface-templates/ip/ospf/authentication/md5/node.def
@@ -0,0 +1,5 @@
+help: Set MD5 key id
+update:vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" \
+ -c "no ip ospf authentication" -c "ip ospf authentication message-digest"
+delete:vyatta-vtysh -c "configure terminal" -c "interface $IFNAME"
+ -c "no ip ospf authentication"
diff --git a/interface-templates/ip/ospf/authentication/node.def b/interface-templates/ip/ospf/authentication/node.def
new file mode 100644
index 00000000..ff352a01
--- /dev/null
+++ b/interface-templates/ip/ospf/authentication/node.def
@@ -0,0 +1,2 @@
+help: Set OSPF interface authentication
+
diff --git a/interface-templates/ip/ospf/authentication/plaintext-password/node.def b/interface-templates/ip/ospf/authentication/plaintext-password/node.def
new file mode 100644
index 00000000..4b31f0d8
--- /dev/null
+++ b/interface-templates/ip/ospf/authentication/plaintext-password/node.def
@@ -0,0 +1,10 @@
+type: txt
+help: Configure plain text password
+syntax:expression: pattern $VAR(@) "^[^[:space:]]{1,8}$" ; "Password must be 8 characters or less"
+update:vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" \
+ -c "no ip ospf authentication " -c "ip ospf authentication " \
+ -c "ip ospf authentication-key $VAR(@)"
+delete:vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" \
+ -c "no ip ospf authentication " -c "no ip ospf authentication-key"
+comp_help: possible completions:
+ <text> Plain text password (8 characters or less)
diff --git a/interface-templates/ip/ospf/bandwidth/node.def b/interface-templates/ip/ospf/bandwidth/node.def
new file mode 100644
index 00000000..1f77079f
--- /dev/null
+++ b/interface-templates/ip/ospf/bandwidth/node.def
@@ -0,0 +1,7 @@
+type: u32
+help: Set bandwidth for specified interface (kilobits/sec)
+syntax:expression: $VAR(@) >= 1 && $VAR(@) <= 10000000; "Must be between 1-10000000"
+update: vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" -c "bandwidth $VAR(@)"
+delete: vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" -c "no bandwidth"
+comp_help: possible completions:
+ <1-10000000> Set bandwidth in kilobits/sec (for calculating OSPF cost)
diff --git a/interface-templates/ip/ospf/cost/node.def b/interface-templates/ip/ospf/cost/node.def
new file mode 100644
index 00000000..da8b545e
--- /dev/null
+++ b/interface-templates/ip/ospf/cost/node.def
@@ -0,0 +1,11 @@
+type: u32
+help: Set interface cost
+syntax:expression: $VAR(@) >= 1 && $VAR(@) <= 65535; "Must be between 1-65535"
+update:vyatta-vtysh -c "configure terminal" \
+ -c "interface $IFNAME" \
+ -c "ip ospf cost $VAR(@)"
+delete:vyatta-vtysh -c "configure terminal" \
+ -c "interface $IFNAME" \
+ -c "no ip ospf cost"
+comp_help: possible completions:
+ <1-65535> Set Cost
diff --git a/interface-templates/ip/ospf/dead-interval/node.def b/interface-templates/ip/ospf/dead-interval/node.def
new file mode 100644
index 00000000..72988f9c
--- /dev/null
+++ b/interface-templates/ip/ospf/dead-interval/node.def
@@ -0,0 +1,8 @@
+type: u32
+help: Set interval after which a neighbor is declared dead
+default: 40
+syntax:expression: $VAR(@) >= 1 && $VAR(@) <= 65535; "Must be between 1-65535"
+update:vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" -c "ip ospf dead-interval $VAR(@)"
+delete:vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" -c "no ip ospf dead-interval "; "
+comp_help: possible completions:
+ <1-65535> Seconds (default 40)
diff --git a/interface-templates/ip/ospf/hello-interval/node.def b/interface-templates/ip/ospf/hello-interval/node.def
new file mode 100644
index 00000000..9da68fb1
--- /dev/null
+++ b/interface-templates/ip/ospf/hello-interval/node.def
@@ -0,0 +1,8 @@
+type: u32
+help: Set interval between hello packets
+default: 10
+syntax:expression: $VAR(@) >= 1 && $VAR(@) <= 65535; "Must be between 1-65535"
+update:vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" -c "ip ospf hello-interval $VAR(@)"
+delete:vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" -c "no ip ospf hello-interval"
+comp_help: possible completions:
+ <1-65535> Seconds (default 10)
diff --git a/interface-templates/ip/ospf/mtu-ignore/node.def b/interface-templates/ip/ospf/mtu-ignore/node.def
new file mode 100644
index 00000000..e2c897e7
--- /dev/null
+++ b/interface-templates/ip/ospf/mtu-ignore/node.def
@@ -0,0 +1,3 @@
+help: Disable Maximum Transmission Unit (MTU) mismatch detection
+create:vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" -c "ip ospf mtu-ignore"
+delete:vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" -c "no ip ospf mtu-ignore"
diff --git a/interface-templates/ip/ospf/network/node.def b/interface-templates/ip/ospf/network/node.def
new file mode 100644
index 00000000..bac9d333
--- /dev/null
+++ b/interface-templates/ip/ospf/network/node.def
@@ -0,0 +1,11 @@
+type: txt
+help: Set network type
+syntax:expression: $VAR(@) in "broadcast", "non-broadcast", "point-to-multipoint", "point-to-point"; \
+ "Must be (broadcast|non-broadcast|point-to-multipoint|point-to-point)"
+update:vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" -c "ip ospf network $VAR(@)"
+delete:vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" -c "no ip ospf network"
+comp_help: possible completions:
+ broadcast Set broadcast network type
+ non-broadcast Set non-broadcast network type
+ point-to-multipoint Set point-to-multipoint network type
+ point-to-point Set point-to-point network type
diff --git a/interface-templates/ip/ospf/node.def b/interface-templates/ip/ospf/node.def
new file mode 100644
index 00000000..31980774
--- /dev/null
+++ b/interface-templates/ip/ospf/node.def
@@ -0,0 +1,2 @@
+help: Set Open Shortest Path First (OSPF) parameters for specified interface
+create: sudo /opt/vyatta/sbin/quagga-manager check ospfd
diff --git a/interface-templates/ip/ospf/priority/node.def b/interface-templates/ip/ospf/priority/node.def
new file mode 100644
index 00000000..152cff9a
--- /dev/null
+++ b/interface-templates/ip/ospf/priority/node.def
@@ -0,0 +1,8 @@
+type: u32
+help: Set router priority
+default: 1
+syntax:expression: $VAR(@) >= 0 && $VAR(@) <= 255; "Must be between 0-255"
+update:vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" -c "ip ospf priority $VAR(@)"
+delete:vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" -c "no ip ospf priority "
+comp_help: possible completions:
+ <0-255> Priority (default 1)
diff --git a/interface-templates/ip/ospf/retransmit-interval/node.def b/interface-templates/ip/ospf/retransmit-interval/node.def
new file mode 100644
index 00000000..41dbe810
--- /dev/null
+++ b/interface-templates/ip/ospf/retransmit-interval/node.def
@@ -0,0 +1,10 @@
+type: u32
+help: Set interval between retransmitting lost link state advertisements
+default: 5
+syntax:expression: $VAR(@) >= 3 && $VAR(@) <= 65535; "Must be between 3-65535"
+update: vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" \
+ -c "ip ospf retransmit-interval $VAR(@)"
+delete: vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" \
+ -c "no ip ospf retransmit-interval"
+comp_help: possible completions:
+ <3-65535> Seconds (default 5)
diff --git a/interface-templates/ip/ospf/transmit-delay/node.def b/interface-templates/ip/ospf/transmit-delay/node.def
new file mode 100644
index 00000000..761424da
--- /dev/null
+++ b/interface-templates/ip/ospf/transmit-delay/node.def
@@ -0,0 +1,8 @@
+type: u32
+help: Set link state transmit delay
+default: 1
+syntax:expression: $VAR(@) >= 1 && $VAR(@) <= 65535; "Must be between 1-65535"
+update:vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" -c "ip ospf transmit-delay $VAR(@)"
+delete:vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" -c "no ip ospf transmit-delay"
+comp_help: possible completions:
+ <1-65535> Seconds (default 1)
diff --git a/interface-templates/ip/rip/authentication/md5/node.def b/interface-templates/ip/rip/authentication/md5/node.def
new file mode 100644
index 00000000..8d165fe6
--- /dev/null
+++ b/interface-templates/ip/rip/authentication/md5/node.def
@@ -0,0 +1,8 @@
+tag:
+type: u32
+help: Set MD5 authentication key ID
+syntax:expression: $VAR(@) >= 1 && $VAR(@) <= 255; \
+ "ID must be between 1 and 255"
+
+commit:expression: $VAR(../plaintext-password/) == "" ; \
+ "plaintext-password already set"
diff --git a/interface-templates/ip/rip/authentication/md5/node.tag/node.def b/interface-templates/ip/rip/authentication/md5/node.tag/node.def
new file mode 100644
index 00000000..488acd8c
--- /dev/null
+++ b/interface-templates/ip/rip/authentication/md5/node.tag/node.def
@@ -0,0 +1 @@
+help: Set authentication password
diff --git a/interface-templates/ip/rip/authentication/md5/node.tag/password/node.def b/interface-templates/ip/rip/authentication/md5/node.tag/password/node.def
new file mode 100644
index 00000000..1d675b0b
--- /dev/null
+++ b/interface-templates/ip/rip/authentication/md5/node.tag/password/node.def
@@ -0,0 +1,19 @@
+type: txt
+help: Set authentication password
+syntax:expression: pattern $VAR(@) "^[^[:space:]]{1,16}" ; "MD5 key must be 16 characters or less"
+
+update:vyatta-vtysh \
+ -c "configure terminal" -c "interface $IFNAME" \
+ -c "ip rip authentication mode md5" \
+ -c "ip rip authentication key-chain $IFNAME-rip" \
+ -c "key chain $IFNAME-rip" -c "key $VAR(../@)" \
+ -c "key-string $VAR(@)"
+
+delete:vyatta-vtysh --noerror \
+ -c "configure terminal" -c "interface $IFNAME" \
+ -c "no ip rip authentication mode md5" \
+ -c "no ip rip authentication key-chain $IFNAME-rip" \
+ -c "no key chain $IFNAME-rip" "
+
+comp_help: possible completions:
+ <text> MD5 Key (16 characters or less)
diff --git a/interface-templates/ip/rip/authentication/node.def b/interface-templates/ip/rip/authentication/node.def
new file mode 100644
index 00000000..8756de35
--- /dev/null
+++ b/interface-templates/ip/rip/authentication/node.def
@@ -0,0 +1 @@
+help: Set authentication method
diff --git a/interface-templates/ip/rip/authentication/plaintext-password/node.def b/interface-templates/ip/rip/authentication/plaintext-password/node.def
new file mode 100644
index 00000000..f4fefb78
--- /dev/null
+++ b/interface-templates/ip/rip/authentication/plaintext-password/node.def
@@ -0,0 +1,13 @@
+type: txt
+help: Set plain text password
+syntax:expression: pattern $VAR(@) "^[^[:space:]{1,16}$" ; "Password must be 16 characters or less"
+commit:expression: $VAR(../md5/) == "" ; "md5 password already set"
+
+update: vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" \
+ -c "ip rip authentication mode text" -c "ip rip authentication string $VAR(@)";
+
+delete: vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" \
+ -c "no ip rip authentication mode" -c "no ip rip authentication string $VAR(@)";
+
+comp_help: possible completions:
+ <text> Password (16 characters or less)
diff --git a/interface-templates/ip/rip/node.def b/interface-templates/ip/rip/node.def
new file mode 100644
index 00000000..b01a779f
--- /dev/null
+++ b/interface-templates/ip/rip/node.def
@@ -0,0 +1,2 @@
+help: Set Routing Information Protocol (RIP) for specified interface
+create: sudo /opt/vyatta/sbin/quagga-manager check ripd
diff --git a/interface-templates/ip/rip/split-horizon/disable/node.def b/interface-templates/ip/rip/split-horizon/disable/node.def
new file mode 100644
index 00000000..10c57ba4
--- /dev/null
+++ b/interface-templates/ip/rip/split-horizon/disable/node.def
@@ -0,0 +1,6 @@
+help: Disable split horizon on specified interface
+create:vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" -c "no ip rip split-horizon "
+delete:vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" -c "ip rip split-horizon " "
+
+commit:expression: ($VAR(../poison-reverse/) == ""); \
+ "You cannot have 'split-horizon poison-reverse' enabled with 'split-horizon' disabled for $IFNAME"
diff --git a/interface-templates/ip/rip/split-horizon/node.def b/interface-templates/ip/rip/split-horizon/node.def
new file mode 100644
index 00000000..ba39b616
--- /dev/null
+++ b/interface-templates/ip/rip/split-horizon/node.def
@@ -0,0 +1 @@
+help: Set to control split horizon parameters on this interface
diff --git a/interface-templates/ip/rip/split-horizon/poison-reverse/node.def b/interface-templates/ip/rip/split-horizon/poison-reverse/node.def
new file mode 100644
index 00000000..07cb8944
--- /dev/null
+++ b/interface-templates/ip/rip/split-horizon/poison-reverse/node.def
@@ -0,0 +1,9 @@
+help: Enable poison reverse for split-horizon
+create:vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" \
+ -c "ip rip split-horizon poisoned-reverse"
+
+delete:vyatta-vtysh -c "configure terminal" -c "interface $IFNAME" \
+ -c "no ip rip split-horizon" -c "ip rip split-horizon "
+
+commit:expression: ($VAR(../disable/) == ""); \
+ "You cannot have 'split-horizon poison-reverse' enabled with 'split-horizon' disabled for $IFNAME"