diff options
Diffstat (limited to 'templates/protocols/ospf/distance')
6 files changed, 41 insertions, 0 deletions
diff --git a/templates/protocols/ospf/distance/global/node.def b/templates/protocols/ospf/distance/global/node.def new file mode 100644 index 00000000..6b45a976 --- /dev/null +++ b/templates/protocols/ospf/distance/global/node.def @@ -0,0 +1,9 @@ +type: u32 +help: "OSPF administrative distance" +syntax: $(@) >= 1 && $(@) <= 255; "Must be between 1-255" +update: "/usr/bin/vtysh -c \"configure terminal\" -c \"router ospf\" \ + -c \"distance $(@) \"; " +delete: "/usr/bin/vtysh -c \"configure terminal\" -c \"router ospf\" \ + -c \"no distance $(@) \"; " + + diff --git a/templates/protocols/ospf/distance/node.def b/templates/protocols/ospf/distance/node.def new file mode 100644 index 00000000..fdc52f32 --- /dev/null +++ b/templates/protocols/ospf/distance/node.def @@ -0,0 +1 @@ +help: "Define an administrative distance" diff --git a/templates/protocols/ospf/distance/ospf/external/node.def b/templates/protocols/ospf/distance/ospf/external/node.def new file mode 100644 index 00000000..696e14b7 --- /dev/null +++ b/templates/protocols/ospf/distance/ospf/external/node.def @@ -0,0 +1,4 @@ +type: u32 +help: "Define a distance for external routes" +syntax: $(@) >= 1 && $(@) <= 255; "Must be between 1-255" + diff --git a/templates/protocols/ospf/distance/ospf/inter-area/node.def b/templates/protocols/ospf/distance/ospf/inter-area/node.def new file mode 100644 index 00000000..1e2fa5ba --- /dev/null +++ b/templates/protocols/ospf/distance/ospf/inter-area/node.def @@ -0,0 +1,4 @@ +type: u32 +help: "Define a distance for inter-area routes" +syntax: $(@) >= 1 && $(@) <= 255; "Must be between 1-255" + diff --git a/templates/protocols/ospf/distance/ospf/intra-area/node.def b/templates/protocols/ospf/distance/ospf/intra-area/node.def new file mode 100644 index 00000000..cae2bf0f --- /dev/null +++ b/templates/protocols/ospf/distance/ospf/intra-area/node.def @@ -0,0 +1,4 @@ +type: u32 +help: "Define a distance for intra-area routes" +syntax: $(@) >= 1 && $(@) <= 255; "Must be between 1-255" + diff --git a/templates/protocols/ospf/distance/ospf/node.def b/templates/protocols/ospf/distance/ospf/node.def new file mode 100644 index 00000000..cd64dd88 --- /dev/null +++ b/templates/protocols/ospf/distance/ospf/node.def @@ -0,0 +1,19 @@ +help: "OSPF administrative distance" +delete: "touch /tmp/ospf-distance.\\$PPID" +end: "if [ -f \"/tmp/ospf-distance.\\$PPID\" ]; then \ + /usr/bin/vtysh -c \"configure terminal\" -c \"router ospf\" \ + -c \"no distance ospf\"; \ + rm /tmp/ospf-distance.\\$PPID; \ + else \ + if [ -n \"$(./intra-area/@)\" ]; then \ + PARM=\"intra-area $(./intra-area/@)\"; \ + fi; \ + if [ -n \"$(./inter-area/@)\" ]; then \ + PARM=\"\\$PARM inter-area $(./inter-area/@)\"; \ + fi; \ + if [ -n \"$(./external/@)\" ]; then \ + PARM=\"\\$PARM external $(./external/@)\"; \ + fi; \ + /usr/bin/vtysh -c \"configure terminal\" -c \"router ospf\" \ + -c \"no distance ospf\" -c \"distance ospf \\$PARM\"; \ + fi; " |