libnl  3.2.21
Bridging

Enumerations

enum  rtnl_link_bridge_flags {
  RTNL_BRIDGE_HAIRPIN_MODE = 0x0001,
  RTNL_BRIDGE_BPDU_GUARD = 0x0002,
  RTNL_BRIDGE_ROOT_BLOCK = 0x0004,
  RTNL_BRIDGE_FAST_LEAVE = 0x0008
}
 Bridge flags.

Functions

struct rtnl_linkrtnl_link_bridge_alloc (void)
 Allocate link object of type bridge.
int rtnl_link_is_bridge (struct rtnl_link *link)
 Check if a link is a bridge.
int rtnl_link_bridge_has_ext_info (struct rtnl_link *link)
 Check if bridge has extended information.
int rtnl_link_bridge_set_port_state (struct rtnl_link *link, uint8_t state)
 Set Spanning Tree Protocol (STP) port state.
int rtnl_link_bridge_get_port_state (struct rtnl_link *link)
 Get Spanning Tree Protocol (STP) port state.
int rtnl_link_bridge_set_priority (struct rtnl_link *link, uint16_t prio)
 Set priority.
int rtnl_link_bridge_get_priority (struct rtnl_link *link)
 Get priority.
int rtnl_link_bridge_set_cost (struct rtnl_link *link, uint32_t cost)
 Set Spanning Tree Protocol (STP) path cost.
int rtnl_link_bridge_get_cost (struct rtnl_link *link, uint32_t *cost)
 Get Spanning Tree Protocol (STP) path cost.
int rtnl_link_bridge_unset_flags (struct rtnl_link *link, unsigned int flags)
 Unset flags.
int rtnl_link_bridge_set_flags (struct rtnl_link *link, unsigned int flags)
 Set flags.
int rtnl_link_bridge_get_flags (struct rtnl_link *link)
 Get flags.

Detailed Description


Function Documentation

struct rtnl_link* rtnl_link_bridge_alloc ( void  )
read

Allocate link object of type bridge.

Returns:
Allocated link object or NULL.

Definition at line 191 of file bridge.c.

References rtnl_link_alloc(), rtnl_link_put(), and rtnl_link_set_type().

+ Here is the call graph for this function:

int rtnl_link_is_bridge ( struct rtnl_link link)

Check if a link is a bridge.

Parameters:
linkLink object
Returns:
1 if the link is a bridge, 0 otherwise.

Definition at line 213 of file bridge.c.

Referenced by rtnl_link_bridge_has_ext_info().

+ Here is the caller graph for this function:

int rtnl_link_bridge_has_ext_info ( struct rtnl_link link)

Check if bridge has extended information.

Parameters:
linkLink object of type bridge

Checks if the bridge object has been constructed based on information that is only available in newer kernels. This affectes the following functions:

Returns:
1 if extended information is available, otherwise 0 is returned.

Definition at line 232 of file bridge.c.

References rtnl_link_is_bridge().

+ Here is the call graph for this function:

int rtnl_link_bridge_set_port_state ( struct rtnl_link link,
uint8_t  state 
)

Set Spanning Tree Protocol (STP) port state.

Parameters:
linkLink object of type bridge
stateNew STP port state

The value of state must be one of the following:

  • BR_STATE_DISABLED
  • BR_STATE_LISTENING
  • BR_STATE_LEARNING
  • BR_STATE_FORWARDING
  • BR_STATE_BLOCKING
See also:
rtnl_link_bridge_get_port_state()
Returns:
0 on success or a negative error code.
Return values:
-NLE_OPNOTSUPPLink is not a bridge
-NLE_INVALInvalid state value (0..BR_STATE_BLOCKING)

Definition at line 261 of file bridge.c.

int rtnl_link_bridge_get_port_state ( struct rtnl_link link)

Get Spanning Tree Protocol (STP) port state.

Parameters:
linkLink object of type bridge
See also:
rtnl_link_bridge_set_port_state()
Returns:
The STP port state or a negative error code.
Return values:
-NLE_OPNOTSUPPLink is not a bridge

Definition at line 285 of file bridge.c.

int rtnl_link_bridge_set_priority ( struct rtnl_link link,
uint16_t  prio 
)

Set priority.

Parameters:
linkLink object of type bridge
prioBridge priority
See also:
rtnl_link_bridge_get_priority()
Returns:
0 on success or a negative error code.
Return values:
-NLE_OPNOTSUPPLink is not a bridge

Definition at line 304 of file bridge.c.

int rtnl_link_bridge_get_priority ( struct rtnl_link link)

Get priority.

Parameters:
linkLink object of type bridge
See also:
rtnl_link_bridge_set_priority()
Returns:
0 on success or a negative error code.
Return values:
-NLE_OPNOTSUPPLink is not a bridge

Definition at line 325 of file bridge.c.

int rtnl_link_bridge_set_cost ( struct rtnl_link link,
uint32_t  cost 
)

Set Spanning Tree Protocol (STP) path cost.

Parameters:
linkLink object of type bridge
costNew STP path cost value
See also:
rtnl_link_bridge_get_cost()
Returns:
The bridge priority or a negative error code.
Return values:
-NLE_OPNOTSUPPLink is not a bridge

Definition at line 344 of file bridge.c.

int rtnl_link_bridge_get_cost ( struct rtnl_link link,
uint32_t *  cost 
)

Get Spanning Tree Protocol (STP) path cost.

Parameters:
linkLink object of type bridge
costPointer to store STP cost value
See also:
rtnl_link_bridge_set_cost()
Returns:
0 on success or a negative error code.
Return values:
-NLE_OPNOTSUPPLink is not a bridge
-NLE_INVALcost is not a valid pointer

Definition at line 367 of file bridge.c.

int rtnl_link_bridge_unset_flags ( struct rtnl_link link,
unsigned int  flags 
)

Unset flags.

Parameters:
linkLink object of type bridge
flagsBridging flags to unset
See also:
rtnl_link_bridge_set_flags()
rtnl_link_bridge_get_flags()
Returns:
0 on success or a negative error code.
Return values:
-NLE_OPNOTSUPPLink is not a bridge

Definition at line 392 of file bridge.c.

int rtnl_link_bridge_set_flags ( struct rtnl_link link,
unsigned int  flags 
)

Set flags.

Parameters:
linkLink object of type bridge
flagsBridging flags to set

Valid flags are:

  • RTNL_BRIDGE_HAIRPIN_MODE
  • RTNL_BRIDGE_BPDU_GUARD
  • RTNL_BRIDGE_ROOT_BLOCK
  • RTNL_BRIDGE_FAST_LEAVE
See also:
rtnl_link_bridge_unset_flags()
rtnl_link_bridge_get_flags()
Returns:
0 on success or a negative error code.
Return values:
-NLE_OPNOTSUPPLink is not a bridge

Definition at line 422 of file bridge.c.

int rtnl_link_bridge_get_flags ( struct rtnl_link link)

Get flags.

Parameters:
linkLink object of type bridge
See also:
rtnl_link_bridge_set_flags()
rtnl_link_bridge_unset_flags()
Returns:
Flags or a negative error code.
Return values:
-NLE_OPNOTSUPPLink is not a bridge

Definition at line 445 of file bridge.c.