Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 18 Aug 2023 07:53:39 +0200
From:      Corvin =?ISO-8859-1?Q?K=F6hne?= <corvink@FreeBSD.org>
To:        Justin England <justin@rapidcity.net>, "virtualization@freebsd.org" <virtualization@FreeBSD.org>
Subject:   Re: RFB doesn't use client's SetPixelFormat
Message-ID:  <7bedef372204b58227be77a1ed132fa87f1d92c5.camel@FreeBSD.org>
In-Reply-To: <D8BBCF89-D0B5-452A-B6E2-B18AF2E7222C@rapidcity.net>
References:  <D8BBCF89-D0B5-452A-B6E2-B18AF2E7222C@rapidcity.net>

next in thread | previous in thread | raw e-mail | index | archive | help

--=-cD+YOT2RfD+ZQp/aUCXk
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

On Thu, 2023-08-17 at 10:31 -0700, Justin England wrote:
> Greetings,
>=20
> I am using FreeBSD 13.2-STABLE and have recently attempted to get
> noVNC=E2=80=99s web based VNC client to work with my bhyve VNC consoles, =
but
> immediately realized that the colors are not correctly displayed
> where essentially the reds and blues are reversed.
>=20
> After doing some research, that is exactly what is happening.=C2=A0 Web
> browsers seem to use BGR colors where bhyve=E2=80=99s RFB uses RGB.=C2=A0=
 Reading
> through the mailing lists / forums of noVNC, this appears to be a
> common issue and usually means that the embedded RFB server does not
> properly use the pixel format that the client requests.
>=20
> After quickly going through the RFB protocol and bhyve=E2=80=99s rfb.c
> source, sure enough, when bhyve receives a SetPixelFormat from the
> client, it basically ignores it and moves on. (
> rfb_recv_set_pixfmt_msg() )
>=20
> At this point, I=E2=80=99m not sure what to do next.
>=20
> Does anybody have a work around for this?
>=20
> Is this something that will be added in a future release?
>=20
> Should I file a bug report as recommended by the noVNC developers?
>=20
>=20
> I appreciate any help I can get with this.
>=20
> Thanks,
>=20
> Justin England
>=20
>=20
>=20

Hi Justin,

the illumos project made some improvements for vnc on their fork of
bhyve. As far as I can see, they do support the SetPixelFormat command.
This would be a good starting point. See
https://github.com/illumos/illumos-gate/commit/1aa1f41fe10c6220a7fbef328fac=
1b72a8355a01


--=20
Kind regards,
Corvin

--=-cD+YOT2RfD+ZQp/aUCXk
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: This is a digitally signed message part

-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEgvRSla3m2t/H2U9G2FTaVjFeAmoFAmTfB2MACgkQ2FTaVjFe
AmqhHA//RySv8xwhaMjFvWdXg1TNqUNX4iWbashk+80fXqyPYBq34zLmVXNdv+rF
TzJ+eELbgRF5+zV2UM/W44NT+z8PEJp/d2K+Rq0TDTCBplbRihyY3/bWDwPNNH/L
2lePaqgCQrkKjKf0GLjpDtt5KvinOk+uj48YVxDxLd85581/0hpItw+NvpvQj5ZZ
mI3vWikuFPQpQLl9rof+OjKuwSD+QMblNNDzMcJqsS7L7XKa8qKwx7NUksBXdgDG
EtywsN+CNyXYWToXZsA7ZpL/gzGADX7MLc7QjH3zkq7Qqhr9UAgaPD4O1uDdcrer
ZNZCYAADPVPQ9z9zhcX4xgKwG90B6MNyDc961YtJYaA0gCcTdL7HVCfFga71zhW5
Ij4G5Pqsv9HvcsY+A4aOvroIoW9j9v/LyCSBdgKkXVsPaCWBinp+AONBaiu8bTIQ
Jaayq3BK5s3eueJ62H0fUOHD1MjsnrsJSOk4GgQ2llLbVJfD+/pbFVIUxb7wxJOF
ljFYnsdStLnS8YUgMORznRiiJe3zB1r0ifRFyQrZ1x6v3dkVQhgqcO851eK/Qjps
TzP1Cq1Xv3uupwPhaMnt4AR2b6BRVfvnYhScKUqUqCR9TxutrooOP3bah7pBvwVp
SxuwUalyphyyWICE5MXkH11iojGxJqXJJuSrlzlfHgI8EiAmaMc=
=oSTk
-----END PGP SIGNATURE-----

--=-cD+YOT2RfD+ZQp/aUCXk--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?7bedef372204b58227be77a1ed132fa87f1d92c5.camel>