Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?xml version="1.0" encoding="UTF-8"?>
- <CLISH_MODULE xmlns="http://clish.sourceforge.net/XMLSchema"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://clish.sourceforge.net/XMLSchema
- http://clish.sourceforge.net/XMLSchema/clish.xsd">
- <!--=======================================================-->
- <!-- Range Interfaces View
- ####################### -->
- <VIEW name="configure-range-view"
- prompt="${KHOSTNAME}(config-if)# "
- depth="1">
- <COMMAND name="exit"
- help="Exit from interface configuration mode"
- viewid="SYSTEM_NAME=${SYSTEM_NAME}"
- lock="false">
- <ACTION builtin="clish_nested_up"/>
- </COMMAND>
- </VIEW>
- <VIEW name="configure-view">
- <COMMAND name="interface range"
- help="Apply commands to a range of ports"
- view="configure-range-view"
- viewid="iface-range">
- <PARAM name="interface_method"
- help="Method to get interface information"
- optional="false"
- ptype="SUBCOMMAND"
- mode="switch">
- <PARAM name="FastEthernet"
- help="FastEthernet IEEE 802.3"
- ptype="SUBCOMMAND"
- mode="subcommand">
- <PARAM name="iface_num"
- help="FastEthernet interface number"
- ptype="IFACE_NUM">
- </PARAM>
- </PARAM>
- <PARAM name="GigabitEthernet"
- help="GigabitEthernet IEEE 802.3z"
- ptype="SUBCOMMAND"
- mode="subcommand">
- <PARAM name="iface_num"
- help="GigabitEthernet interface number"
- ptype="GIGETH_NUM">
- </PARAM>
- </PARAM>
- </PARAM>
- <PARAM name="range_separator"
- help="Method to get interface information"
- optional="true"
- ptype="interface_range">
- <PARAM name="iface_num2"
- test='"${interface_method}"="FastEthernet" -a "${range_separator}"="-"'
- help="FastEthernet interface number"
- ptype="FA_SUFFIX">
- </PARAM>
- <PARAM name="iface_num2"
- test='"${interface_method}"="GigabitEthernet" -a "${range_separator}"="-"'
- help="GigabitEthernet interface number"
- ptype="GIGETH_NUM">
- </PARAM>
- <PARAM name="range_separator2"
- test='"${range_separator}"="-"'
- help="comma"
- optional="true"
- ptype="interface_comma">
- </PARAM>
- <PARAM name="interface_method2"
- help="Method to get interface information"
- optional="true"
- ptype="SUBCOMMAND"
- mode="switch">
- <PARAM name="FastEthernet"
- help="FastEthernet IEEE 802.3"
- ptype="SUBCOMMAND"
- mode="subcommand">
- <PARAM name="iface_num3"
- help="FastEthernet interface number"
- ptype="IFACE_NUM">
- </PARAM>
- </PARAM>
- <PARAM name="GigabitEthernet"
- help="GigabitEthernet IEEE 802.3z"
- ptype="SUBCOMMAND"
- mode="subcommand">
- <PARAM name="iface_num3"
- help="GigabitEthernet interface number"
- ptype="GIGETH_NUM">
- </PARAM>
- </PARAM>
- </PARAM>
- <PARAM name="range_separator3"
- help="Method to get interface information"
- optional="true"
- test='"${interface_method2}"="FastEthernet" -o "${interface_method2}"="GigabitEthernet"'
- ptype="interface_range">
- </PARAM>
- <PARAM name="iface_num4"
- test='"${interface_method2}"="FastEthernet" -a "${range_separator3}"="-"'
- help="FastEthernet interface number"
- ptype="FA_SUFFIX">
- </PARAM>
- <PARAM name="iface_num4"
- test='"${interface_method2}"="GigabitEthernet" -a "${range_separator3}"="-"'
- help="GigabitEthernet interface number"
- ptype="GIGETH_NUM">
- </PARAM>
- <PARAM name="range_separator4"
- test='"${range_separator3}"="-"'
- help="comma"
- optional="true"
- ptype="interface_comma">
- </PARAM>
- <PARAM name="interface_method3"
- test='"${range_separator3}'
- help="Method to get interface information"
- optional="true"
- ptype="SUBCOMMAND"
- mode="switch">
- <PARAM name="FastEthernet"
- help="FastEthernet IEEE 802.3"
- ptype="SUBCOMMAND"
- mode="subcommand">
- <PARAM name="iface_num5"
- help="FastEthernet interface number"
- ptype="IFACE_NUM">
- </PARAM>
- </PARAM>
- <PARAM name="GigabitEthernet"
- help="GigabitEthernet IEEE 802.3z"
- ptype="SUBCOMMAND"
- mode="subcommand">
- <PARAM name="iface_num5"
- help="GigabitEthernet interface number"
- ptype="GIGETH_NUM">
- </PARAM>
- </PARAM>
- </PARAM>
- <PARAM name="range_separator5"
- test='"${interface_method3}"="FastEthernet" -o "${interface_method3}"="GigabitEthernet"'
- help="Method to get interface information"
- optional="true"
- ptype="interface_range">
- </PARAM>
- <PARAM name="iface_num6"
- test='"${interface_method3}"="FastEthernet" -a "${range_separator5}"="-"'
- help="FastEthernet interface number"
- ptype="FA_SUFFIX">
- </PARAM>
- <PARAM name="iface_num6"
- test='"${interface_method3}"="GigabitEthernet" -a "${range_separator5}"="-"'
- help="GigabitEthernet interface number"
- ptype="GIGETH_NUM">
- </PARAM>
- <PARAM name="range_separator6"
- test='"${range_separator5}"="-"'
- help="comma"
- optional="true"
- ptype="interface_comma">
- </PARAM>
- <PARAM name="interface_method4"
- test='"${interface_method3}"="FastEthernet" -o "${interface_method3}"="GigabitEthernet"'
- help="Method to get interface information"
- optional="true"
- ptype="SUBCOMMAND"
- mode="switch">
- <PARAM name="FastEthernet"
- help="FastEthernet IEEE 802.3"
- ptype="SUBCOMMAND"
- mode="subcommand">
- <PARAM name="iface_num7"
- help="FastEthernet interface number"
- ptype="IFACE_NUM">
- </PARAM>
- </PARAM>
- <PARAM name="GigabitEthernet"
- help="GigabitEthernet IEEE 802.3z"
- ptype="SUBCOMMAND"
- mode="subcommand">
- <PARAM name="iface_num7"
- help="GigabitEthernet interface number"
- ptype="GIGETH_NUM">
- </PARAM>
- </PARAM>
- </PARAM>
- <PARAM name="range_separator7"
- test='"${interface_method4}"="FastEthernet" -o "${interface_method4}"="GigabitEthernet"'
- help="hyphen"
- optional="true"
- ptype="interface_hyphen">
- </PARAM>
- <PARAM name="iface_num8"
- test='"${interface_method4}"="FastEthernet" -a "${range_separator7}"="-"'
- help="FastEthernet interface number"
- ptype="FA_SUFFIX">
- </PARAM>
- <PARAM name="iface_num8"
- test='"${interface_method4}"="GigabitEthernet" -a "${range_separator7}"="-"'
- help="GigabitEthernet interface number"
- ptype="GIGETH_NUM">
- </PARAM>
- </PARAM>
- <ACTION>
- /klas/klish-scripts/ifrange.py validate_range --range "${interface_method} ${iface_num} ${range_separator} ${iface_num2} ${range_separator2} ${interface_method2} ${iface_num3} ${range_separator3} ${iface_num4} ${range_separator4} ${interface_method3} ${iface_num5} ${range_separator5} ${iface_num6} ${range_separator6} ${interface_method4} ${iface_num7} ${range_separator7} ${iface_num8}"
- if [[ $? -eq 0 ]]; then
- /klas/klish-scripts/ifrange.py run_command --cmdrange "${interface_method} ${iface_num} ${range_separator} ${iface_num2} ${range_separator2} ${interface_method2} ${iface_num3} ${range_separator3} ${iface_num4} ${range_separator4} ${interface_method3} ${iface_num5} ${range_separator5} ${iface_num6} ${range_separator6} ${interface_method4} ${iface_num7} ${range_separator7} ${iface_num8}" --command "/klas/klish-scripts/interfaces.py conf -i {iface} --enable 0" --klish_config "shutdown" --klish_action "set" --priority "0x7F01"
- fi
- </ACTION>
- </COMMAND>
- <COMMAND name="shutdown"
- help="Shutdown the selected interface">
- <CONFIG priority="0x7F01" />
- <ACTION>
- /klas/klish-scripts/interfaces.py conf -i ${iface} --enable 0
- </ACTION>
- </COMMAND>
- <COMMAND name="no shutdown"
- help="Enable the selected interface">
- <CONFIG operation="unset" pattern="shutdown"/>
- <ACTION>
- /klas/klish-scripts/interfaces.py conf -i ${iface} --enable 1
- </ACTION>
- </COMMAND>
- </VIEW>
- <a>
- </a>
- </CLISH_MODULE>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement