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