Corrected problem in MS/TP state machine where device was sending PFM frames to itself (destination address same as source address) when solemaster is true (Thank you to John Stachler!).

This commit is contained in:
skarg
2007-09-28 23:38:54 +00:00
parent 3fa42d3df6
commit ba20c1cc03
4 changed files with 4 additions and 4 deletions
+1 -1
View File
@@ -845,7 +845,7 @@ bool MSTP_Master_Node_FSM(volatile struct mstp_port_struct_t * mstp_port)
} else if (next_poll_station == mstp_port->Next_Station) {
if (mstp_port->SoleMaster == true) {
/* SoleMasterRestartMaintenancePFM */
mstp_port->Poll_Station = next_poll_station;
mstp_port->Poll_Station = next_next_station;
MSTP_Create_And_Send_Frame(mstp_port,
FRAME_TYPE_POLL_FOR_MASTER, mstp_port->Poll_Station,
mstp_port->This_Station, NULL, 0);
+1 -1
View File
@@ -925,7 +925,7 @@ static bool MSTP_Master_Node_FSM(void)
} else if (next_poll_station == Next_Station) {
if (MSTP_Flag.SoleMaster == true) {
/* SoleMasterRestartMaintenancePFM */
Poll_Station = next_poll_station;
Poll_Station = next_next_station;
MSTP_Send_Frame(
FRAME_TYPE_POLL_FOR_MASTER, Poll_Station,
This_Station, NULL, 0);
+1 -1
View File
@@ -921,7 +921,7 @@ static bool MSTP_Master_Node_FSM(void)
} else if (next_poll_station == Next_Station) {
if (MSTP_Flag.SoleMaster == true) {
/* SoleMasterRestartMaintenancePFM */
Poll_Station = next_poll_station;
Poll_Station = next_next_station;
MSTP_Send_Frame(
FRAME_TYPE_POLL_FOR_MASTER, Poll_Station,
This_Station, NULL, 0);
+1 -1
View File
@@ -832,7 +832,7 @@ bool MSTP_Master_Node_FSM(volatile struct mstp_port_struct_t * mstp_port)
} else if (next_poll_station == mstp_port->Next_Station) {
if (mstp_port->SoleMaster == true) {
/* SoleMasterRestartMaintenancePFM */
mstp_port->Poll_Station = next_poll_station;
mstp_port->Poll_Station = next_next_station;
MSTP_Create_And_Send_Frame(mstp_port,
FRAME_TYPE_POLL_FOR_MASTER, mstp_port->Poll_Station,
mstp_port->This_Station, NULL, 0);