Это команда mib2c, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.
ПРОГРАММА:
ИМЯ
mib2c - сгенерировать код шаблона для расширения агента
СИНТАКСИС
миб2с [-h] -c КОНФИГУРАЦИЯ [-I ПУТЬ] [-f ИМЯ ИМЯ] [-i] [- s] [- q] [- S VAR = VAL] MIBNODE
ОПИСАНИЕ
Инструмент mib2c предназначен для получения части дерева MIB (как определено файлом MIB)
и сгенерируйте код шаблона C, необходимый для реализации соответствующих объектов управления.
внутри.
Для реализации нового модуля MIB необходимы три файла:
- Файл определения MIB
- Заголовочный файл C
- Файл реализации на языке C.
Инструмент mib2c использует файл определения MIB для создания двух файлов кода C. Таким образом, mib2c
генерирует шаблон, который можно редактировать, чтобы добавить логику, необходимую для получения информации из
операционная система или приложение для завершения модуля.
MIBNODE - это mib-узел верхнего уровня, для которого вы хотите сгенерировать код. Вы должны дать mib2c
узел mib (например, ifTable) в командной строке, а не файл mib. Это самый единственный
Общая ошибка.
Инструмент mib2c принимает MIB как SMIv1, так и SMIv2.
mib2c должен быть в состоянии найти и загрузить файл MIB, чтобы сгенерировать код C для
MIB. Чтобы позволить mib2c найти файл MIB, установите переменную среды MIBS, чтобы включить
файл MIB, который вы используете. Пример установки этой переменной среды:
MIBS = + NET-SNMP-TUTORIAL-MIB
or
MIBS = ВСЕ
Первый пример гарантирует, что mib2c найдет mib NET-SNMP-TUTORIAL-MIB в дополнение к
модули MIB по умолчанию. Список модулей MIB по умолчанию устанавливается при первом запуске набора.
настроен и построен и в основном соответствует списку модулей, которые агент
поддерживает. Второй пример гарантирует, что mib2c найдет все MIB в месте поиска для
Файлы MIB. Местом поиска по умолчанию для файлов MIB является / usr / share / snmp / mibs. Этот поиск
местоположение можно изменить с помощью переменной среды MIBDIRS.
Как загружаемые файлы MIB, так и место поиска файлов MIB также можно настроить в
файл snmp.conf. Пожалуйста, посмотри snmp.conf(5) для получения дополнительной информации.
Сгенерированные файлы * .c и * .h будут созданы в текущем рабочем каталоге.
ДОПОЛНИТЕЛЬНЫЕ УСЛУГИ, НЕ ВКЛЮЧЕННЫЕ В ПАКЕТ
-h Показать справочное сообщение.
-c КОНФИГФИЛЬ
Используйте CONFIGFILE при генерации кода. Эти файлы будут найдены первыми в
текущий каталог, а затем в / USR / доли каталог (где по умолчанию
файлы конфигурации mib2c можно найти). Запуск mib2c без -c CONFIGFILE
опция отобразит описание допустимых значений для CONFIGFILE, то есть
доступные файлы конфигурации, в том числе новые, которые вы можете создать.
Например,
% mib2c ifTable
отобразит описание доступных в настоящее время значений для CONFIGFILE.
Для CONFIGFILE поддерживаются следующие значения:
mib2c.mfd.conf
mib2c.scalar.conf
mib2c.int_watch.conf
mib2c.iterate.conf
mib2c.create-dataset.conf
mib2c.array-user.conf
mib2c.column_defines.conf
mib2c.column_enums.conf
ГЕНЕРИРОВАНИЕ КОДА ДЛЯ СКАЛЯРНЫХ ОБЪЕКТОВ:
Если вы пишете код для некоторых скаляров, запустите:
mib2c -c mib2c.scalar.conf MIBNODE
Если вы хотите волшебным образом «привязать» целочисленные переменные к целочисленным скалярам, используйте:
mib2c -c mib2c.int_watch.conf MIBNODE
СОЗДАНИЕ КОДА ДЛЯ ТАБЛИЦ:
Рекомендуемый файл конфигурации для таблиц - это MIB для чайников или MFD,
конфигурационный файл. Он скрывает как можно больше деталей SNMP, генерируя
небольшие, простые для понимания функции. Также он самый гибкий и хорошо
документированный файл конфигурации. См. Агент / mibgroup / if-mib / ifTable / ifTable * .c
файлы для примера:
mib2c -c mib2c.mfd.conf MIBNODE
Если данные вашей таблицы хранятся где-то еще (например, в ядре, а не в
память самого агента), и вам нужно "перебрать" ее, чтобы найти нужный
данные для строки SNMP, к которой осуществляется доступ. См. Агент / mibgroup / mibII / vacm_context.c
файл для примера:
mib2c -c mib2c.iterate.conf MIBNODE
Если данные вашей таблицы хранятся в агенте (т. Е. Не находятся во внешнем
источник) и основан исключительно на данных (т.е. вам не нужно выполнять какую-либо работу, когда
набор происходит). См. Файл agent / mibgroup / examples / data_set.c для примера
такая таблица:
mib2c -c mib2c.create-dataset.conf MIBNODE
Если данные вашей таблицы хранятся в агенте (т. Е. Не находятся во внешнем
источник), и вы можете сохранить свои данные отсортированными по индексу таблицы, но вам нужно
выполнять работы при наступлении набора:
mib2c -c mib2c.array-user.conf MIBNODE
СОЗДАНИЕ ОПРЕДЕЛЕНИЙ ФАЙЛА ЗАГОЛОВКИ
Чтобы создать только заголовок с определением для каждого номера столбца в таблице:
mib2c -c mib2c.column_defines.conf MIBNODE
Чтобы создать только заголовок с определением для каждого перечисления для любого столбца, содержащего
перечисляет:
mib2c -c mib2c.column_enums.conf MIBNODE
СОЗДАНИЕ КОДА ДЛЯ СТРОКИ КОДА 4.X (СТАРЫЙ API)
mib2c -c mib2c.old-api.conf MIBNODE
-IPATH Найдите файлы конфигурации в PATH. Можно указать несколько путей с помощью
несколько ключей -I или использовать один со списком путей, разделенных запятыми.
-f НАЗВАНИЕ
Помещает выходной код в OUTNAME.c и OUTNAME.h. Обычно mib2c размещает
выводить код в файлы, соответствующие названиям таблиц, код генерируемых им
for, что, вероятно, и так вам нужно.
-i Не используйте отступ в полученном коде.
-s Не ищите MIBNODE.sed и запускайте sed для полученного кода. Это полезно для
сократить длинные имена переменных mib в коде.
-q Работайте в «тихом» режиме, который сводит к минимуму сообщения о состоянии, которые генерирует mib2c.
-SVAR = VAL
Установите для переменной VAR в файле mib2c. *. Conf значение VAL. Ни один из
существующие файлы конфигурации mib2c (mib2c. *. conf) в настоящее время используют это
функция, однако, этот вариант следует считать доступным только в будущем
использовать.
ПРИМЕРЫ
Следующее генерирует код шаблона C для файлов заголовка и реализации, чтобы
реализовать UCD-DEMO-MIB :: ucdDemoPublic.
% mib2c -c mib2c.scalar.conf ucdDemoPublic
запись в ucdDemoPublic.h
запись в ucdDemoPublic.c
бегущий отступ на ucdDemoPublic.h
бегущий отступ на ucdDemoPublic.c
Полученные в результате файлы ucdDemoPublic.c и ucdDemoPublic.h генерируют текущие рабочие файлы.
каталог.
Следующее генерирует код шаблона C для файлов заголовка и реализации для
модуль для реализации TCP-MIB :: tcpConnTable.
% mib2c -c mib2c.iterate.conf tcpConnTable
запись в tcpConnTable.h
запись в tcpConnTable.c
бегущий отступ на tcpConnTable.h
бегущий отступ на tcpConnTable.c
Результирующие файлы tcpConnTable.c и tcpConnTable.h генерируются в текущем рабочем
каталог.
Используйте mib2c онлайн с помощью сервисов onworks.net