
On Sun, Jul 13, 2025 at 04:22:05PM +0200, Roman Bogorodskiy wrote:
In addition to the nmdm consoles, bhyve also supports a tcp console. It's configured with:
.. -l com1,tcp=127.0.0.1:12345
Then a user could connect to the guest console port 0 by making a tcp connection to the host's 127.0.0.1:12345.
In the domain XML this configuration is represented as:
<serial type='tcp'> <source mode='connect' host='127.0.0.1' service='12345'/> <target type='serial' port='0'/> </serial>
Also, update domain capabilities to include the TCP console support. Unfortunately, there's no way to detect that from the bhyve binary before trying to start a VM, so there's no capability probing for this feature.
Signed-off-by: Roman Bogorodskiy <bogorodskiy@gmail.com> --- src/bhyve/bhyve_capabilities.c | 3 +- src/bhyve/bhyve_command.c | 42 +++++++++++------ .../bhyvexml2argv-serial-tcp.args | 12 +++++ .../bhyvexml2argv-serial-tcp.ldargs | 4 ++ .../bhyvexml2argv-serial-tcp.xml | 27 +++++++++++ tests/bhyvexml2argvtest.c | 1 + .../bhyvexml2xmlout-serial-tcp.xml | 46 +++++++++++++++++++ tests/bhyvexml2xmltest.c | 1 + tests/domaincapsdata/bhyve_basic.x86_64.xml | 1 + tests/domaincapsdata/bhyve_fbuf.x86_64.xml | 1 + tests/domaincapsdata/bhyve_uefi.x86_64.xml | 1 + 11 files changed, 123 insertions(+), 16 deletions(-) create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-serial-tcp.args create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-serial-tcp.ldargs create mode 100644 tests/bhyvexml2argvdata/bhyvexml2argv-serial-tcp.xml create mode 100644 tests/bhyvexml2xmloutdata/bhyvexml2xmlout-serial-tcp.xml
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> This would benefit from a followup patch that extends bhyveDomainDeviceDefValidate to reject unsupported configs. eg anything that isn't 'tcp' and 'nmdm', as well as rejecting 'listen = true' for 'tcp' With regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|