<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ustp, branch master</title>
<subtitle>OpenWrt MSTP/RSTP/STP daemon</subtitle>
<id>https://git.openwrt.org/project/ustp/atom?h=master</id>
<link rel='self' href='https://git.openwrt.org/project/ustp/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/ustp/'/>
<updated>2026-05-27T11:26:50Z</updated>
<entry>
<title>mstp: use default Hello Time in recordTimes</title>
<updated>2026-05-27T11:26:50Z</updated>
<author>
<name>Stijn Tintel</name>
</author>
<published>2026-05-27T09:52:16Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/ustp/commit/?id=17c36bebada116b98784a6a17412005537bdf8ac'/>
<id>urn:sha1:17c36bebada116b98784a6a17412005537bdf8ac</id>
<content type='text'>
802.1Q-2011 says recordTimes should set Hello Time to the default.
Follow that instead of preserving the local configured Hello Time.

This fixes received information aging when the local bridge uses a shorter
Hello Time than its neighbor. With OpenWrt's hello_time=1 and a Huawei
S6720 sending RSTP BPDUs every 2 seconds, rcvdInfoWhile was set to 3
seconds. With normal scheduling jitter, the superior information could
expire before the next BPDU, causing ustp to briefly elect itself root and
send a self-root BPDU.

On a realtek Edgecore ECS4100-12PH, this caused repeated MSTP
PACKET_ERR_COMPLIAN errors on the Huawei side, together with brief
forwarding -&gt; discarding -&gt; forwarding state changes:

  May 13 2026 16:31:22+03:00 DST cs0 %%01MSTP/3/PACKET_ERR_COMPLIAN(l)[47259]:The port compliance protocol type of the packet received by MSTP from the port XGigabitEthernet0/0/3,(InsId:0,RcvInt:0,SrcMAC:fa8e-a111-a57f,RootId:32768.f88e-a111-a574,ExCost:0,BdgId:32768.f88e-a111-a574,PortId:128.10,RegRootId:0.0000-0000-0000,InCost:0) is invalid.
  May 13 2026 16:31:22+03:00 DST cs0 %%01MSTP/4/SET_PORT_DISCARDING(l)[47260]:In MSTP process 0 instance 0, MSTP set port XGigabitEthernet0/0/3 state as discarding.
  May 13 2026 16:31:22+03:00 DST cs0 %%01MSTP/4/SET_PORT_FORWARDING(l)[47261]:In MSTP process 0 instance 0, MSTP set port XGigabitEthernet0/0/3 state as forwarding.
  May 13 2026 16:31:46+03:00 DST cs0 %%01MSTP/3/PACKET_ERR_COMPLIAN(l)[47262]:The port compliance protocol type of the packet received by MSTP from the port XGigabitEthernet0/0/3,(InsId:0,RcvInt:0,SrcMAC:fa8e-a111-a57f,RootId:32768.f88e-a111-a574,ExCost:0,BdgId:32768.f88e-a111-a574,PortId:128.10,RegRootId:0.0000-0000-0000,InCost:0) is invalid.
  May 13 2026 16:31:46+03:00 DST cs0 %%01MSTP/4/SET_PORT_DISCARDING(l)[47263]:In MSTP process 0 instance 0, MSTP set port XGigabitEthernet0/0/3 state as discarding.
  May 13 2026 16:31:46+03:00 DST cs0 %%01MSTP/4/SET_PORT_FORWARDING(l)[47264]:In MSTP process 0 instance 0, MSTP set port XGigabitEthernet0/0/3 state as forwarding.

There were 2396 errors between 2026-05-01 and 2026-05-19 10:00 with one
OpenWrt realtek switch running STP. After deploying this fix on two
Edgecore ECS4100-12PH switches, both running OpenWrt + ustp and connected
to the same Huawei, there were zero errors for 8 days.

Fixes: fd93aaef9ba9 ("Initial import")
Signed-off-by: Stijn Tintel &lt;stijn@linux-ipv6.be&gt;
</content>
</entry>
<entry>
<title>mstp: add default Hello Time constant</title>
<updated>2026-05-27T11:21:34Z</updated>
<author>
<name>Stijn Tintel</name>
</author>
<published>2026-05-27T09:51:46Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/ustp/commit/?id=f5d17dd60a897b581223170c9b25df974696c0ad'/>
<id>urn:sha1:f5d17dd60a897b581223170c9b25df974696c0ad</id>
<content type='text'>
The default Hello Time is used when initializing a bridge. Add a constant
for it instead of hard-coding the value.

This will be reused in the next commit to follow the 802.1Q-2011
recordTimes behavior.

Signed-off-by: Stijn Tintel &lt;stijn@linux-ipv6.be&gt;
</content>
</entry>
<entry>
<title>netif_utils: correctly close fd on read error</title>
<updated>2023-05-29T15:07:54Z</updated>
<author>
<name>Christian Marangi</name>
</author>
<published>2023-05-29T15:07:54Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/ustp/commit/?id=a85a5bc83bde5b485319ca12b6e32c4b7f0b120f'/>
<id>urn:sha1:a85a5bc83bde5b485319ca12b6e32c4b7f0b120f</id>
<content type='text'>
Fix Coverity Scan CID 1521069 reporting leaking fd on read error.
Refactor the read error handling and correctly close fd on read error.

Signed-off-by: Christian Marangi &lt;ansuelsmth@gmail.com&gt;
</content>
</entry>
<entry>
<title>build: use pthread cflags/ldflags</title>
<updated>2021-09-21T17:41:11Z</updated>
<author>
<name>Felix Fietkau</name>
</author>
<published>2021-09-21T17:41:09Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/ustp/commit/?id=462b3a491347e452c15220861949b1d6371fa59e'/>
<id>urn:sha1:462b3a491347e452c15220861949b1d6371fa59e</id>
<content type='text'>
Fixes build on glibc

Signed-off-by: Felix Fietkau &lt;nbd@nbd.name&gt;
</content>
</entry>
<entry>
<title>libnetlink: turn rtnetlink error answers into debug msgs</title>
<updated>2021-08-27T10:36:45Z</updated>
<author>
<name>Felix Fietkau</name>
</author>
<published>2021-08-27T10:36:44Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/ustp/commit/?id=25555611be916da7fe8cb53f85c741a51ddffa1c'/>
<id>urn:sha1:25555611be916da7fe8cb53f85c741a51ddffa1c</id>
<content type='text'>
They should not be logged by default

Signed-off-by: Felix Fietkau &lt;nbd@nbd.name&gt;
</content>
</entry>
<entry>
<title>bridge: check port bpdu filter status and apply it to the config</title>
<updated>2021-08-27T10:19:30Z</updated>
<author>
<name>Felix Fietkau</name>
</author>
<published>2021-08-27T10:19:29Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/ustp/commit/?id=c62d85cf7a0db267030e0ac2138e685b5e8f7017'/>
<id>urn:sha1:c62d85cf7a0db267030e0ac2138e685b5e8f7017</id>
<content type='text'>
Signed-off-by: Felix Fietkau &lt;nbd@nbd.name&gt;
</content>
</entry>
<entry>
<title>libnetlink: fix netlink buffer space handling</title>
<updated>2021-08-25T11:29:47Z</updated>
<author>
<name>Felix Fietkau</name>
</author>
<published>2021-08-25T11:29:45Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/ustp/commit/?id=9622264cf92691f18ae9222b0a4c9db95af5d80d'/>
<id>urn:sha1:9622264cf92691f18ae9222b0a4c9db95af5d80d</id>
<content type='text'>
Significantly increaese buffer size in order to avoid missing events
Do not stop polling socket after running out of buffer space

Signed-off-by: Felix Fietkau &lt;nbd@nbd.name&gt;
</content>
</entry>
<entry>
<title>brmon: continue polling the socket after an error occured</title>
<updated>2021-08-25T11:29:16Z</updated>
<author>
<name>Felix Fietkau</name>
</author>
<published>2021-08-25T11:29:14Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/ustp/commit/?id=9e087b4e69bfeb0634dbfebf1d2eb5beb4cf2a47'/>
<id>urn:sha1:9e087b4e69bfeb0634dbfebf1d2eb5beb4cf2a47</id>
<content type='text'>
Fixes a corner case with edge-trigger epoll

Signed-off-by: Felix Fietkau &lt;nbd@nbd.name&gt;
</content>
</entry>
<entry>
<title>Initial import</title>
<updated>2021-08-24T15:32:43Z</updated>
<author>
<name>Felix Fietkau</name>
</author>
<published>2021-08-19T06:59:56Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/ustp/commit/?id=fd93aaef9ba99188e30731651c589a2ab9bfc421'/>
<id>urn:sha1:fd93aaef9ba99188e30731651c589a2ab9bfc421</id>
<content type='text'>
Signed-off-by: Felix Fietkau &lt;nbd@nbd.name&gt;
</content>
</entry>
</feed>
