Port Role Transition state machine (PRT) More...
#include "rstp/rstp.h"Go to the source code of this file.
Enumerations | |
| enum | RstpPrtState { RSTP_PRT_STATE_INIT_PORT = 0, RSTP_PRT_STATE_DISABLE_PORT = 1, RSTP_PRT_STATE_DISABLED_PORT = 2, RSTP_PRT_STATE_ROOT_PROPOSED = 3, RSTP_PRT_STATE_ROOT_AGREED = 4, RSTP_PRT_STATE_REROOT = 5, RSTP_PRT_STATE_ROOT_FORWARD = 6, RSTP_PRT_STATE_ROOT_LEARN = 7, RSTP_PRT_STATE_REROOTED = 8, RSTP_PRT_STATE_ROOT_PORT = 9, RSTP_PRT_STATE_DESIGNATED_PROPOSE = 10, RSTP_PRT_STATE_DESIGNATED_SYNCED = 11, RSTP_PRT_STATE_DESIGNATED_RETIRED = 12, RSTP_PRT_STATE_DESIGNATED_FORWARD = 13, RSTP_PRT_STATE_DESIGNATED_LEARN = 14, RSTP_PRT_STATE_DESIGNATED_DISCARD = 15, RSTP_PRT_STATE_DESIGNATED_PORT = 16, RSTP_PRT_STATE_ALTERNATE_PROPOSED = 17, RSTP_PRT_STATE_ALTERNATE_AGREED = 18, RSTP_PRT_STATE_BLOCK_PORT = 19, RSTP_PRT_STATE_BACKUP_PORT = 20, RSTP_PRT_STATE_ALTERNATE_PORT = 21 } |
| Port Role Transition machine states. More... | |
Functions | |
| void | rstpPrtInit (RstpBridgePort *port) |
| PRT state machine initialization. More... | |
| void | rstpPrtFsm (RstpBridgePort *port) |
| PRT state machine implementation. More... | |
| void | rstpPrtDisabledPortFsm (RstpBridgePort *port) |
| PRT state machine implementation (Disabled port role) More... | |
| void | rstpPrtDisabledPortChangeState (RstpBridgePort *port, RstpPrtState newState) |
| Update PRT state machine state (Disabled port role) More... | |
| void | rstpPrtRootPortFsm (RstpBridgePort *port) |
| PRT state machine implementation (Root port role) More... | |
| void | rstpPrtRootPortChangeState (RstpBridgePort *port, RstpPrtState newState) |
| Update PRT state machine state (Root port role) More... | |
| void | rstpPrtDesignatedPortFsm (RstpBridgePort *port) |
| PRT state machine implementation (Designated port role) More... | |
| void | rstpPrtDesignatedPortChangeState (RstpBridgePort *port, RstpPrtState newState) |
| Update PRT state machine state (Designated port role) More... | |
| void | rstpPrtAlternatePortFsm (RstpBridgePort *port) |
| PRT state machine implementation (Alternate or Backup port role) More... | |
| void | rstpPrtAlternatePortChangeState (RstpBridgePort *port, RstpPrtState newState) |
| Update PRT state machine state (Alternate or Backup port role) More... | |
Detailed Description
Port Role Transition state machine (PRT)
License
SPDX-License-Identifier: GPL-2.0-or-later
Copyright (C) 2019-2025 Oryx Embedded SARL. All rights reserved.
This file is part of CycloneSTP Open.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- Version
- 2.5.4
Definition in file rstp_prt.h.
Enumeration Type Documentation
◆ RstpPrtState
| enum RstpPrtState |
Port Role Transition machine states.
Definition at line 47 of file rstp_prt.h.
Function Documentation
◆ rstpPrtAlternatePortChangeState()
| void rstpPrtAlternatePortChangeState | ( | RstpBridgePort * | port, |
| RstpPrtState | newState | ||
| ) |
Update PRT state machine state (Alternate or Backup port role)
- Parameters
-
[in] port Pointer to the bridge port context [in] newState New state to switch to
Definition at line 718 of file rstp_prt.c.
◆ rstpPrtAlternatePortFsm()
| void rstpPrtAlternatePortFsm | ( | RstpBridgePort * | port | ) |
PRT state machine implementation (Alternate or Backup port role)
- Parameters
-
[in] port Pointer to the bridge port context
Definition at line 637 of file rstp_prt.c.
◆ rstpPrtDesignatedPortChangeState()
| void rstpPrtDesignatedPortChangeState | ( | RstpBridgePort * | port, |
| RstpPrtState | newState | ||
| ) |
Update PRT state machine state (Designated port role)
- Parameters
-
[in] port Pointer to the bridge port context [in] newState New state to switch to
Definition at line 551 of file rstp_prt.c.
◆ rstpPrtDesignatedPortFsm()
| void rstpPrtDesignatedPortFsm | ( | RstpBridgePort * | port | ) |
PRT state machine implementation (Designated port role)
- Parameters
-
[in] port Pointer to the bridge port context
Definition at line 461 of file rstp_prt.c.
◆ rstpPrtDisabledPortChangeState()
| void rstpPrtDisabledPortChangeState | ( | RstpBridgePort * | port, |
| RstpPrtState | newState | ||
| ) |
Update PRT state machine state (Disabled port role)
- Parameters
-
[in] port Pointer to the bridge port context [in] newState New state to switch to
Definition at line 224 of file rstp_prt.c.
◆ rstpPrtDisabledPortFsm()
| void rstpPrtDisabledPortFsm | ( | RstpBridgePort * | port | ) |
PRT state machine implementation (Disabled port role)
- Parameters
-
[in] port Pointer to the bridge port context
Definition at line 166 of file rstp_prt.c.
◆ rstpPrtFsm()
| void rstpPrtFsm | ( | RstpBridgePort * | port | ) |
PRT state machine implementation.
- Parameters
-
[in] port Pointer to the bridge port context
Definition at line 91 of file rstp_prt.c.
◆ rstpPrtInit()
| void rstpPrtInit | ( | RstpBridgePort * | port | ) |
PRT state machine initialization.
- Parameters
-
[in] port Pointer to the bridge port context
Definition at line 79 of file rstp_prt.c.
◆ rstpPrtRootPortChangeState()
| void rstpPrtRootPortChangeState | ( | RstpBridgePort * | port, |
| RstpPrtState | newState | ||
| ) |
Update PRT state machine state (Root port role)
- Parameters
-
[in] port Pointer to the bridge port context [in] newState New state to switch to
Definition at line 379 of file rstp_prt.c.
◆ rstpPrtRootPortFsm()
| void rstpPrtRootPortFsm | ( | RstpBridgePort * | port | ) |
PRT state machine implementation (Root port role)
- Parameters
-
[in] port Pointer to the bridge port context
Definition at line 287 of file rstp_prt.c.
