hardbyte / hardbyte/python-can
Socketcan uses incorrect flag for direction
Open
backend:socketcan
bug
- Dominant language
- Python
- Stars
- 1.6k
- Forks
- 697
- PR merge metrics
- No merged PRs in 30d
Description
The socketcan implementation is using `MSG_DONTROUTE` flag instead of `MSG_CONFIRM` flag to set the `is_rx` message field. This breaks applications where virtual can interface is used, because all messages originate from the same host and thus `is_rx` is always false. IMO the correct behavior should be to use `MSG_CONFIRM` flag instead, but this could break some existing applications if they use two instances of the same socket simultaneously. Opinions?
`MSG_DONTROUTE` and `MSG_CONFIRM` docs (section 4.1.7): https://www.kernel.org/doc/Documentation/networking/can.txt
Contributor guide
Assessment
This issue has not been assessed yet.