1<?php
2
3/**
4 * Observium
5 *
6 *   This file is part of Observium.
7 *
8 * @package    observium
9 * @subpackage common
10 * @author     Adam Armstrong <adama@observium.org>
11 * @copyright  (C) 2006-2013 Adam Armstrong, (C) 2013-2019 Observium Limited
12 *
13 */
14
15/* not finished yet --mike
16if (isset($config['os'][$device['os']]['detect']) && $config['os'][$device['os']]['detect'])
17{
18  $detect_mibs = array();
19  foreach (array('os', 'os_group') as $e)
20  {
21    foreach ($config[$e] as $entry)
22    {
23      if (is_array($entry['mibs'])) { $detect_mibs = array_merge($detect_mibs, $entry['mibs']); }
24    }
25  }
26  $config['os'][$device['os']]['mibs'] = array_unique($detect_mibs);
27  var_dump($config['os'][$device['os']]['mibs']);
28}
29*/
30
31// This is an include so that we don't lose variable scope.
32
33$include_lib = isset($include_lib) && $include_lib;
34if (!isset($include_order))
35{
36  // Order for include MIBs definitions, default: 'model,os,group,default'
37  $include_order = NULL;
38}
39
40foreach (get_device_mibs_permitted($device, $include_order) as $mib)
41{
42  $inc_dir  = $config['install_dir'] . '/' . $include_dir . '/' . strtolower($mib);
43  $inc_file = $inc_dir . '.inc.php';
44
45  if (is_file($inc_file))
46  {
47    print_cli_data_field("$mib ");
48    include($inc_file);
49    echo(PHP_EOL);
50
51    if ($include_lib && is_file($inc_dir . '.lib.php'))
52    {
53      // separated functions include, for exclude fatal redeclare errors
54      include_once($inc_dir . '.lib.php');
55    }
56  }
57  else if (is_dir($inc_dir))
58  {
59    if (OBS_DEBUG) { echo("[[$mib]]"); }
60    foreach (glob($inc_dir.'/*.inc.php') as $dir_file)
61    {
62      if (is_file($dir_file))
63      {
64        print_cli_data_field("$mib ");
65        include($dir_file);
66        echo(PHP_EOL);
67      }
68    }
69    if ($include_lib && is_file($inc_dir . '.lib.php'))
70    {
71      // separated functions include, for exclude fatal redeclare errors
72      include_once($inc_dir . '.lib.php');
73    }
74  }
75
76}
77
78unset($include_dir, $include_lib, $include_order, $inc_file, $inc_dir, $dir_file, $mib);
79
80// EOF
81