You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
What happens:
When there is a stray byte at the end of the OPEN SYN
Zenohd will reply with an OPEN ACK
It will not report anything about the trailing byte.
When sending other messages (KEEP_ALIVE [1,0,4] or PUT-FRAME) it will not process these messages.
Zenohd will also not report anything about those messages.
It will not recover (discarding that trailing byte).
It will still send KEEP_ALIVE messages.
After a while zenohd will time out.
What I expect to happen:
I think zenohd should report any unexpected bytes.
Perhaps it should also try to recover.
To reproduce
Start Zenohd
Do the handshake but add a trailing byte at the end of the OPEN SYN
For example, OPEN SYN: [38,00,66,255,0,1 + COOKIE + 00]
I don't think this is a bug... the protocol doesn't allow for trailing bytes nor bytes misalignment.
When the protocol is not respected than undefined behaviour is to be expected.
Keeping in mind this kind of behaviour affects only the connection being established because the PLC is not respecting the protocol.
Is this happening with zenoh-pico or with a custom implementation of the protocol?
I don't think this is a bug... the protocol doesn't allow for trailing bytes nor bytes misalignment. When the protocol is not
respected than undefined behaviour is to be expected.
Trailing bytes will be interpreted as the beginning of the next message, and with highly likelihood that will be considered as either an unknown or ill-formed message and the session will be closed. If the trailing bytes end-up representing a valid Zenoh message, then those will be interpreted in the context of the current state of the protocol. Thus I am not sure it is accurate to talk about undefined behaviour.
Describe the bug
What happens:
When there is a stray byte at the end of the OPEN SYN
Zenohd will reply with an OPEN ACK
It will not report anything about the trailing byte.
When sending other messages (KEEP_ALIVE
[1,0,4]
or PUT-FRAME) it will not process these messages.Zenohd will also not report anything about those messages.
It will not recover (discarding that trailing byte).
It will still send KEEP_ALIVE messages.
After a while zenohd will time out.
What I expect to happen:
I think zenohd should report any unexpected bytes.
Perhaps it should also try to recover.
To reproduce
For example, OPEN SYN:
[38,00,66,255,0,1 + COOKIE + 00]
zenohd config changes:
To reproduce:
System info
The text was updated successfully, but these errors were encountered: