1.\"-
2.\" Copyright (C) 2006 Shteryana Shopova <syrinx@FreeBSD.org>
3.\" All rights reserved.
4.\"
5.\" Redistribution and use in source and binary forms, with or without
6.\" modification, are permitted provided that the following conditions
7.\" are met:
8.\" 1. Redistributions of source code must retain the above copyright
9.\"    notice, this list of conditions and the following disclaimer.
10.\" 2. Redistributions in binary form must reproduce the above copyright
11.\"    notice, this list of conditions and the following disclaimer in the
12.\"    documentation and/or other materials provided with the distribution.
13.\"
14.\" THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS ``AS IS'' AND
15.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17.\" ARE DISCLAIMED.  IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE
18.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24.\" SUCH DAMAGE.
25.\"
26.\" $FreeBSD$
27.\"
28.Dd August 6, 2007
29.Dt SNMP_BRIDGE 3
30.Os
31.Sh NAME
32.Nm snmp_bridge
33.Nd "bridge module for snmpd"
34.Sh LIBRARY
35.Pq begemotSnmpdModulePath."bridge" = "/usr/lib/snmp_bridge.so"
36.Sh DESCRIPTION
37The
38.Nm snmp_bridge
39module implements the BRIDGE-MIB as standardized in RFC 4188, the RSTP-MIB
40standardized in RFC4318 and a private BEGEMOT-BRIDGE-MIB, which allows
41management of multiple bridge interfaces.
42Most of the objects defined in the private BEGEMOT-BRIDGE-MIB are duplicates
43of the original objects defined by the standard BRIDGE-MIB, but the private
44MIB also defines additional objects which make the functionality of
45.Nm
46similar to
47.Xr ifconfig 8
48for configuring bridge interfaces.
49Therefore one should consider adding write communities or loading the
50.Nm
51module on systems where security is crucial.
52.Sh IMPLEMENTATION NOTES
53The additional objects to configure a bridge are:
54.Bl -tag -width "XXXXXXXXX"
55.It Va begemotBridgeBaseStatus
56Bridge interfaces can be created and destroyed via this object.
57SNMP SET operations with the following values are allowed:
58.Bl -tag -width ".It Va createAndWait"
59.It Va createAndWait
60will attempt to create a bridge interface with the name given by the table
61index.
62.It Va createAndGo
63will attempt to create a bridge interface with the name given by the table
64index and set the status of the interface to "active/up".
65.It Va destroy
66will attempt to destroy the bridge interface.
67.El
68.It Va begemotBridgeBaseSpanEnabled
69A SNMP SET operation on this object is only successful if the corresponding
70port has not been added as member of the bridge interface on the system.
71.It Va begemotBridgeBasePortStatus
72SNMP SET operations with the following values are allowed:
73.Bl -tag -width ".It Va createAndWait"
74.It Va createAndWait
75will create a new row for the bridge member in the SNMP
76.Va begemotBridgeBasePortTable
77but will not try to commit the information to the system.
78.It Va active
79will attempt to commit the information to the system and will be successful
80only if a value for
81.Va begemotBridgeBaseSpanEnabled
82has been SET already.
83.It Va destroy
84will attempt to remove the interface from the system bridge interface.
85.El
86.It Va begemotBridgeBasePortPrivate
87This object controls a bridge interface flag called PRIVATE where any private
88port can not communicate with another private port.
89.El
90.Sh RESTRICTIONS
91Not all information in the MIBs is currently available in FreeBSD.
92The following variables carry no information:
93.Bl -tag -width "XXXXXXXXX"
94.It Va dot1dBasePortCircuit
95.It Va dot1dBasePortDelayExceededDiscards
96.It Va dot1dBasePortMtuExceededDiscards
97.It Va begemotBridgeBasePortDelayExceededDiscards
98.It Va begemotBridgeBasePortMtuExceededDiscards
99.El
100.Sh FILES
101.Bl -tag -width "XXXXXXXXX"
102.It Pa /usr/share/snmp/defs/bridge_tree.def
103The description of the MIB tree implemented by
104.Nm .
105.It Pa /usr/share/snmp/mibs/BRIDGE-MIB.txt
106This is the BRIDGE-MIB that is implemented by this module.
107.It Pa /usr/share/snmp/mibs/RSTP-MIB.txt
108This is the RSTP-MIB implemented by this module.
109.It Pa /usr/share/snmp/mibs/BEGEMOT-BRIDGE-MIB.txt
110This is the private BEGEMOT-BRIDGE-MIB that is implemented by this module.
111.El
112.Sh SEE ALSO
113.Xr bsnmpd 1 ,
114.Xr gensnmptree 1 ,
115.Xr snmpmod 3 ,
116.Xr if_bridge 4 ,
117.Xr ifconfig 8
118.Sh AUTHORS
119.An Shteryana Shopova Aq Mt syrinx@FreeBSD.org
120