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