Bumps the non-rust-vmm group with 20 updates in the / directory: | Package | From | To | | --- | --- | --- | | [clap](https://github.com/clap-rs/clap) | `4.5.21` | `4.5.23` | | [env_logger](https://github.com/rust-cli/env_logger) | `0.11.5` | `0.11.6` | | [thiserror](https://github.com/dtolnay/thiserror) | `2.0.3` | `2.0.9` | | [socketcan](https://github.com/mbr/socketcan-rs) | `3.3.1` | `3.5.0` | | [console](https://github.com/console-rs/console) | `0.15.8` | `0.15.10` | | [libc](https://github.com/rust-lang/libc) | `0.2.167` | `0.2.169` | | [itertools](https://github.com/rust-itertools/itertools) | `0.13.0` | `0.14.0` | | [serde](https://github.com/serde-rs/serde) | `1.0.215` | `1.0.217` | | [anyhow](https://github.com/dtolnay/anyhow) | `1.0.93` | `1.0.95` | | [bytemuck](https://github.com/Lokathor/bytemuck) | `1.20.0` | `1.21.0` | | [cc](https://github.com/rust-lang/cc-rs) | `1.2.2` | `1.2.6` | | [env_filter](https://github.com/rust-cli/env_logger) | `0.1.2` | `0.1.3` | | [fastrand](https://github.com/smol-rs/fastrand) | `2.2.0` | `2.3.0` | | [glob](https://github.com/rust-lang/glob) | `0.3.1` | `0.3.2` | | [home](https://github.com/rust-lang/cargo) | `0.5.9` | `0.5.11` | | [quote](https://github.com/dtolnay/quote) | `1.0.37` | `1.0.38` | | redox_syscall | `0.5.7` | `0.5.8` | | [rustix](https://github.com/bytecodealliance/rustix) | `0.38.41` | `0.38.42` | | [semver](https://github.com/dtolnay/semver) | `1.0.23` | `1.0.24` | | [winnow](https://github.com/winnow-rs/winnow) | `0.6.20` | `0.6.21` | Bumps the non-rust-vmm group with 16 updates in the /staging directory: | Package | From | To | | --- | --- | --- | | [clap](https://github.com/clap-rs/clap) | `4.5.21` | `4.5.23` | | [env_logger](https://github.com/rust-cli/env_logger) | `0.11.5` | `0.11.6` | | [thiserror](https://github.com/dtolnay/thiserror) | `2.0.3` | `2.0.9` | | [libc](https://github.com/rust-lang/libc) | `0.2.167` | `0.2.169` | | [anyhow](https://github.com/dtolnay/anyhow) | `1.0.93` | `1.0.95` | | [env_filter](https://github.com/rust-cli/env_logger) | `0.1.2` | `0.1.3` | | [fastrand](https://github.com/smol-rs/fastrand) | `2.2.0` | `2.3.0` | | [glob](https://github.com/rust-lang/glob) | `0.3.1` | `0.3.2` | | [quote](https://github.com/dtolnay/quote) | `1.0.37` | `1.0.38` | | [rustix](https://github.com/bytecodealliance/rustix) | `0.38.41` | `0.38.42` | | [semver](https://github.com/dtolnay/semver) | `1.0.23` | `1.0.24` | | [syn](https://github.com/dtolnay/syn) | `2.0.90` | `2.0.93` | | [winnow](https://github.com/winnow-rs/winnow) | `0.6.20` | `0.6.21` | | [predicates](https://github.com/assert-rs/predicates-rs) | `3.1.2` | `3.1.3` | | [predicates-core](https://github.com/assert-rs/predicates-rs) | `1.0.8` | `1.0.9` | | [predicates-tree](https://github.com/assert-rs/predicates-rs) | `1.0.11` | `1.0.12` | Updates `clap` from 4.5.21 to 4.5.23 - [Release notes](https://github.com/clap-rs/clap/releases) - [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md) - [Commits](https://github.com/clap-rs/clap/compare/clap_complete-v4.5.21...clap_complete-v4.5.23) Updates `env_logger` from 0.11.5 to 0.11.6 - [Release notes](https://github.com/rust-cli/env_logger/releases) - [Changelog](https://github.com/rust-cli/env_logger/blob/main/CHANGELOG.md) - [Commits](https://github.com/rust-cli/env_logger/compare/v0.11.5...v0.11.6) Updates `thiserror` from 2.0.3 to 2.0.9 - [Release notes](https://github.com/dtolnay/thiserror/releases) - [Commits](https://github.com/dtolnay/thiserror/compare/2.0.3...2.0.9) Updates `socketcan` from 3.3.1 to 3.5.0 - [Release notes](https://github.com/mbr/socketcan-rs/releases) - [Changelog](https://github.com/socketcan-rs/socketcan-rs/blob/master/CHANGELOG.md) - [Commits](https://github.com/mbr/socketcan-rs/compare/v3.3.1...v3.5.0) Updates `console` from 0.15.8 to 0.15.10 - [Release notes](https://github.com/console-rs/console/releases) - [Changelog](https://github.com/console-rs/console/blob/main/CHANGELOG.md) - [Commits](https://github.com/console-rs/console/compare/0.15.8...0.15.10) Updates `libc` from 0.2.167 to 0.2.169 - [Release notes](https://github.com/rust-lang/libc/releases) - [Changelog](https://github.com/rust-lang/libc/blob/0.2.169/CHANGELOG.md) - [Commits](https://github.com/rust-lang/libc/compare/0.2.167...0.2.169) Updates `itertools` from 0.13.0 to 0.14.0 - [Changelog](https://github.com/rust-itertools/itertools/blob/master/CHANGELOG.md) - [Commits](https://github.com/rust-itertools/itertools/compare/v0.13.0...v0.14.0) Updates `serde` from 1.0.215 to 1.0.217 - [Release notes](https://github.com/serde-rs/serde/releases) - [Commits](https://github.com/serde-rs/serde/compare/v1.0.215...v1.0.217) Updates `anyhow` from 1.0.93 to 1.0.95 - [Release notes](https://github.com/dtolnay/anyhow/releases) - [Commits](https://github.com/dtolnay/anyhow/compare/1.0.93...1.0.95) Updates `bytemuck` from 1.20.0 to 1.21.0 - [Changelog](https://github.com/Lokathor/bytemuck/blob/main/changelog.md) - [Commits](https://github.com/Lokathor/bytemuck/compare/v1.20.0...v1.21.0) Updates `cc` from 1.2.2 to 1.2.6 - [Release notes](https://github.com/rust-lang/cc-rs/releases) - [Changelog](https://github.com/rust-lang/cc-rs/blob/main/CHANGELOG.md) - [Commits](https://github.com/rust-lang/cc-rs/compare/cc-v1.2.2...cc-v1.2.6) Updates `clap_builder` from 4.5.21 to 4.5.23 - [Release notes](https://github.com/clap-rs/clap/releases) - [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md) - [Commits](https://github.com/clap-rs/clap/compare/v4.5.21...v4.5.23) Updates `clap_lex` from 0.7.3 to 0.7.4 - [Release notes](https://github.com/clap-rs/clap/releases) - [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md) - [Commits](https://github.com/clap-rs/clap/compare/clap_lex-v0.7.3...clap_lex-v0.7.4) Updates `encode_unicode` from 0.3.6 to 1.0.0 - [Changelog](https://github.com/tormol/encode_unicode/blob/master/RELEASES.md) - [Commits](https://github.com/tormol/encode_unicode/compare/v0.3.6...v1.0.0) Updates `env_filter` from 0.1.2 to 0.1.3 - [Release notes](https://github.com/rust-cli/env_logger/releases) - [Changelog](https://github.com/rust-cli/env_logger/blob/main/CHANGELOG.md) - [Commits](https://github.com/rust-cli/env_logger/compare/env_filter-v0.1.2...env_filter-v0.1.3) Updates `fastrand` from 2.2.0 to 2.3.0 - [Release notes](https://github.com/smol-rs/fastrand/releases) - [Changelog](https://github.com/smol-rs/fastrand/blob/master/CHANGELOG.md) - [Commits](https://github.com/smol-rs/fastrand/compare/v2.2.0...v2.3.0) Updates `glob` from 0.3.1 to 0.3.2 - [Release notes](https://github.com/rust-lang/glob/releases) - [Changelog](https://github.com/rust-lang/glob/blob/master/CHANGELOG.md) - [Commits](https://github.com/rust-lang/glob/compare/0.3.1...v0.3.2) Updates `home` from 0.5.9 to 0.5.11 - [Changelog](https://github.com/rust-lang/cargo/blob/master/CHANGELOG.md) - [Commits](https://github.com/rust-lang/cargo/compare/home-0.5.9...home-0.5.11) Updates `quote` from 1.0.37 to 1.0.38 - [Release notes](https://github.com/dtolnay/quote/releases) - [Commits](https://github.com/dtolnay/quote/compare/1.0.37...1.0.38) Updates `redox_syscall` from 0.5.7 to 0.5.8 Updates `rustix` from 0.38.41 to 0.38.42 - [Release notes](https://github.com/bytecodealliance/rustix/releases) - [Changelog](https://github.com/bytecodealliance/rustix/blob/main/CHANGELOG.md) - [Commits](https://github.com/bytecodealliance/rustix/compare/v0.38.41...v0.38.42) Updates `semver` from 1.0.23 to 1.0.24 - [Release notes](https://github.com/dtolnay/semver/releases) - [Commits](https://github.com/dtolnay/semver/compare/1.0.23...1.0.24) Updates `serde_derive` from 1.0.215 to 1.0.217 - [Release notes](https://github.com/serde-rs/serde/releases) - [Commits](https://github.com/serde-rs/serde/compare/v1.0.215...v1.0.217) Updates `winnow` from 0.6.20 to 0.6.21 - [Changelog](https://github.com/winnow-rs/winnow/blob/main/CHANGELOG.md) - [Commits](https://github.com/winnow-rs/winnow/compare/v0.6.20...v0.6.21) Updates `clap` from 4.5.21 to 4.5.23 - [Release notes](https://github.com/clap-rs/clap/releases) - [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md) - [Commits](https://github.com/clap-rs/clap/compare/clap_complete-v4.5.21...clap_complete-v4.5.23) Updates `env_logger` from 0.11.5 to 0.11.6 - [Release notes](https://github.com/rust-cli/env_logger/releases) - [Changelog](https://github.com/rust-cli/env_logger/blob/main/CHANGELOG.md) - [Commits](https://github.com/rust-cli/env_logger/compare/v0.11.5...v0.11.6) Updates `thiserror` from 2.0.3 to 2.0.9 - [Release notes](https://github.com/dtolnay/thiserror/releases) - [Commits](https://github.com/dtolnay/thiserror/compare/2.0.3...2.0.9) Updates `libc` from 0.2.167 to 0.2.169 - [Release notes](https://github.com/rust-lang/libc/releases) - [Changelog](https://github.com/rust-lang/libc/blob/0.2.169/CHANGELOG.md) - [Commits](https://github.com/rust-lang/libc/compare/0.2.167...0.2.169) Updates `anyhow` from 1.0.93 to 1.0.95 - [Release notes](https://github.com/dtolnay/anyhow/releases) - [Commits](https://github.com/dtolnay/anyhow/compare/1.0.93...1.0.95) Updates `clap_builder` from 4.5.21 to 4.5.23 - [Release notes](https://github.com/clap-rs/clap/releases) - [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md) - [Commits](https://github.com/clap-rs/clap/compare/v4.5.21...v4.5.23) Updates `clap_lex` from 0.7.3 to 0.7.4 - [Release notes](https://github.com/clap-rs/clap/releases) - [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md) - [Commits](https://github.com/clap-rs/clap/compare/clap_lex-v0.7.3...clap_lex-v0.7.4) Updates `env_filter` from 0.1.2 to 0.1.3 - [Release notes](https://github.com/rust-cli/env_logger/releases) - [Changelog](https://github.com/rust-cli/env_logger/blob/main/CHANGELOG.md) - [Commits](https://github.com/rust-cli/env_logger/compare/env_filter-v0.1.2...env_filter-v0.1.3) Updates `fastrand` from 2.2.0 to 2.3.0 - [Release notes](https://github.com/smol-rs/fastrand/releases) - [Changelog](https://github.com/smol-rs/fastrand/blob/master/CHANGELOG.md) - [Commits](https://github.com/smol-rs/fastrand/compare/v2.2.0...v2.3.0) Updates `glob` from 0.3.1 to 0.3.2 - [Release notes](https://github.com/rust-lang/glob/releases) - [Changelog](https://github.com/rust-lang/glob/blob/master/CHANGELOG.md) - [Commits](https://github.com/rust-lang/glob/compare/0.3.1...v0.3.2) Updates `quote` from 1.0.37 to 1.0.38 - [Release notes](https://github.com/dtolnay/quote/releases) - [Commits](https://github.com/dtolnay/quote/compare/1.0.37...1.0.38) Updates `rustix` from 0.38.41 to 0.38.42 - [Release notes](https://github.com/bytecodealliance/rustix/releases) - [Changelog](https://github.com/bytecodealliance/rustix/blob/main/CHANGELOG.md) - [Commits](https://github.com/bytecodealliance/rustix/compare/v0.38.41...v0.38.42) Updates `semver` from 1.0.23 to 1.0.24 - [Release notes](https://github.com/dtolnay/semver/releases) - [Commits](https://github.com/dtolnay/semver/compare/1.0.23...1.0.24) Updates `syn` from 2.0.90 to 2.0.93 - [Release notes](https://github.com/dtolnay/syn/releases) - [Commits](https://github.com/dtolnay/syn/compare/2.0.90...2.0.93) Updates `windows-sys` from 0.52.0 to 0.59.0 - [Release notes](https://github.com/microsoft/windows-rs/releases) - [Commits](https://github.com/microsoft/windows-rs/compare/0.52.0...0.59.0) Updates `winnow` from 0.6.20 to 0.6.21 - [Changelog](https://github.com/winnow-rs/winnow/blob/main/CHANGELOG.md) - [Commits](https://github.com/winnow-rs/winnow/compare/v0.6.20...v0.6.21) Updates `predicates` from 3.1.2 to 3.1.3 - [Changelog](https://github.com/assert-rs/predicates-rs/blob/master/CHANGELOG.md) - [Commits](https://github.com/assert-rs/predicates-rs/compare/v3.1.2...v3.1.3) Updates `predicates-core` from 1.0.8 to 1.0.9 - [Changelog](https://github.com/assert-rs/predicates-rs/blob/master/CHANGELOG.md) - [Commits](https://github.com/assert-rs/predicates-rs/compare/predicates-core-v1.0.8...predicates-core-v1.0.9) Updates `predicates-tree` from 1.0.11 to 1.0.12 - [Changelog](https://github.com/assert-rs/predicates-rs/blob/master/CHANGELOG.md) - [Commits](https://github.com/assert-rs/predicates-rs/compare/predicates-tree-v1.0.11...predicates-tree-v1.0.12) Updates `termtree` from 0.4.1 to 0.5.1 - [Changelog](https://github.com/rust-cli/termtree/blob/main/CHANGELOG.md) - [Commits](https://github.com/rust-cli/termtree/compare/v0.4.1...v0.5.1) --- updated-dependencies: - dependency-name: clap dependency-type: direct:production update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: env_logger dependency-type: direct:production update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: thiserror dependency-type: direct:production update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: socketcan dependency-type: direct:production update-type: version-update:semver-minor dependency-group: non-rust-vmm - dependency-name: console dependency-type: direct:production update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: libc dependency-type: direct:production update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: itertools dependency-type: direct:production update-type: version-update:semver-minor dependency-group: non-rust-vmm - dependency-name: serde dependency-type: direct:production update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: anyhow dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: bytemuck dependency-type: indirect update-type: version-update:semver-minor dependency-group: non-rust-vmm - dependency-name: cc dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: clap_builder dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: clap_lex dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: encode_unicode dependency-type: indirect update-type: version-update:semver-major dependency-group: non-rust-vmm - dependency-name: env_filter dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: fastrand dependency-type: indirect update-type: version-update:semver-minor dependency-group: non-rust-vmm - dependency-name: glob dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: home dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: quote dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: redox_syscall dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: rustix dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: semver dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: serde_derive dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: winnow dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: clap dependency-type: direct:production update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: env_logger dependency-type: direct:production update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: thiserror dependency-type: direct:production update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: libc dependency-type: direct:production update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: anyhow dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: clap_builder dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: clap_lex dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: env_filter dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: fastrand dependency-type: indirect update-type: version-update:semver-minor dependency-group: non-rust-vmm - dependency-name: glob dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: quote dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: rustix dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: semver dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: syn dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: windows-sys dependency-type: indirect update-type: version-update:semver-minor dependency-group: non-rust-vmm - dependency-name: winnow dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: predicates dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: predicates-core dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: predicates-tree dependency-type: indirect update-type: version-update:semver-patch dependency-group: non-rust-vmm - dependency-name: termtree dependency-type: indirect update-type: version-update:semver-minor dependency-group: non-rust-vmm ... Signed-off-by: dependabot[bot] <support@github.com> |
||
|---|---|---|
| .. | ||
| src | ||
| Cargo.toml | ||
| CHANGELOG.md | ||
| LICENSE-APACHE | ||
| LICENSE-BSD-3-Clause | ||
| README.md | ||
vhost-device-can - CAN emulation backend daemon
Description
This program is a vhost-user backend that emulates a VirtIO CAN device. The device's binary takes two (2) parameters: a socket, a 'can-devices' list. The socket is commonly used across all vhost-devices to communicate with the vhost-user frontend device. The 'can-devices' represents a list of CAN/FD devices appears in the host system which vhost-device-can will forward messages to and from the frontend side.
This program is tested with QEMU's vhost-user-device-pci device.
Examples' section below.
Synopsis
**vhost-device-can** [*OPTIONS*]
Options
.. program:: vhost-device-can
.. option:: -h, --help
Print help.
.. option:: -s, --socket-path=PATH
Location of vhost-user Unix domain sockets, this path will be suffixed with 0,1,2..socket_count-1.
.. option:: -c, --socket-count=INT
Number of guests (sockets) to attach to, default set to 1.
.. option:: -d, --can-devices='CAN/FD interfaces'
CAN/FD device list at the host OS in the format: <can-_X_0> [<can_in_X_1>] ... [<can_in_X_N-1>]
Note 1: Where N (the number of CAN/FD interfaces) is equal with the number provided via socket_count parameter.
Example: --can-devices "can0 can1 can2"
Features
This device is still work-in-progress (WIP) and on virtio-spec v1.4 is based on virtio-can Linux's driver and QEMU's device presented in the following RFC:
Vhost-device-can have be been tested in scenarios with multiple QEMU's VMs using host's CAN/FD devices.
Limitations
- The transmission of a CAN/FD frame to a host interface always is done synchronously. This means that regardless the negotiation or not of the feature VIRTIO_CAN_F_LATE_TX_ACK, the backend will always wait for the transmission of the frame and after will mark the transmission request as used.
- Does not check for undefined flags in CAN/FD frame when send and receive a CAN/FD frame from the frontend (QEMU device).
- The host's CAN/FD devices should be already in UP state before staring
the vhost-device-can (by using
ip link set can0 [up,down]).- The control messages does not actually change host's device state
- Current version of the device has been tested only with vcan device.
Examples
Dependencies
For testing the device the required dependencies are:
- Linux:
- Integrate virtio-can driver implemented by OpenSynergy:
- Set
CONFIG_VIRTIO_CAN=y
- QEMU
- Integrate virtio-can device implemented by OpenSynergy:
- Clone vhost-user-can QEMU device (optional):
- A new vhost-user-can device has been implemented in the following repo:
Test the device
The daemon should be started first:
host# vhost-device-can --socket-path=can.sock --can-devices="vcan0"
The QEMU invocation needs to create a chardev socket the device can use to communicate as well as share the guests memory over a memfd.
There are two option for running QEMU with vhost-device-can:
- Using
vhost-user-device-pciavailable upstream since QEMUv8.2.0:
host# qemu-system \
-m 4096 \
-numa node,memdev=mem \
-object memory-backend-memfd,id=mem,size=4G,share=on \
-chardev socket,id=can0,path=/tmp/can.sock \
-device vhost-user-device-pci,chardev=can0,virtio-id=36,num_vqs=3,config_size=16 \
...
- Using
vhost-user-can-pci:
host# qemu-system \
-m 4096 \
-numa node,memdev=mem \
-object memory-backend-memfd,id=mem,size=4G,share=on \
-chardev socket,path=/tmp/can.sock,id=can0 \
-device vhost-user-can-pci,chardev=can0,id=can \
...
Note: For testing this scenario the reader needs to clone the QEMU version from the following repo which implements
vhost-user-candevice:
Multi-Guest case
Run vhost-device-can as:
./vhost-device-can --socket-path /tmp/can.sock --socket-count 2 --can-devices "vcan0 vcan1"
This command will start the device and create two new sockets: /tmp/can.sock0 and /tmp/can.sock1.
From the other side we run two QEMU instances (VMs) with vhost-user-can:
host# qemu-system \
-m 4096 \
-numa node,memdev=mem \
-object memory-backend-memfd,id=mem,size=4G,share=on \
-chardev socket,path=<SOCKET_PATH>,id=can0 \
-device vhost-user-can-pci,chardev=can0,id=can \
...
In the first instance of QEMU SOCKET_PATH would be: /tmp/can.sock0, and will use can0 (host interface) as sender and receiver. The second QEMU VM would have: SOCKET_PATH = /tmp/can.sock1, and will use can1 as receiver and can2 as sender.
License
This project is licensed under either of
- Apache License, Version 2.0
- BSD-3-Clause License