Required components

Updated: April 19, 2023

There are virtual socket components for both the guest and host layers. To allow a guest to use the virtual socket, you must add its vdev to the guest's VM configuration. After it's added to a guest or host OS image, the vdev requires no configuration to send or receive data, except if you have to launch its driver manually for recovery purposes.

Guest components

To support the framework in a guest, you must have the following components:
Driver for virtual device

The latest Android and Linux kernel versions include the necessary virtual socket driver, so you don't need to add anything to the guest image for these types of guests.

For QNX Neutrino guest images, you must include the io-vsock binary, which implements the driver for the virtual socket device. When io-vsock is run in a guest, you must pass it the -g option to run it in guest mode.

Note:

To use virtual sockets in QNX Neutrino or Linux guests, you must work with QNX Engineering Services to implement the front ends of the virtual socket.

For information on QNX Neutrino guest buildfiles, see Building QNX guests in the QNX Hypervisor User's Guide.

Host components

To support the framework in the host, you must have the following components:
Driver for virtual device (io-vsock)
The io-vsock binary must be included in the host image and allowed to run as root while providing read and execute access for the user, group, and other permissions. For details, see the example for the guest.
Virtual device shared object (vdev-virtio-vsock.so)
The virtual socket device is implemented by a shared object, vdev-virtio-vsock.so, which you must add to the shared objects list in the host's buildfile; for example:
...
vdev-virtio-input.so
vdev-virtio-net.so
vdev-virtio-vsock.so
...

For details on host buildfiles, see Building the host in the QNX Hypervisor User's Guide.

For each guest in which you want to use it, you must add the device to the configuration of the VM in which the guest runs, as described in vdev virtio-vsock. The path to the VM configuration (*.qvmconf) file must also be in the host buildfile.