1-- 2-- Copyright (c) 2001-2003 3-- Fraunhofer Institute for Open Communication Systems (FhG Fokus). 4-- All rights reserved. 5-- 6-- Author: Harti Brandt <harti@freebsd.org> 7-- 8-- Redistribution of this software and documentation and use in source and 9-- binary forms, with or without modification, are permitted provided that 10-- the following conditions are met: 11-- 12-- 1. Redistributions of source code or documentation must retain the above 13-- copyright notice, this list of conditions and the following disclaimer. 14-- 2. Redistributions in binary form must reproduce the above copyright 15-- notice, this list of conditions and the following disclaimer in the 16-- documentation and/or other materials provided with the distribution. 17-- 18-- THIS SOFTWARE AND DOCUMENTATION IS PROVIDED BY FRAUNHOFER FOKUS 19-- AND ITS CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, 20-- INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND 21-- FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL 22-- FRAUNHOFER FOKUS OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 23-- INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24-- LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, 25-- OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 26-- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 27-- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 28-- EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29-- 30-- Private MIB for netgraph part of Begemot SNMP daemon. 31-- 32BEGEMOT-NETGRAPH-MIB DEFINITIONS ::= BEGIN 33 34IMPORTS 35 MODULE-IDENTITY, OBJECT-TYPE, Counter32, Unsigned32 36 FROM SNMPv2-SMI 37 TEXTUAL-CONVENTION, TruthValue 38 FROM SNMPv2-TC 39 MODULE-COMPLIANCE, OBJECT-GROUP 40 FROM SNMPv2-CONF 41 begemot 42 FROM BEGEMOT-MIB; 43 44begemotNg MODULE-IDENTITY 45 LAST-UPDATED "200311140000Z" 46 ORGANIZATION "Fraunhofer FOKUS, CATS" 47 CONTACT-INFO 48 " Hartmut Brandt 49 50 Postal: Fraunhofer Institute for Open Communication Systems 51 Kaiserin-Augusta-Allee 31 52 10589 Berlin 53 Germany 54 55 Fax: +49 30 3463 7352 56 57 E-mail: harti@freebsd.org" 58 DESCRIPTION 59 "The MIB for the NetGraph access module for SNMP." 60 REVISION "200311140000Z" 61 DESCRIPTION 62 "The maximum width of the following OCTET STRINGs was increased 63 from 15 to 31: 64 65 - NgTypeName 66 - NgNodeName 67 - NgNodeNameOrEmpty 68 - NgHookName 69 " 70 REVISION "200201310000Z" 71 DESCRIPTION 72 "Initial revision." 73 ::= { begemot 2 } 74 75begemotNgObjects OBJECT IDENTIFIER ::= { begemotNg 1 } 76 77-- -------------------------------------------------------------------------- 78 79NgTypeName ::= TEXTUAL-CONVENTION 80 DISPLAY-HINT "31a" 81 STATUS current 82 DESCRIPTION 83 "Name of a netgraph type." 84 SYNTAX OCTET STRING (SIZE(1..31)) 85 86NgNodeName ::= TEXTUAL-CONVENTION 87 DISPLAY-HINT "31a" 88 STATUS current 89 DESCRIPTION 90 "Name of a netgraph node." 91 SYNTAX OCTET STRING (SIZE(1..31)) 92 93NgNodeNameOrEmpty ::= TEXTUAL-CONVENTION 94 DISPLAY-HINT "31a" 95 STATUS current 96 DESCRIPTION 97 "Name of a netgraph node." 98 SYNTAX OCTET STRING (SIZE(0..31)) 99 100NgHookName ::= TEXTUAL-CONVENTION 101 DISPLAY-HINT "31a" 102 STATUS current 103 DESCRIPTION 104 "Name of a netgraph hook." 105 SYNTAX OCTET STRING (SIZE(1..31)) 106 107NgNodeId ::= TEXTUAL-CONVENTION 108 DISPLAY-HINT "x" 109 STATUS current 110 DESCRIPTION 111 "Node identifier." 112 SYNTAX Unsigned32 (1..4294967295) 113 114NgNodeIdOrZero ::= TEXTUAL-CONVENTION 115 DISPLAY-HINT "x" 116 STATUS current 117 DESCRIPTION 118 "Node identifier or 0 for 'no-node'." 119 SYNTAX Unsigned32 (0..4294967295) 120 121-- -------------------------------------------------------------------------- 122-- 123-- Configuration parameters 124-- 125begemotNgConfig OBJECT IDENTIFIER ::= { begemotNgObjects 1 } 126 127begemotNgControlNodeName OBJECT-TYPE 128 SYNTAX NgNodeName 129 MAX-ACCESS read-only 130 STATUS current 131 DESCRIPTION 132 "The name of the netgraph node of this daemon. The name is 133 writeable during initialisation. If the name is set from 134 the empty string to the non-empty string, the netgraph socket 135 is created. Once set it cannot be changed." 136 ::= { begemotNgConfig 1 } 137 138begemotNgResBufSiz OBJECT-TYPE 139 SYNTAX INTEGER (1024..65536) 140 MAX-ACCESS read-write 141 STATUS current 142 DESCRIPTION 143 "The size of the receive buffers for netgraph messages." 144 DEFVAL { 20000 } 145 ::= { begemotNgConfig 2 } 146 147begemotNgTimeout OBJECT-TYPE 148 SYNTAX INTEGER (10..10000) 149 UNITS "milliseconds" 150 MAX-ACCESS read-write 151 STATUS current 152 DESCRIPTION 153 "The maximum time to wait for a response to a netgraph message." 154 DEFVAL { 1000 } 155 ::= { begemotNgConfig 3 } 156 157begemotNgDebugLevel OBJECT-TYPE 158 SYNTAX Unsigned32 159 MAX-ACCESS read-write 160 STATUS current 161 DESCRIPTION 162 "The netgraph library debug level. This should be set only 163 if the daemon is run with a terminal attached." 164 DEFVAL { 0 } 165 ::= { begemotNgConfig 4 } 166 167-- -------------------------------------------------------------------------- 168-- 169-- The STATISTICS Group 170-- 171begemotNgStats OBJECT IDENTIFIER ::= { begemotNgObjects 2 } 172 173begemotNgNoMems OBJECT-TYPE 174 SYNTAX Counter32 175 MAX-ACCESS read-only 176 STATUS current 177 DESCRIPTION 178 "Number of times a memory allocation has failed for buffers 179 or the message queue." 180 ::= { begemotNgStats 1 } 181 182begemotNgMsgReadErrs OBJECT-TYPE 183 SYNTAX Counter32 184 MAX-ACCESS read-only 185 STATUS current 186 DESCRIPTION 187 "Number of times reading a netgraph message has failed." 188 ::= { begemotNgStats 2 } 189 190begemotNgTooLargeMsgs OBJECT-TYPE 191 SYNTAX Counter32 192 MAX-ACCESS read-only 193 STATUS current 194 DESCRIPTION 195 "Number of times a netgraph message was too large for 196 the buffer. Try increasing begemotNgResBufSiz if 197 this happens." 198 ::= { begemotNgStats 3 } 199 200begemotNgDataReadErrs OBJECT-TYPE 201 SYNTAX Counter32 202 MAX-ACCESS read-only 203 STATUS current 204 DESCRIPTION 205 "Number of times reading a netgraph data message has failed." 206 ::= { begemotNgStats 4 } 207 208begemotNgTooLargeDatas OBJECT-TYPE 209 SYNTAX Counter32 210 MAX-ACCESS read-only 211 STATUS current 212 DESCRIPTION 213 "Number of times a netgraph data message was too large. 214 You need to increase begemotNgResBufSiz." 215 ::= { begemotNgStats 5 } 216 217-- ----------------------------------------------------- 218-- 219-- The NODE table 220-- 221begemotNgTypeTable OBJECT-TYPE 222 SYNTAX SEQUENCE OF BegemotNgTypeEntry 223 MAX-ACCESS not-accessible 224 STATUS current 225 DESCRIPTION 226 "A table containing information about all netgraph node types." 227 ::= { begemotNgObjects 3 } 228 229begemotNgTypeEntry OBJECT-TYPE 230 SYNTAX BegemotNgTypeEntry 231 MAX-ACCESS not-accessible 232 STATUS current 233 DESCRIPTION 234 "Table entry that describes one netgraph node." 235 INDEX { begemotNgTypeName } 236 ::= { begemotNgTypeTable 1 } 237 238BegemotNgTypeEntry ::= SEQUENCE { 239 begemotNgTypeName NgTypeName, 240 begemotNgTypeStatus INTEGER 241} 242 243begemotNgTypeName OBJECT-TYPE 244 SYNTAX NgTypeName 245 MAX-ACCESS not-accessible 246 STATUS current 247 DESCRIPTION 248 "The name of the type. Used as index." 249 ::= { begemotNgTypeEntry 1 } 250 251begemotNgTypeStatus OBJECT-TYPE 252 SYNTAX INTEGER { loaded(1), unloaded(2) } 253 MAX-ACCESS read-create 254 STATUS current 255 DESCRIPTION 256 "If loaded then the node type is available. A type can be load 257 by setting this field to loaded. It is unload if the field is 258 set to unloaded. Note, that a type cannot be unloaded if it 259 is compiled into the kernel or has nodes of this type. The name 260 of the file containing the type implementation is constructed by 261 prepending ng_ to the type name." 262 ::= { begemotNgTypeEntry 2 } 263 264-- 265-- Node table 266-- 267begemotNgNodeTable OBJECT-TYPE 268 SYNTAX SEQUENCE OF BegemotNgNodeEntry 269 MAX-ACCESS not-accessible 270 STATUS current 271 DESCRIPTION 272 "A table containing information about all netgraph nodes." 273 ::= { begemotNgObjects 4 } 274 275begemotNgNodeEntry OBJECT-TYPE 276 SYNTAX BegemotNgNodeEntry 277 MAX-ACCESS not-accessible 278 STATUS current 279 DESCRIPTION 280 "Table entry that describes one netgraph node." 281 INDEX { begemotNgNodeId } 282 ::= { begemotNgNodeTable 1 } 283 284BegemotNgNodeEntry ::= SEQUENCE { 285 begemotNgNodeId NgNodeId, 286 begemotNgNodeStatus INTEGER, 287 begemotNgNodeName NgNodeNameOrEmpty, 288 begemotNgNodeType NgTypeName, 289 begemotNgNodeHooks Unsigned32 290} 291 292begemotNgNodeId OBJECT-TYPE 293 SYNTAX NgNodeId 294 MAX-ACCESS not-accessible 295 STATUS current 296 DESCRIPTION 297 "The 32bit node id of this node. 0 is an illegal value." 298 ::= { begemotNgNodeEntry 1 } 299 300begemotNgNodeStatus OBJECT-TYPE 301 SYNTAX INTEGER { valid(1), invalid(2) } 302 MAX-ACCESS read-only 303 STATUS current 304 DESCRIPTION 305 "Indicates whether the node exists or not." 306 ::= { begemotNgNodeEntry 2 } 307 308begemotNgNodeName OBJECT-TYPE 309 SYNTAX NgNodeNameOrEmpty 310 MAX-ACCESS read-only 311 STATUS current 312 DESCRIPTION 313 "Name of the node (if any)." 314 ::= { begemotNgNodeEntry 3 } 315 316begemotNgNodeType OBJECT-TYPE 317 SYNTAX NgTypeName 318 MAX-ACCESS read-only 319 STATUS current 320 DESCRIPTION 321 "Type name of the node." 322 ::= { begemotNgNodeEntry 4 } 323 324begemotNgNodeHooks OBJECT-TYPE 325 SYNTAX Unsigned32 326 MAX-ACCESS read-only 327 STATUS current 328 DESCRIPTION 329 "Number of hooks on this node." 330 ::= { begemotNgNodeEntry 5 } 331 332-- 333-- Hook table 334-- 335begemotNgHookTable OBJECT-TYPE 336 SYNTAX SEQUENCE OF BegemotNgHookEntry 337 MAX-ACCESS not-accessible 338 STATUS current 339 DESCRIPTION 340 "A table containing information about all netgraph hooks." 341 ::= { begemotNgObjects 5 } 342 343begemotNgHookEntry OBJECT-TYPE 344 SYNTAX BegemotNgHookEntry 345 MAX-ACCESS not-accessible 346 STATUS current 347 DESCRIPTION 348 "Table entry that describes one netgraph node." 349 INDEX { begemotNgHookNodeId, begemotNgHookHook } 350 ::= { begemotNgHookTable 1 } 351 352BegemotNgHookEntry ::= SEQUENCE { 353 begemotNgHookNodeId NgNodeId, 354 begemotNgHookHook NgHookName, 355 begemotNgHookStatus INTEGER, 356 begemotNgHookPeerNodeId NgNodeId, 357 begemotNgHookPeerHook NgHookName, 358 begemotNgHookPeerType NgTypeName 359} 360 361begemotNgHookNodeId OBJECT-TYPE 362 SYNTAX NgNodeId 363 MAX-ACCESS not-accessible 364 STATUS current 365 DESCRIPTION 366 "The 32bit node id of this node." 367 ::= { begemotNgHookEntry 1 } 368 369begemotNgHookHook OBJECT-TYPE 370 SYNTAX NgHookName 371 MAX-ACCESS read-only 372 STATUS current 373 DESCRIPTION 374 "Name of the hook." 375 ::= { begemotNgHookEntry 2 } 376 377begemotNgHookStatus OBJECT-TYPE 378 SYNTAX INTEGER { valid(1), invalid(2) } 379 MAX-ACCESS read-only 380 STATUS current 381 DESCRIPTION 382 "Indicates whether the hook exists or not." 383 ::= { begemotNgHookEntry 3 } 384 385begemotNgHookPeerNodeId OBJECT-TYPE 386 SYNTAX NgNodeId 387 MAX-ACCESS read-only 388 STATUS current 389 DESCRIPTION 390 "The 32bit node id of the peer node of this hook." 391 ::= { begemotNgHookEntry 4 } 392 393begemotNgHookPeerHook OBJECT-TYPE 394 SYNTAX NgHookName 395 MAX-ACCESS read-only 396 STATUS current 397 DESCRIPTION 398 "Name of the peer hook." 399 ::= { begemotNgHookEntry 5 } 400 401begemotNgHookPeerType OBJECT-TYPE 402 SYNTAX NgTypeName 403 MAX-ACCESS read-only 404 STATUS current 405 DESCRIPTION 406 "Name of the peer type." 407 ::= { begemotNgHookEntry 6 } 408 409END 410