Issues (2963)

includes/polling/cisco-ipsec-flow-monitor.inc.php (1 issue)

1
<?php
2
3
use LibreNMS\RRD\RrdDefinition;
4
5
// alpha:/home/dev# snmpbulkwalk -v2c -c XXXXX -M mibs -m CISCO-IPSEC-FLOW-MONITOR-MIB cisco.3925  cipSecGlobalStats
6
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalActiveTunnels.0 = Gauge32: 10
7
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalPreviousTunnels.0 = Counter32: 677 Phase-2 Tunnels
8
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalInOctets.0 = Counter32: 2063116135 Octets
9
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalHcInOctets.0 = Counter64: 135207102311
10
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalInOctWraps.0 = Counter32: 31 Integral units
11
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalInDecompOctets.0 = Counter32: 2063116135 Octets
12
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalHcInDecompOctets.0 = Counter64: 135207102311
13
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalInDecompOctWraps.0 = Counter32: 31 Integral units
14
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalInPkts.0 = Counter32: 779904964 Packets
15
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalInDrops.0 = Counter32: 5 Packets
16
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalInReplayDrops.0 = Counter32: 32 Packets
17
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalInAuths.0 = Counter32: 779904970 Events
18
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalInAuthFails.0 = Counter32: 0 Failures
19
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalInDecrypts.0 = Counter32: 779904970 Packets
20
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalInDecryptFails.0 = Counter32: 5 Packets
21
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalOutOctets.0 = Counter32: 3486168696 Octets
22
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalHcOutOctets.0 = Counter64: 544652047992
23
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalOutOctWraps.0 = Counter32: 126 Integral units
24
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalOutUncompOctets.0 = Counter32: 3486168696 Octets
25
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalHcOutUncompOctets.0 = Counter64: 544652047992 Octets
26
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalOutUncompOctWraps.0 = Counter32: 126 Integral units
27
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalOutPkts.0 = Counter32: 828696339 Packets
28
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalOutDrops.0 = Counter32: 4520 Packets
29
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalOutAuths.0 = Counter32: 828696339 Events
30
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalOutAuthFails.0 = Counter32: 0 Failures
31
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalOutEncrypts.0 = Counter32: 828696318 Packets
32
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalOutEncryptFails.0 = Counter32: 0 Failures
33
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalProtocolUseFails.0 = Counter32: 0 Failures
34
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalNoSaFails.0 = Counter32: 5 Failures
35
// CISCO-IPSEC-FLOW-MONITOR-MIB::cipSecGlobalSysCapFails.0 = Counter32: 0 Failures
36
if ($device['os_group'] == 'cisco') {
37
    $data = snmpwalk_cache_oid($device, 'cipSecGlobalStats', null, 'CISCO-IPSEC-FLOW-MONITOR-MIB');
0 ignored issues
show
Are you sure the assignment to $data is correct as snmpwalk_cache_oid($devi...PSEC-FLOW-MONITOR-MIB') seems to always return null.

This check looks for function or method calls that always return null and whose return value is assigned to a variable.

class A
{
    function getObject()
    {
        return null;
    }

}

$a = new A();
$object = $a->getObject();

The method getObject() can return nothing but null, so it makes no sense to assign that value to a variable.

The reason is most likely that a function or method is imcomplete or has been reduced for debug purposes.

Loading history...
38
    $data = $data[0];
39
40
    // Use HC Counters if they exist
41
    if (is_numeric($data['cipSecGlobalHcInOctets'])) {
42
        $data['cipSecGlobalInOctets'] = $data['cipSecGlobalHcInOctets'];
43
    }
44
45
    if (is_numeric($data['cipSecGlobalHcOutOctets'])) {
46
        $data['cipSecGlobalOutOctets'] = $data['cipSecGlobalHcOutOctets'];
47
    }
48
49
    if (is_numeric($data['cipSecGlobalHcInDecompOctets'])) {
50
        $data['cipSecGlobalInDecompOctets'] = $data['cipSecGlobalHcInDecompOctets'];
51
    }
52
53
    if (is_numeric($data['cipSecGlobalHcOutUncompOctets'])) {
54
        $data['cipSecGlobalOutUncompOctets'] = $data['cipSecGlobalHcOutUncompOctets'];
55
    }
56
57
    if ($data['cipSecGlobalActiveTunnels']) {
58
        $rrd_def = RrdDefinition::make()
59
            ->addDataset('Tunnels', 'GAUGE', 0)
60
            ->addDataset('InOctets', 'COUNTER', 0, 100000000000)
61
            ->addDataset('OutOctets', 'COUNTER', 0, 100000000000)
62
            ->addDataset('InDecompOctets', 'COUNTER', 0, 100000000000)
63
            ->addDataset('OutUncompOctets', 'COUNTER', 0, 100000000000)
64
            ->addDataset('InPkts', 'COUNTER', 0, 100000000000)
65
            ->addDataset('OutPkts', 'COUNTER', 0, 100000000000)
66
            ->addDataset('InDrops', 'COUNTER', 0, 100000000000)
67
            ->addDataset('InReplayDrops', 'COUNTER', 0, 100000000000)
68
            ->addDataset('OutDrops', 'COUNTER', 0, 100000000000)
69
            ->addDataset('InAuths', 'COUNTER', 0, 100000000000)
70
            ->addDataset('OutAuths', 'COUNTER', 0, 100000000000)
71
            ->addDataset('InAuthFails', 'COUNTER', 0, 100000000000)
72
            ->addDataset('OutAuthFails', 'COUNTER', 0, 100000000000)
73
            ->addDataset('InDencrypts', 'COUNTER', 0, 100000000000)
74
            ->addDataset('OutEncrypts', 'COUNTER', 0, 100000000000)
75
            ->addDataset('InDecryptFails', 'COUNTER', 0, 100000000000)
76
            ->addDataset('OutEncryptFails', 'COUNTER', 0, 100000000000)
77
            ->addDataset('ProtocolUseFails', 'COUNTER', 0, 100000000000)
78
            ->addDataset('NoSaFails', 'COUNTER', 0, 100000000000)
79
            ->addDataset('SysCapFails', 'COUNTER', 0, 100000000000);
80
81
        $fields = [
82
            'Tunnels'          => $data['cipSecGlobalActiveTunnels'],
83
            'InOctets'         => $data['cipSecGlobalInOctets'],
84
            'OutOctets'        => $data['cipSecGlobalOutOctets'],
85
            'InDecompOctets'   => $data['cipSecGlobalInDecompOctets'],
86
            'OutUncompOctets'  => $data['cipSecGlobalOutUncompOctets'],
87
            'InPkts'           => $data['cipSecGlobalInPkts'],
88
            'OutPkts'          => $data['cipSecGlobalOutPkts'],
89
            'InDrops'          => $data['cipSecGlobalInDrops'],
90
            'InReplayDrops'    => $data['cipSecGlobalInReplayDrops'],
91
            'OutDrops'         => $data['cipSecGlobalOutDrops'],
92
            'InAuths'          => $data['cipSecGlobalInAuths'],
93
            'OutAuths'         => $data['cipSecGlobalOutAuths'],
94
            'InAuthFails'      => $data['cipSecGlobalInAuthFails'],
95
            'OutAuthFails'     => $data['cipSecGlobalOutAuthFails'],
96
            'InDencrypts'      => $data['cipSecGlobalInDecrypts'],
97
            'OutEncrypts'      => $data['cipSecGlobalOutEncrypts'],
98
            'InDecryptFails'   => $data['cipSecGlobalInDecryptFails'],
99
            'OutEncryptFails'  => $data['cipSecGlobalOutEncryptFails'],
100
            'ProtocolUseFails' => $data['cipSecGlobalProtocolUseFails'],
101
            'NoSaFails'        => $data['cipSecGlobalNoSaFails'],
102
            'SysCapFails'      => $data['cipSecGlobalSysCapFails'],
103
        ];
104
105
        $tags = compact('rrd_def');
106
        data_update($device, 'cipsec_flow', $tags, $fields);
107
108
        $os->enableGraph('cipsec_flow_tunnels');
109
        $os->enableGraph('cipsec_flow_pkts');
110
        $os->enableGraph('cipsec_flow_bits');
111
        $os->enableGraph('cipsec_flow_stats');
112
113
        echo ' cipsec_flow';
114
    }//end if
115
116
    unset($data, $rrd_def);
117
}//end if
118