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.Dd August 6, 2007
27.Dt SNMP_BRIDGE 3
28.Os
29.Sh NAME
30.Nm snmp_bridge
31.Nd "bridge module for snmpd"
32.Sh LIBRARY
33.Pq begemotSnmpdModulePath."bridge" = "/usr/lib/snmp_bridge.so"
34.Sh DESCRIPTION
35The
36.Nm snmp_bridge
37module implements the BRIDGE-MIB as standardized in RFC 4188, the RSTP-MIB
38standardized in RFC4318 and a private BEGEMOT-BRIDGE-MIB, which allows
39management of multiple bridge interfaces.
40Most of the objects defined in the private BEGEMOT-BRIDGE-MIB are duplicates
41of the original objects defined by the standard BRIDGE-MIB, but the private
42MIB also defines additional objects which make the functionality of
43.Nm
44similar to
45.Xr ifconfig 8
46for configuring bridge interfaces.
47Therefore one should consider adding write communities or loading the
48.Nm
49module on systems where security is crucial.
50.Sh IMPLEMENTATION NOTES
51The additional objects to configure a bridge are:
52.Bl -tag -width "XXXXXXXXX"
53.It Va begemotBridgeBaseStatus
54Bridge interfaces can be created and destroyed via this object.
55SNMP SET operations with the following values are allowed:
56.Bl -tag -width ".It Va createAndWait"
57.It Va createAndWait
58will attempt to create a bridge interface with the name given by the table
59index.
60.It Va createAndGo
61will attempt to create a bridge interface with the name given by the table
62index and set the status of the interface to "active/up".
63.It Va destroy
64will attempt to destroy the bridge interface.
65.El
66.It Va begemotBridgeBaseSpanEnabled
67A SNMP SET operation on this object is only successful if the corresponding
68port has not been added as member of the bridge interface on the system.
69.It Va begemotBridgeBasePortStatus
70SNMP SET operations with the following values are allowed:
71.Bl -tag -width ".It Va createAndWait"
72.It Va createAndWait
73will create a new row for the bridge member in the SNMP
74.Va begemotBridgeBasePortTable
75but will not try to commit the information to the system.
76.It Va active
77will attempt to commit the information to the system and will be successful
78only if a value for
79.Va begemotBridgeBaseSpanEnabled
80has been SET already.
81.It Va destroy
82will attempt to remove the interface from the system bridge interface.
83.El
84.It Va begemotBridgeBasePortPrivate
85This object controls a bridge interface flag called PRIVATE where any private
86port can not communicate with another private port.
87.El
88.Sh RESTRICTIONS
89Not all information in the MIBs is currently available in FreeBSD.
90The following variables carry no information:
91.Bl -tag -width "XXXXXXXXX"
92.It Va dot1dBasePortCircuit
93.It Va dot1dBasePortDelayExceededDiscards
94.It Va dot1dBasePortMtuExceededDiscards
95.It Va begemotBridgeBasePortDelayExceededDiscards
96.It Va begemotBridgeBasePortMtuExceededDiscards
97.El
98.Sh FILES
99.Bl -tag -width "XXXXXXXXX"
100.It Pa /usr/share/snmp/defs/bridge_tree.def
101The description of the MIB tree implemented by
102.Nm .
103.It Pa /usr/share/snmp/mibs/BRIDGE-MIB.txt
104This is the BRIDGE-MIB that is implemented by this module.
105.It Pa /usr/share/snmp/mibs/RSTP-MIB.txt
106This is the RSTP-MIB implemented by this module.
107.It Pa /usr/share/snmp/mibs/BEGEMOT-BRIDGE-MIB.txt
108This is the private BEGEMOT-BRIDGE-MIB that is implemented by this module.
109.El
110.Sh SEE ALSO
111.Xr bsnmpd 1 ,
112.Xr gensnmptree 1 ,
113.Xr snmpmod 3 ,
114.Xr if_bridge 4 ,
115.Xr ifconfig 8
116.Sh AUTHORS
117.An Shteryana Shopova Aq Mt syrinx@FreeBSD.org
118