From 1dc41de586eac3251404f33f152d9a0b3d9a6c2f Mon Sep 17 00:00:00 2001
From: thl-cmk <thl-cmk@outlook.com>
Date: Sat, 3 Jun 2023 17:40:20 +0000
Subject: [PATCH] Delete ospfv3.py

---
 web/plugins/wato/ospfv3.py | 372 -------------------------------------
 1 file changed, 372 deletions(-)
 delete mode 100644 web/plugins/wato/ospfv3.py

diff --git a/web/plugins/wato/ospfv3.py b/web/plugins/wato/ospfv3.py
deleted file mode 100644
index 2ef3fb3..0000000
--- a/web/plugins/wato/ospfv3.py
+++ /dev/null
@@ -1,372 +0,0 @@
-#!/usr/bin/env python3
-# -*- coding: utf-8 -*-
-#
-# License: GNU General Public License v2
-#
-# Author: thl-cmk[at]outlook[dot]com
-# URL   : https://thl-cmk.hopto.org
-# Date  : 2021-09-28
-#
-# wato plugin for ospfv3 check
-#
-# 2022-11-30: fixed CheckParameterRulespecWithoutItem (from CheckParameterRulespecWithItem)
-#
-from cmk.gui.i18n import _
-from cmk.gui.valuespec import (
-    Dictionary,
-    TextAscii,
-    ListOf,
-    Tuple,
-    TextUnicode,
-    MonitoringState,
-    FixedValue,
-)
-
-from cmk.gui.plugins.wato import (
-    CheckParameterRulespecWithItem,
-    CheckParameterRulespecWithoutItem,
-    rulespec_registry,
-    RulespecGroupCheckParametersNetworking,
-    RulespecGroupCheckParametersDiscovery,
-    HostRulespec,
-)
-
-neighbor_states = ('neighbor_states',
-                   Dictionary(
-                       title=_('State to report for OSPF neighbor state'),
-                       help=_('Map each OSPF state to a CheckMK monitoring state'),
-                       elements=[
-                           ('1',
-                            MonitoringState(
-                                title=_('1 - down'),
-                                help=_(
-                                    'This is the first OSPF neighbor state. It means that no information (hellos) has '
-                                    'been received from this neighbor, but hello packets can still be sent to the '
-                                    'neighbor in this state. During the fully adjacent neighbor state, if a router '
-                                    'doesn\'t receive hello packet from a neighbor within the RouterDeadInterval time '
-                                    '(RouterDeadInterval = 4*HelloInterval by default) or if the manually configured '
-                                    'neighbor is being removed from the configuration, then the neighbor state changes '
-                                    'from Full to Down. Default monitoring state is "CRIT"'),
-                                default_value=2,
-                            )),
-                           ('2',
-                            MonitoringState(
-                                title=_('2 - attempt'),
-                                help=_(
-                                    'This state is only valid for manually configured neighbors in an NBMA '
-                                    'environment. In Attempt state, the router sends unicast hello packets every poll '
-                                    'interval to the neighbor, from which hellos have not been received within the '
-                                    'dead interval. Default monitoring state is "WARN"'),
-                                default_value=1,
-                            )),
-                           ('3',
-                            MonitoringState(
-                                title=_('3 - init'),
-                                help=_(
-                                    'This state specifies that the router has received a hello packet from its '
-                                    'neighbor, but the receiving router\'s ID was not included in the hello packet. '
-                                    'When a router receives a hello packet from a neighbor, it should list the '
-                                    'sender\'s router ID in its hello packet as an acknowledgment that it received a '
-                                    'valid hello packet. Default monitoring state is "WARN"'),
-                                default_value=1,
-                            )),
-                           ('4',
-                            MonitoringState(
-                                title=_('4 - twoWay'),
-                                help=_(
-                                    'This state designates that bi-directional communication has been established '
-                                    'between two routers. Bi-directional means that each router has seen the other\'s '
-                                    'hello packet. This state is attained when the router receiving the hello packet '
-                                    'sees its own Router ID within the received hello packet\'s neighbor field. At '
-                                    'this state, a router decides whether to become adjacent with this neighbor. On '
-                                    'broadcast media and non-broadcast multiaccess networks, a router becomes full '
-                                    'only with the designated router (DR) and the backup designated router (BDR); it '
-                                    'stays in the 2-way state with all other neighbors. On Point-to-point and '
-                                    'Point-to-multipoint networks, a router becomes full with all connected routers. '
-                                    'At the end of this stage, the DR and BDR for broadcast and non-broadcast '
-                                    'multiacess networks are elected. For more information on the DR election process, '
-                                    'refer to DR Election. Note: Receiving a Database Descriptor (DBD) packet from a '
-                                    'neighbor in the init state will also a cause a transition to 2-way state. Default '
-                                    'monitoring state is "OK"'),
-                                default_value=0,
-                            )),
-                           ('5',
-                            MonitoringState(
-                                title=_('5 - exchangeStart'),
-                                help=_('Once the DR and BDR are elected, the actual process of exchanging link state '
-                                       'information can start between the routers and their DR and BDR. In this state, '
-                                       'the routers and their DR and BDR establish a master-slave relationship and '
-                                       'choose the initial sequence number for adjacency formation. The router with '
-                                       'the higher router ID becomes the master and starts the exchange, and as such, '
-                                       'is the only router that can increment the sequence number. Note that one would '
-                                       'logically conclude that the DR/BDR with the highest router ID will become the '
-                                       'master during this process of master-slave relation. Remember that the DR/BDR '
-                                       'election might be purely by virtue of a higher priority configured on the '
-                                       'router instead of highest router ID. Thus, it is possible that a DR plays the '
-                                       'role of slave. And also note that master/slave election is on a per-neighbor '
-                                       'basis. Default monitoring state is "WARN"'),
-                                default_value=1,
-                            )),
-                           ('6',
-                            MonitoringState(
-                                title=_('6 - exchange'),
-                                help=_(
-                                    'In the exchange state, OSPF routers exchange database descriptor (DBD) packets. '
-                                    'Database descriptors contain link-state advertisement (LSA) headers only and '
-                                    'describe the contents of the entire link-state database. Each DBD packet has a '
-                                    'sequence number which can be incremented only by master which is explicitly '
-                                    'acknowledged by slave. Routers also send link-state request packets and '
-                                    'link-state update packets (which contain the entire LSA) in this state. The '
-                                    'contents of the DBD received are compared to the information contained in the '
-                                    'routers link-state database to check if new or more current link-state '
-                                    'information is available with the neighbor. Default monitoring state is "WARN"'),
-                                default_value=1,
-                            )),
-                           ('7',
-                            MonitoringState(
-                                title=_('7 - loading'),
-                                help=_(
-                                    'In this state, the actual exchange of link state information occurs. Based on the '
-                                    'information provided by the DBDs, routers send link-state request packets. The '
-                                    'neighbor then provides the requested link-state information in link-state update '
-                                    'packets. During the adjacency, if a router receives an outdated or missing LSA, '
-                                    'it requests that LSA by sending a link-state request packet. All link-state '
-                                    'update packets are acknowledged. Default monitoring state is "WARN"'),
-                                default_value=1,
-                            )),
-                           ('8',
-                            MonitoringState(
-                                title=_('8 - full'),
-                                help=_('In this state, routers are fully adjacent with each other. All the router and '
-                                       'network LSAs are exchanged and the routers databases are fully synchronized. '
-                                       'Full is the normal state for an OSPF router. If a router is stuck in another '
-                                       'state, it\'s an indication that there are problems in forming adjacencies. The '
-                                       'only exception to this is the 2-way state, which is normal in a broadcast '
-                                       'network. Routers achieve the full state with their DR and BDR only. Neighbors '
-                                       'always see each other as 2-way. Default monitoring state is "OK"'),
-                                default_value=0,
-                            )),
-                       ]))
-
-
-# #####################################################
-#
-# OSPFv3 General
-#
-# #####################################################
-
-
-def _parameter_valuespec_ospfv3_general():
-    return Dictionary(
-        elements=[
-            ('state_admin_disabled',
-             MonitoringState(
-                 title=_('State to report if OSPFv3 is admin disabled'),
-                 help=_('Monitoring state if the OSPFv3 process is admin disabled. Default state is "WARNING"'),
-                 default_value=1,
-             )),
-        ],
-    )
-
-
-rulespec_registry.register(
-    CheckParameterRulespecWithoutItem(
-        check_group_name='ospfv3_general',
-        group=RulespecGroupCheckParametersNetworking,
-        match_type='dict',
-        parameter_valuespec=_parameter_valuespec_ospfv3_general,
-        title=lambda: _('OSPFv3 general'),
-    ))
-
-
-def _valuespec_discovery_ospfv3_general():
-    return Dictionary(
-            title=_('OSPFv3 general'),
-            elements=[
-                ('admin_disabled',
-                 FixedValue(
-                     True,
-                     title=_('discover admin disabled OSPFv3 process'),
-                     totext=_('discover admin disabled OSPFv3 process'),
-                     default_value=False,
-                 )),
-            ],
-        )
-
-
-rulespec_registry.register(
-    HostRulespec(
-        group=RulespecGroupCheckParametersDiscovery,
-        match_type='dict',
-        name='discovery_ospfv3_general',
-        valuespec=_valuespec_discovery_ospfv3_general,
-    ))
-
-
-# #####################################################
-#
-# OSPFv3 Interface
-#
-# #####################################################
-
-
-def _parameter_valuespec_ospfv3_interface():
-    return Dictionary(
-        elements=[
-            ('state_admin_disabled',
-             MonitoringState(
-                 title=_('State to report if OSPFv3 is admin disabled'),
-                 help=_('Monitoring state if OSPFv3 is admin disabled. Default state is "WARNING"'),
-                 default_value=1,
-             )),
-            ('state_if_down',
-             MonitoringState(
-                 title=_('State to report if OSPFv3 is down'),
-                 help=_('Monitoring state if OSPFv3 is down. Default state is "CRITICAL"'),
-                 default_value=2,
-             )),
-            ('state_if_wait_stby',
-             MonitoringState(
-                 title=_('State to report if OSPFv3 is in waiting or standby'),
-                 help=_('Monitoring state if OSPFv3 is waiting/standby. Default state is "WARNING"'),
-                 default_value=1,
-             )),
-        ],
-    )
-
-
-rulespec_registry.register(
-    CheckParameterRulespecWithItem(
-        check_group_name='ospfv3_interface',
-        group=RulespecGroupCheckParametersNetworking,
-        item_spec=lambda: TextAscii(title=_('OSPFv3 interface'), ),
-        match_type='dict',
-        parameter_valuespec=_parameter_valuespec_ospfv3_interface,
-        title=lambda: _('OSPFv3 interface'),
-    ))
-
-
-# #####################################################
-#
-# OSPFv3 neighbor
-#
-# #####################################################
-
-
-def _parameter_valuespec_ospfv3_neighbor():
-    return Dictionary(
-        elements=[
-            ('state_not_found',
-             MonitoringState(
-                 title=_('State to report if neighbor not found'),
-                 help=_('Default monitoring state if the neighbor is not found in the SNMP data. '
-                        'Default state is "UNKNOWN"'),
-                 default_value=3,
-             )),
-            neighbor_states,
-            ('peer_list',
-             ListOf(
-                 Tuple(
-                     title=_('Neighbors'),
-                     elements=[
-                         TextUnicode(
-                             title=_('OSPFv3 Neighbor'),
-                             help=_(
-                                 'The configured value must match a OSPFv3 Neighbor item reported by the monitored '
-                                 'device. For example: "FE80::192:168:10:148 on Vlan1"'),
-                             allow_empty=False,
-                         ),
-                         TextUnicode(
-                             title=_('OSPFv3 Neighbor Alias'),
-                             help=_('You can configure an individual alias here for the OSPF Neighbor matching '
-                                    'the text configured in the "OSPFv3 Neighbor" field. The alias will '
-                                    'be shown in the check info (i.e. [your alias])'),
-                             allow_empty=False,
-                         ),
-                         MonitoringState(
-                             default_value=2,
-                             title=_('State if not found'),
-                             help=_('You can configure an individual state if the OSPFv3 Neighbor matching the text '
-                                    'configured in the "OSPFv3 Neighbor" field is not found. '
-                                    'Default state is "CRITICAL".')
-                         )]),
-                 add_label=_('Add OSPFv3 Neighbor'),
-                 movable=False,
-                 title=_('Neighbor specific configuration'),
-             )),
-        ],
-    )
-
-
-rulespec_registry.register(
-    CheckParameterRulespecWithItem(
-        check_group_name='ospfv3_neighbor',
-        group=RulespecGroupCheckParametersNetworking,
-        item_spec=lambda: TextAscii(title=_('OSPFv3 neighbor'), ),
-        match_type='dict',
-        parameter_valuespec=_parameter_valuespec_ospfv3_neighbor,
-        title=lambda: _('OSPFv3 neighbor'),
-    ))
-
-
-# #####################################################
-#
-# OSPFv3 virtual link
-#
-# #####################################################
-
-
-def _parameter_valuespec_ospfv3_virtuallink():
-    return Dictionary(
-        elements=[
-            ('state_not_found',
-             MonitoringState(
-                 title=_('State to report if virtual link not found'),
-                 help=_('Default monitoring state if the virtual link is not found in the SNMP data. '
-                        'Default monitoring state is "UNKNOWN"'),
-                 default_value=3,
-             )),
-            neighbor_states,
-            ('peer_list',
-             ListOf(
-                 Tuple(
-                     title=_('Virtual Link'),
-                     elements=[
-                         TextUnicode(
-                             title=_('OSPFv3 Virtual-Link'),
-                             help=_(
-                                 'The configured value must match a OSPFv3 Virtual-Link item reported by the monitored '
-                                 'device. For example: "2003::192:168:0:1"'),
-                             allow_empty=False,
-                         ),
-                         TextUnicode(
-                             title=_('OSPFv3 Virtual-Link Alias'),
-                             help=_('You can configure an individual alias here for the OSPFv3 Virtual-Link matching '
-                                    'the text configured in the "OSPFv3 Virtual-Link" field. The alias will '
-                                    'be shown in the check info (i.e. [your alias])'),
-                             allow_empty=False,
-                         ),
-                         MonitoringState(
-                             default_value=2,
-                             title=_('State if not found'),
-                             help=_('You can configure an individual state if the OSPFv3 Virtual-Link matching the '
-                                    'text configured in the "OSPFv3 Virtual-Link" field is not found. '
-                                    'Default state is "CRITICAL".')
-                         )]),
-                 add_label=_('Add Virtual-Link'),
-                 movable=False,
-                 title=_('Virtual-Link specific configuration'),
-             )),
-        ],
-    )
-
-
-rulespec_registry.register(
-    CheckParameterRulespecWithItem(
-        check_group_name='ospfv3_virtuallink',
-        group=RulespecGroupCheckParametersNetworking,
-        item_spec=lambda: TextAscii(title=_('OSPFv3 virtual link'), ),
-        match_type='dict',
-        parameter_valuespec=_parameter_valuespec_ospfv3_virtuallink,
-        title=lambda: _('OSPFv3 virtual link'),
-    ))
-- 
GitLab