summaryrefslogtreecommitdiffstats
path: root/examples/ncclient/interfaces
diff options
context:
space:
mode:
Diffstat (limited to 'examples/ncclient/interfaces')
-rw-r--r--examples/ncclient/interfaces/af-packet/candidate_config_af_packet_interface.xml86
-rw-r--r--examples/ncclient/interfaces/af-packet/edit_config_af_packet_interface.xml34
-rwxr-xr-xexamples/ncclient/interfaces/af-packet/test_diff_af_packet.sh18
-rwxr-xr-xexamples/ncclient/interfaces/af-packet/test_edit_af_packet.sh23
-rw-r--r--examples/ncclient/interfaces/loop/candidate_config_loop_interface.xml61
-rw-r--r--examples/ncclient/interfaces/loop/edit_config_loop_interface.xml33
-rwxr-xr-xexamples/ncclient/interfaces/loop/test_diff_loopback.sh18
-rwxr-xr-xexamples/ncclient/interfaces/loop/test_edit_loopback.sh20
-rw-r--r--examples/ncclient/interfaces/tap/candidate_config_tap_interface.xml77
-rw-r--r--examples/ncclient/interfaces/tap/edit_config_tap_interface.xml34
-rwxr-xr-xexamples/ncclient/interfaces/tap/test_diff_tap.sh18
-rwxr-xr-xexamples/ncclient/interfaces/tap/test_edit_tap.sh20
12 files changed, 442 insertions, 0 deletions
diff --git a/examples/ncclient/interfaces/af-packet/candidate_config_af_packet_interface.xml b/examples/ncclient/interfaces/af-packet/candidate_config_af_packet_interface.xml
new file mode 100644
index 000000000..dd2a458b1
--- /dev/null
+++ b/examples/ncclient/interfaces/af-packet/candidate_config_af_packet_interface.xml
@@ -0,0 +1,86 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ~ Copyright (c) 2019 Cisco and/or its affiliates.
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at:
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<data xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0">
+ <nat xmlns="urn:ietf:params:xml:ns:yang:ietf-nat">
+ <instances>
+ <instance>
+ <id>0</id>
+ <policy>
+ <id>0</id>
+ </policy>
+ </instance>
+ </instances>
+ </nat>
+ <fib-table-management xmlns="http://fd.io/hc2vpp/yang/vpp-fib-table-management">
+ <fib-tables>
+ <table>
+ <table-id>0</table-id>
+ <address-family>ipv4</address-family>
+ <name>ipv4-VRF:0</name>
+ </table>
+ <table>
+ <table-id>0</table-id>
+ <address-family>ipv6</address-family>
+ <name>ipv6-VRF:0</name>
+ </table>
+ </fib-tables>
+ </fib-table-management>
+ <interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces">
+ <interface>
+ <name>local0</name>
+ <type xmlns:x="urn:ietf:params:xml:ns:yang:iana-if-type">x:ethernetCsmacd</type>
+ <enabled>false</enabled>
+ </interface>
+ <interface>
+ <name>GigabitEthernet0/9/0</name>
+ <type xmlns:x="urn:ietf:params:xml:ns:yang:iana-if-type">x:ethernetCsmacd</type>
+ <enabled>false</enabled>
+ <ethernet xmlns="http://fd.io/hc2vpp/yang/v3po">
+ <mtu>9206</mtu>
+ </ethernet>
+ </interface>
+ <interface>
+ <name>host-vethAF</name>
+ <description>VethAF host interface</description>
+ <af-packet xmlns="http://fd.io/hc2vpp/yang/v3po">
+ <host-interface-name>vethAF</host-interface-name>
+ </af-packet>
+ <ipv4 xmlns="urn:ietf:params:xml:ns:yang:ietf-ip">
+ <address>
+ <ip>10.2.0.2</ip>
+ <prefix-length>24</prefix-length>
+ </address>
+ </ipv4>
+ <type xmlns:x="http://fd.io/hc2vpp/yang/v3po">x:af-packet</type>
+ </interface>
+ </interfaces>
+ <gpe xmlns="http://fd.io/hc2vpp/yang/gpe">
+ <gpe-feature-data>
+ <enable>false</enable>
+ </gpe-feature-data>
+ </gpe>
+ <native-forward-paths-tables xmlns="http://fd.io/hc2vpp/yang/gpe">
+ <native-forward-paths-table>
+ <table-id>0</table-id>
+ </native-forward-paths-table>
+ </native-forward-paths-tables>
+ <lisp xmlns="http://fd.io/hc2vpp/yang/lisp">
+ <enable>false</enable>
+ </lisp>
+</data>
+
diff --git a/examples/ncclient/interfaces/af-packet/edit_config_af_packet_interface.xml b/examples/ncclient/interfaces/af-packet/edit_config_af_packet_interface.xml
new file mode 100644
index 000000000..f8c43673f
--- /dev/null
+++ b/examples/ncclient/interfaces/af-packet/edit_config_af_packet_interface.xml
@@ -0,0 +1,34 @@
+<!--
+ ~ Copyright (c) 2019 Cisco and/or its affiliates.
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at:
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<config>
+ <interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces">
+ <interface>
+ <name>host-vethAF</name>
+ <description>VethAF host interface</description>
+ <af-packet xmlns="http://fd.io/hc2vpp/yang/v3po">
+ <host-interface-name>vethAF</host-interface-name>
+ </af-packet>
+ <type xmlns:x="http://fd.io/hc2vpp/yang/v3po">x:af-packet</type>
+ <ipv4 xmlns="urn:ietf:params:xml:ns:yang:ietf-ip">
+ <address>
+ <ip>10.2.0.2</ip>
+ <prefix-length>24</prefix-length>
+ </address>
+ </ipv4>
+ </interface>
+ </interfaces>
+</config>
diff --git a/examples/ncclient/interfaces/af-packet/test_diff_af_packet.sh b/examples/ncclient/interfaces/af-packet/test_diff_af_packet.sh
new file mode 100755
index 000000000..8bce3b6fa
--- /dev/null
+++ b/examples/ncclient/interfaces/af-packet/test_diff_af_packet.sh
@@ -0,0 +1,18 @@
+#!/bin/bash
+#
+# Copyright (c) 2019 Cisco and/or its affiliates.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at:
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+DIR_NAME=$(dirname $0)
+
+${DIR_NAME}/../../test_diff_config.sh ${DIR_NAME}/candidate_config_af_packet_interface.xml
diff --git a/examples/ncclient/interfaces/af-packet/test_edit_af_packet.sh b/examples/ncclient/interfaces/af-packet/test_edit_af_packet.sh
new file mode 100755
index 000000000..058d47825
--- /dev/null
+++ b/examples/ncclient/interfaces/af-packet/test_edit_af_packet.sh
@@ -0,0 +1,23 @@
+#!/bin/bash
+#
+# Copyright (c) 2019 Cisco and/or its affiliates.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at:
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+DIR_NAME=$(dirname $0)
+
+# create linux side of AF-packet interface
+sudo ip link add vethAF type veth peer name vethFA
+xPath="./{urn:ietf:params:xml:ns:yang:ietf-interfaces}interfaces/\
+{urn:ietf:params:xml:ns:yang:ietf-interfaces}interface[{urn:ietf:params:xml:ns:yang:ietf-interfaces}name='host-vethAF']"
+
+${DIR_NAME}/../../test_edit_config.sh ${DIR_NAME}/edit_config_af_packet_interface.xml ${DIR_NAME}/edit_config_af_packet_interface.xml ${xPath}
diff --git a/examples/ncclient/interfaces/loop/candidate_config_loop_interface.xml b/examples/ncclient/interfaces/loop/candidate_config_loop_interface.xml
new file mode 100644
index 000000000..c477ad288
--- /dev/null
+++ b/examples/ncclient/interfaces/loop/candidate_config_loop_interface.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<data xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0">
+ <fib-table-management xmlns="http://fd.io/hc2vpp/yang/vpp-fib-table-management">
+ <fib-tables>
+ <table>
+ <table-id>0</table-id>
+ <address-family>ipv4</address-family>
+ <name>ipv4-VRF:0</name>
+ </table>
+ <table>
+ <table-id>0</table-id>
+ <address-family>ipv6</address-family>
+ <name>ipv6-VRF:0</name>
+ </table>
+ </fib-tables>
+ </fib-table-management>
+ <interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces">
+ <interface>
+ <name>local0</name>
+ <type xmlns:x="urn:ietf:params:xml:ns:yang:iana-if-type">x:ethernetCsmacd</type>
+ <enabled>false</enabled>
+ </interface>
+ <interface>
+ <name>loop0</name>
+ <type xmlns:x="http://fd.io/hc2vpp/yang/v3po">x:loopback</type>
+ <enabled>true</enabled>
+ <ipv4 xmlns="urn:ietf:params:xml:ns:yang:ietf-ip">
+ <address>
+ <ip>10.0.0.1</ip>
+ <prefix-length>24</prefix-length>
+ </address>
+ </ipv4>
+ <loopback xmlns="http://fd.io/hc2vpp/yang/v3po">
+ </loopback>
+ </interface>
+ </interfaces>
+ <nat xmlns="urn:ietf:params:xml:ns:yang:ietf-nat">
+ <instances>
+ <instance>
+ <id>0</id>
+ <policy>
+ <id>0</id>
+ </policy>
+ </instance>
+ </instances>
+ </nat>
+ <gpe xmlns="http://fd.io/hc2vpp/yang/gpe">
+ <gpe-feature-data>
+ <enable>false</enable>
+ </gpe-feature-data>
+ </gpe>
+ <native-forward-paths-tables xmlns="http://fd.io/hc2vpp/yang/gpe">
+ <native-forward-paths-table>
+ <table-id>0</table-id>
+ </native-forward-paths-table>
+ </native-forward-paths-tables>
+ <lisp xmlns="http://fd.io/hc2vpp/yang/lisp">
+ <enable>false</enable>
+ </lisp>
+</data>
+
diff --git a/examples/ncclient/interfaces/loop/edit_config_loop_interface.xml b/examples/ncclient/interfaces/loop/edit_config_loop_interface.xml
new file mode 100644
index 000000000..9dfeeadb1
--- /dev/null
+++ b/examples/ncclient/interfaces/loop/edit_config_loop_interface.xml
@@ -0,0 +1,33 @@
+<!--
+ ~ Copyright (c) 2019 Cisco and/or its affiliates.
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at:
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<config>
+ <interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces">
+ <interface>
+ <name>loop0</name>
+ <type xmlns:x="http://fd.io/hc2vpp/yang/v3po">x:loopback</type>
+ <enabled>true</enabled>
+ <ipv4 xmlns="urn:ietf:params:xml:ns:yang:ietf-ip">
+ <address>
+ <ip>10.0.0.1</ip>
+ <prefix-length>24</prefix-length>
+ </address>
+ </ipv4>
+ <loopback xmlns="http://fd.io/hc2vpp/yang/v3po">
+ </loopback>
+ </interface>
+ </interfaces>
+</config>
diff --git a/examples/ncclient/interfaces/loop/test_diff_loopback.sh b/examples/ncclient/interfaces/loop/test_diff_loopback.sh
new file mode 100755
index 000000000..fdc07ec4a
--- /dev/null
+++ b/examples/ncclient/interfaces/loop/test_diff_loopback.sh
@@ -0,0 +1,18 @@
+#!/bin/bash
+#
+# Copyright (c) 2019 Cisco and/or its affiliates.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at:
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+DIR_NAME=$(dirname $0)
+
+${DIR_NAME}/../../test_diff_config.sh ${DIR_NAME}/candidate_config_loop_interface.xml
diff --git a/examples/ncclient/interfaces/loop/test_edit_loopback.sh b/examples/ncclient/interfaces/loop/test_edit_loopback.sh
new file mode 100755
index 000000000..757d65609
--- /dev/null
+++ b/examples/ncclient/interfaces/loop/test_edit_loopback.sh
@@ -0,0 +1,20 @@
+#!/bin/bash
+#
+# Copyright (c) 2019 Cisco and/or its affiliates.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at:
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+DIR_NAME=$(dirname $0)
+xPath="./{urn:ietf:params:xml:ns:yang:ietf-interfaces}interfaces/\
+{urn:ietf:params:xml:ns:yang:ietf-interfaces}interface[{urn:ietf:params:xml:ns:yang:ietf-interfaces}name='loop0']"
+
+${DIR_NAME}/../../test_edit_config.sh ${DIR_NAME}/edit_config_loop_interface.xml ${DIR_NAME}/edit_config_loop_interface.xml ${xPath}
diff --git a/examples/ncclient/interfaces/tap/candidate_config_tap_interface.xml b/examples/ncclient/interfaces/tap/candidate_config_tap_interface.xml
new file mode 100644
index 000000000..7d0a5d667
--- /dev/null
+++ b/examples/ncclient/interfaces/tap/candidate_config_tap_interface.xml
@@ -0,0 +1,77 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ~ Copyright (c) 2019 Cisco and/or its affiliates.
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at:
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<data xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0">
+ <fib-table-management xmlns="http://fd.io/hc2vpp/yang/vpp-fib-table-management">
+ <fib-tables>
+ <table>
+ <table-id>0</table-id>
+ <address-family>ipv4</address-family>
+ <name>ipv4-VRF:0</name>
+ </table>
+ <table>
+ <table-id>0</table-id>
+ <address-family>ipv6</address-family>
+ <name>ipv6-VRF:0</name>
+ </table>
+ </fib-tables>
+ </fib-table-management>
+ <interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces">
+ <interface>
+ <name>local0</name>
+ <type xmlns:x="urn:ietf:params:xml:ns:yang:iana-if-type">x:ethernetCsmacd</type>
+ <enabled>false</enabled>
+ </interface>
+ <interface>
+ <name>tap1</name>
+ <description>TAP 1 test interface</description>
+ <tap xmlns="http://fd.io/hc2vpp/yang/v3po">
+ <tap-name>tap1</tap-name>
+ </tap>
+ <ipv4 xmlns="urn:ietf:params:xml:ns:yang:ietf-ip">
+ <address>
+ <ip>10.1.0.3</ip>
+ <prefix-length>24</prefix-length>
+ </address>
+ </ipv4>
+ <type xmlns:x="http://fd.io/hc2vpp/yang/v3po">x:tap</type>
+ </interface>
+ </interfaces>
+ <nat xmlns="urn:ietf:params:xml:ns:yang:ietf-nat">
+ <instances>
+ <instance>
+ <id>0</id>
+ <policy>
+ <id>0</id>
+ </policy>
+ </instance>
+ </instances>
+ </nat>
+ <gpe xmlns="http://fd.io/hc2vpp/yang/gpe">
+ <gpe-feature-data>
+ <enable>false</enable>
+ </gpe-feature-data>
+ </gpe>
+ <native-forward-paths-tables xmlns="http://fd.io/hc2vpp/yang/gpe">
+ <native-forward-paths-table>
+ <table-id>0</table-id>
+ </native-forward-paths-table>
+ </native-forward-paths-tables>
+ <lisp xmlns="http://fd.io/hc2vpp/yang/lisp">
+ <enable>false</enable>
+ </lisp>
+</data>
diff --git a/examples/ncclient/interfaces/tap/edit_config_tap_interface.xml b/examples/ncclient/interfaces/tap/edit_config_tap_interface.xml
new file mode 100644
index 000000000..4f03ef262
--- /dev/null
+++ b/examples/ncclient/interfaces/tap/edit_config_tap_interface.xml
@@ -0,0 +1,34 @@
+<!--
+ ~ Copyright (c) 2019 Cisco and/or its affiliates.
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at:
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<config>
+ <interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces">
+ <interface>
+ <name>tap1</name>
+ <description>TAP 1 test interface</description>
+ <tap xmlns="http://fd.io/hc2vpp/yang/v3po">
+ <tap-name>tap1</tap-name>
+ </tap>
+ <type xmlns:x="http://fd.io/hc2vpp/yang/v3po">x:tap</type>
+ <ipv4 xmlns="urn:ietf:params:xml:ns:yang:ietf-ip">
+ <address>
+ <ip>10.1.0.3</ip>
+ <prefix-length>24</prefix-length>
+ </address>
+ </ipv4>
+ </interface>
+ </interfaces>
+</config>
diff --git a/examples/ncclient/interfaces/tap/test_diff_tap.sh b/examples/ncclient/interfaces/tap/test_diff_tap.sh
new file mode 100755
index 000000000..6da56f6b1
--- /dev/null
+++ b/examples/ncclient/interfaces/tap/test_diff_tap.sh
@@ -0,0 +1,18 @@
+#!/bin/bash
+#
+# Copyright (c) 2019 Cisco and/or its affiliates.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at:
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+DIR_NAME=$(dirname $0)
+
+${DIR_NAME}/../../test_diff_config.sh ${DIR_NAME}/candidate_config_tap_interface.xml
diff --git a/examples/ncclient/interfaces/tap/test_edit_tap.sh b/examples/ncclient/interfaces/tap/test_edit_tap.sh
new file mode 100755
index 000000000..1a752cbf5
--- /dev/null
+++ b/examples/ncclient/interfaces/tap/test_edit_tap.sh
@@ -0,0 +1,20 @@
+#!/bin/bash
+#
+# Copyright (c) 2019 Cisco and/or its affiliates.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at:
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+DIR_NAME=$(dirname $0)
+xPath="./{urn:ietf:params:xml:ns:yang:ietf-interfaces}interfaces/\
+{urn:ietf:params:xml:ns:yang:ietf-interfaces}interface[{urn:ietf:params:xml:ns:yang:ietf-interfaces}name='tap1']"
+
+${DIR_NAME}/../../test_edit_config.sh ${DIR_NAME}/edit_config_tap_interface.xml ${DIR_NAME}/edit_config_tap_interface.xml ${xPath}