summaryrefslogtreecommitdiff
path: root/op-mode-definitions/show-protocols.xml.in
blob: d595e2c3cc5e8c4b4145a42151c48c03fa55405f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
<?xml version="1.0"?>
<interfaceDefinition>
  <node name="show">
    <children>
      <node name="protocols">
        <properties>
          <help>Show protocol specific information</help>
        </properties>
        <children>
          <node name="bfd">
            <properties>
              <help>Show Bidirectional Forwarding Detection (BFD)</help>
            </properties>
            <children>
              <node name="peer">
                <properties>
                  <help>Show all Bidirectional Forwarding Detection (BFD) peer status</help>
                </properties>
                <command>vtysh -c "show bfd peers"</command>
                <children>
                  <leafNode name="counters">
                    <properties>
                      <help>Show Bidirectional Forwarding Detection (BFD) peer counters</help>
                    </properties>
                    <command>vtysh -c "show bfd peers counters"</command>
                  </leafNode>
                </children>
              </node>
              <tagNode name="peer">
                <properties>
                  <help>Show Bidirectional Forwarding Detection (BFD) peer status</help>
                  <completionHelp>
                    <script>vtysh -c "show bfd peers" | awk '/[:blank:]*peer/ { printf "%s\n", $2 }'</script>
                  </completionHelp>
                </properties>
                <command>vtysh -c "show bfd peers" | awk -v BFD_PEER=$5 'BEGIN { regex = sprintf("(peer %s.*)vrf", BFD_PEER) } { if (match($0, regex, bfd_peer_value)) peer=bfd_peer_value[1] } END { if (peer) system("vtysh -c \"show bfd " peer "\"") }'</command>
                <children>
                  <leafNode name="counters">
                    <properties>
                      <help>Show Bidirectional Forwarding Detection (BFD) peer counters</help>
                    </properties>
                    <command>vtysh -c "show bfd peers" | awk -v BFD_PEER=$5 'BEGIN { regex = sprintf("(peer %s.*)vrf", BFD_PEER) } { if (match($0, regex, bfd_peer_value)) peer=bfd_peer_value[1] } END { if (peer) system("vtysh -c \"show bfd " peer " counters\"") }'</command>
                  </leafNode>
                </children>
              </tagNode>
              <leafNode name="peers">
                <properties>
                  <help>Show Bidirectional Forwarding Detection (BFD) peers brief</help>
                </properties>
                <command>vtysh -c "show bfd peers brief"</command>
              </leafNode>
            </children>
          </node>
          <node name="static">
            <properties>
              <help>Show static protocol parameters</help>
            </properties>
            <children>
              <node name="arp">
                <properties>
                  <help>Show Address Resolution Protocol (ARP) information</help>
                </properties>
                <command>/usr/sbin/arp -e -n</command>
                <children>
                  <tagNode name="interface">
                    <properties>
                      <help>Show Address Resolution Protocol (ARP) cache for specified interface</help>
                      <completionHelp>
                        <script>${vyos_completion_dir}/list_interfaces.py -b</script>
                      </completionHelp>
                    </properties>
                    <command>/usr/sbin/arp -e -n -i "$6"</command>
                  </tagNode>
                </children>
              </node>
            </children>
          </node>
        </children>
      </node>
    </children>
  </node>
</interfaceDefinition>