Revision tags: release/14.0.0 |
|
#
95ee2897 |
| 16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
sys: Remove $FreeBSD$: two-line .h pattern
Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/
|
#
d862b165 |
| 10-Apr-2023 |
Mark Johnston <markj@FreeBSD.org> |
bridge: Add support for emulated netmap mode
if_bridge receives packets via a special interface, if_bridge_input, rather than by if_input. Thus, netmap's usual hooking of ifnet routines does not wo
bridge: Add support for emulated netmap mode
if_bridge receives packets via a special interface, if_bridge_input, rather than by if_input. Thus, netmap's usual hooking of ifnet routines does not work as expected. Instead, modify bridge_input() to pass packets directly to netmap when it is enabled. This applies to both locally delivered packets and forwarded packets.
When a netmap application transmits a packet by writing it to the host TX ring, the mbuf chain is passed to if_input, which ordinarily points to ether_input(). However, when transmitting via if_bridge, bridge_input() needs to see the packet again in order to decide whether to deliver or forward. Thus, introduce a new protocol flag, M_BRIDGE_INJECT, which 1) causes the packet to be passed to bridge_input() again after Ethernet processing, and 2) avoids passing the packet back to netmap. The source MAC address of the packet is used to determine the original "receiving" interface.
Reviewed by: vmaffione MFC after: 2 months Sponsored by: Zenarmor Sponsored by: OPNsense Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D38066
show more ...
|
Revision tags: release/13.2.0 |
|
#
92b7d1db |
| 24-Jan-2023 |
Mark Johnston <markj@FreeBSD.org> |
bridge: Fix whitespace
No functional change intended.
MFC after: 1 week
|
Revision tags: release/12.4.0, release/13.1.0 |
|
#
e9167358 |
| 15-Dec-2021 |
Kristof Provost <kp@FreeBSD.org> |
net: make if_bridgevar.h self-contained
Reviewed by: imp Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D33502
|
Revision tags: release/12.3.0, release/13.0.0 |
|
#
88be0e11 |
| 30-Jan-2021 |
Jonah Caplan <jcaplan@blackberry.com> |
bridge: fix STP roles and protos strings
Add the missing commas that got lost in e5539fb618cc7.
PR: 252532 Reviewd by: kp@, donner@, freqlabs@ MFC after: 3 days Differential Revision: https://revi
bridge: fix STP roles and protos strings
Add the missing commas that got lost in e5539fb618cc7.
PR: 252532 Reviewd by: kp@, donner@, freqlabs@ MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D28425
show more ...
|
Revision tags: release/12.2.0 |
|
#
e5539fb6 |
| 01-Jul-2020 |
Ryan Moeller <freqlabs@FreeBSD.org> |
libifconfig: Add function to get bridge status
The new function operates similarly to ifconfig_lagg_get_lagg_status and likewise is accompanied by a function to free the bridge status data structure
libifconfig: Add function to get bridge status
The new function operates similarly to ifconfig_lagg_get_lagg_status and likewise is accompanied by a function to free the bridge status data structure.
I have included in this patch the relocation of some strings describing STP parameters and the PV2ID macro from ifconfig into net/if_bridgevar.h as they are useful for consumers of libifconfig.
Reviewed by: kp, melifaro, mmacy Approved by: mmacy (mentor) MFC after: 1 week Relnotes: yes Differential Revision: https://reviews.freebsd.org/D25460
show more ...
|
Revision tags: release/11.4.0 |
|
#
75dfc66c |
| 27-Feb-2020 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r358269 through r358399.
|
#
33b1fe11 |
| 26-Feb-2020 |
Kristof Provost <kp@FreeBSD.org> |
bridge: Move locking defines into if_bridge.c
The locking defines for if_bridge used to live in if_bridgevar.h, but they're only ever used by the bridge implementation itself (in if_bridge.c). Movin
bridge: Move locking defines into if_bridge.c
The locking defines for if_bridge used to live in if_bridgevar.h, but they're only ever used by the bridge implementation itself (in if_bridge.c). Moving them into the .c file.
Reported by: philip, emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D23808
show more ...
|
Revision tags: release/12.1.0, release/11.3.0, release/12.0.0, release/11.2.0 |
|
#
5c30b378 |
| 11-May-2018 |
Matt Macy <mmacy@FreeBSD.org> |
Allow different bridge types to coexist
if_bridge has a lot of limitations that make it scale poorly to higher data rates. In my projects/VPC branch I leverage the bridge interface between layers fo
Allow different bridge types to coexist
if_bridge has a lot of limitations that make it scale poorly to higher data rates. In my projects/VPC branch I leverage the bridge interface between layers for my high speed soft switch as well as for purposes of stacking in general.
Reviewed by: sbruno@ Approved by: sbruno@ Differential Revision: https://reviews.freebsd.org/D15344
show more ...
|
#
fe267a55 |
| 27-Nov-2017 |
Pedro F. Giffuni <pfg@FreeBSD.org> |
sys: general adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I was using misidentified many licenses so this was mostly a manual - error pro
sys: general adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I was using misidentified many licenses so this was mostly a manual - error prone - task.
The Software Package Data Exchange (SPDX) group provides a specification to make it easier for automated tools to detect and summarize well known opensource licenses. We are gradually adopting the specification, noting that the tags are considered only advisory and do not, in any way, superceed or replace the license texts.
No functional change intended.
show more ...
|
Revision tags: release/10.4.0, release/11.1.0 |
|
#
9b3ece1c |
| 04-Feb-2017 |
Enji Cooper <ngie@FreeBSD.org> |
MFhead@r313243
|
#
14f850f3 |
| 27-Jan-2017 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r312720 through r312893.
|
#
ab5cda71 |
| 25-Jan-2017 |
Kristof Provost <kp@FreeBSD.org> |
bridge: Release the bridge lock when calling bridge_set_ifcap()
This calls ioctl() handlers for the different interfaces in the bridge. These handlers expect to get called in an ioctl context where
bridge: Release the bridge lock when calling bridge_set_ifcap()
This calls ioctl() handlers for the different interfaces in the bridge. These handlers expect to get called in an ioctl context where it's safe for them to sleep. We may not sleep with the bridge lock held.
However, we still need to protect the interface list, to ensure it doesn't get changed while we iterate over it. Use BRIDGE_XLOCK(), which prevents bridge members from being removed. Adding bridge members is safe, because it uses LIST_INSERT_HEAD().
This caused panics when adding xen interfaces to a bridge.
PR: 216304 Reviewed by: ae MFC after: 1 week Sponsored by: RootBSD Differential Revision: https://reviews.freebsd.org/D9290
show more ...
|
Revision tags: release/11.0.1, release/11.0.0, release/10.3.0, release/10.2.0, release/10.1.0, release/9.3.0, release/10.0.0, release/9.2.0, release/8.4.0, release/9.1.0, release/8.3.0_cvs, release/8.3.0, release/9.0.0, release/7.4.0_cvs, release/8.2.0_cvs, release/7.4.0, release/8.2.0, release/8.1.0_cvs, release/8.1.0, release/7.3.0_cvs, release/7.3.0, release/8.0.0_cvs, release/8.0.0, release/7.2.0_cvs, release/7.2.0, release/7.1.0_cvs, release/7.1.0, release/6.4.0_cvs, release/6.4.0, release/7.0.0_cvs, release/7.0.0, release/6.3.0_cvs, release/6.3.0 |
|
#
5f33ec7b |
| 04-Nov-2007 |
Andrew Thompson <thompsa@FreeBSD.org> |
Add an option to limit the number of source MACs that can be behind a bridge interface. Once the limit is reached packets with unknown source addresses are dropped until an existing host cache entry
Add an option to limit the number of source MACs that can be behind a bridge interface. Once the limit is reached packets with unknown source addresses are dropped until an existing host cache entry expires or is removed. Useful to use with the STICKY cache option.
Sponsored by: miniSuperHappyDevHouse NZ
show more ...
|
#
85ce7297 |
| 01-Aug-2007 |
Andrew Thompson <thompsa@FreeBSD.org> |
Add a bridge interface flag called PRIVATE where any private port can not communicate with another private port.
All unicast/broadcast/multicast layer2 traffic is blocked so it works much the same w
Add a bridge interface flag called PRIVATE where any private port can not communicate with another private port.
All unicast/broadcast/multicast layer2 traffic is blocked so it works much the same way as using firewall rules but scales better and is generally easier as firewall packages usually do not allow ARP blocking.
An example usage would be having a number of customers on separate vlans bridged with a server network. All the vlans are marked private, they can all communicate with the server network unhindered, but can not exchange any traffic whatsoever with each other.
Approved by: re (rwatson)
show more ...
|
#
82056f42 |
| 26-Jul-2007 |
Andrew Thompson <thompsa@FreeBSD.org> |
Avoid holding the softc lock when using copyout().
Reported by: dfr Approved by: re (rwatson)
|
#
22dcc3c1 |
| 13-Jun-2007 |
Andrew Thompson <thompsa@FreeBSD.org> |
Add the vlan tag to the bridge route table. This allows a vlan trunk to be bridged, previously legitimate traffic was not passed as the bridge could not tell that it was on a different Ethernet segme
Add the vlan tag to the bridge route table. This allows a vlan trunk to be bridged, previously legitimate traffic was not passed as the bridge could not tell that it was on a different Ethernet segment.
All non-tagged traffic is treated as vlan1 as per IEEE 802.1Q-2003
show more ...
|
Revision tags: release/6.2.0_cvs, release/6.2.0 |
|
#
78709605 |
| 12-Dec-2006 |
Andrew Thompson <thompsa@FreeBSD.org> |
These days P2P means peer-2-peer (also well known from serveral filesharing protocols) while PointToPoint has been PtP links. Change the variables accordingly while the code is still fresh and undocu
These days P2P means peer-2-peer (also well known from serveral filesharing protocols) while PointToPoint has been PtP links. Change the variables accordingly while the code is still fresh and undocumented.
Requested by: bz
show more ...
|
#
daacddca |
| 04-Dec-2006 |
Shteryana Shopova <syrinx@FreeBSD.org> |
Add two new flags to if_bridge(4) indicating whether the edge flag of the bridge port and path cost have been administratively set or calculated automatically by RSTP.
Make sure to transition from n
Add two new flags to if_bridge(4) indicating whether the edge flag of the bridge port and path cost have been administratively set or calculated automatically by RSTP.
Make sure to transition from non-edge to edge when the port goes down and the edge flag was manually set before. This is needed to comply with the condition ((!portEnabled && AdminEdge) || ....) in the Bridge Detection State Machine (IEE802.1D-2004, p. 171).
Reviewed by: thompsa Approved by: bz (mentor)
show more ...
|
#
6c32e05c |
| 27-Nov-2006 |
Andrew Thompson <thompsa@FreeBSD.org> |
Sync with the OpenBSD port of RSTP - use flags rather than sperate ioctls for edge, p2p - implement p2p and autop2p flags - define large pathcost constant as ULL - show bridgeid and rootid in ifc
Sync with the OpenBSD port of RSTP - use flags rather than sperate ioctls for edge, p2p - implement p2p and autop2p flags - define large pathcost constant as ULL - show bridgeid and rootid in ifconfig
Obtained from: Reyk Floeter <reyk@openbsd.org>
show more ...
|
#
3df7fad0 |
| 09-Nov-2006 |
Andrew Thompson <thompsa@FreeBSD.org> |
Add a new address cache type called sticky. On an interface marked sticky any address learned by the bridge is made permanent, the address will not age out and most importantly will not migrate to an
Add a new address cache type called sticky. On an interface marked sticky any address learned by the bridge is made permanent, the address will not age out and most importantly will not migrate to another interface.
This can be used to stop mac address poisoning or clients roaming in much the same way as static entries without the hassle of preloading the table.
show more ...
|
#
3fab7669 |
| 01-Nov-2006 |
Andrew Thompson <thompsa@FreeBSD.org> |
Bring in support for the Rapid Spanning Tree Protocol (802.1w).
RSTP provides faster spanning tree convergence, the protocol will exchange information with neighboring switches to quickly transition
Bring in support for the Rapid Spanning Tree Protocol (802.1w).
RSTP provides faster spanning tree convergence, the protocol will exchange information with neighboring switches to quickly transition to forwarding without creating loops. The code will default to RSTP mode but will downgrade any port connected to a legacy STP network so is fully backward compatible.
Reviewed by: syrinx Tested by: syrinx
show more ...
|
#
51383c37 |
| 31-Jul-2006 |
Andrew Thompson <thompsa@FreeBSD.org> |
Add some statistics that are needed to support RFC4188 as part of the SoC2006 work on a bridge monitoring module for BSNMP.
Submitted by: shteryana (SoC 2006)
|
#
9674cf0e |
| 27-Jul-2006 |
Andrew Thompson <thompsa@FreeBSD.org> |
Remove the dependency of bridgestp.h on if_bridgevar.h by moving a couple of private structures to if_bridge.c.
|
#
96e47153 |
| 26-Jul-2006 |
Andrew Thompson <thompsa@FreeBSD.org> |
/tmp/cvsuusTrc
|