All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [Bug 1732671] [NEW] vnc websocket compatibility issue
@ 2017-11-16 11:10 Chen Zhang
  2017-11-16 11:23 ` [Qemu-devel] [Bug 1732671] " Daniel Berrange
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Chen Zhang @ 2017-11-16 11:10 UTC (permalink / raw)
  To: qemu-devel

Public bug reported:

WebSocket support in VNC should allow access from VNC client through
upgraded WebSocket connection. This feature is not working in IE 11/Edge
with noVNC HTML5 client, in contrast to that in Firefox/Safari, etc.

The reason that IE 11/Edge fails to accept the connection upgrade is
that the value equality of the `Upgrade` header field is checked in a
strict case-sensitive manner in QEMU side, however, the IE/Edge does not
send the exactly same string value `websocket` but a capital letter `W`
instead.

Defined in section 4.2.1 of rfc6455, the upgrade header field shall be
treated case-insensitively.

A patch shall be made in `io/channel-websock.c`, converting the value of
upgrade string to lowercase before comparison is made with
QIO_CHANNEL_WEBSOCK_UPGRADE_WEBSOCKET, to allow case-insensitive
comparison in the process.

** Affects: qemu
     Importance: Undecided
         Status: New


** Tags: vnc

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1732671

Title:
  vnc websocket compatibility issue

Status in QEMU:
  New

Bug description:
  WebSocket support in VNC should allow access from VNC client through
  upgraded WebSocket connection. This feature is not working in IE
  11/Edge with noVNC HTML5 client, in contrast to that in
  Firefox/Safari, etc.

  The reason that IE 11/Edge fails to accept the connection upgrade is
  that the value equality of the `Upgrade` header field is checked in a
  strict case-sensitive manner in QEMU side, however, the IE/Edge does
  not send the exactly same string value `websocket` but a capital
  letter `W` instead.

  Defined in section 4.2.1 of rfc6455, the upgrade header field shall be
  treated case-insensitively.

  A patch shall be made in `io/channel-websock.c`, converting the value
  of upgrade string to lowercase before comparison is made with
  QIO_CHANNEL_WEBSOCK_UPGRADE_WEBSOCKET, to allow case-insensitive
  comparison in the process.

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1732671/+subscriptions

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Qemu-devel] [Bug 1732671] Re: vnc websocket compatibility issue
  2017-11-16 11:10 [Qemu-devel] [Bug 1732671] [NEW] vnc websocket compatibility issue Chen Zhang
@ 2017-11-16 11:23 ` Daniel Berrange
  2017-11-16 11:33 ` Chen Zhang
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: Daniel Berrange @ 2017-11-16 11:23 UTC (permalink / raw)
  To: qemu-devel

Which version of QEMU did you test this against ?  It should be fixed in
current GIT master AFAIK

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1732671

Title:
  vnc websocket compatibility issue

Status in QEMU:
  Invalid

Bug description:
  WebSocket support in VNC should allow access from VNC client through
  upgraded WebSocket connection. This feature is not working in IE
  11/Edge with noVNC HTML5 client, in contrast to that in
  Firefox/Safari, etc.

  The reason that IE 11/Edge fails to accept the connection upgrade is
  that the value equality of the `Upgrade` header field is checked in a
  strict case-sensitive manner in QEMU side, however, the IE/Edge does
  not send the exactly same string value `websocket` but a capital
  letter `W` instead.

  Defined in section 4.2.1 of rfc6455, the upgrade header field shall be
  treated case-insensitively.

  A patch shall be made in `io/channel-websock.c`, converting the value
  of upgrade string to lowercase before comparison is made with
  QIO_CHANNEL_WEBSOCK_UPGRADE_WEBSOCKET, to allow case-insensitive
  comparison in the process.

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1732671/+subscriptions

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Qemu-devel] [Bug 1732671] Re: vnc websocket compatibility issue
  2017-11-16 11:10 [Qemu-devel] [Bug 1732671] [NEW] vnc websocket compatibility issue Chen Zhang
  2017-11-16 11:23 ` [Qemu-devel] [Bug 1732671] " Daniel Berrange
@ 2017-11-16 11:33 ` Chen Zhang
  2017-11-16 12:20 ` Daniel Berrange
  2017-12-15 16:19 ` Thomas Huth
  3 siblings, 0 replies; 5+ messages in thread
From: Chen Zhang @ 2017-11-16 11:33 UTC (permalink / raw)
  To: qemu-devel

I think it should have been fixed in 33badfd.

Sorry for the noise.

** Changed in: qemu
       Status: New => Invalid

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1732671

Title:
  vnc websocket compatibility issue

Status in QEMU:
  Invalid

Bug description:
  WebSocket support in VNC should allow access from VNC client through
  upgraded WebSocket connection. This feature is not working in IE
  11/Edge with noVNC HTML5 client, in contrast to that in
  Firefox/Safari, etc.

  The reason that IE 11/Edge fails to accept the connection upgrade is
  that the value equality of the `Upgrade` header field is checked in a
  strict case-sensitive manner in QEMU side, however, the IE/Edge does
  not send the exactly same string value `websocket` but a capital
  letter `W` instead.

  Defined in section 4.2.1 of rfc6455, the upgrade header field shall be
  treated case-insensitively.

  A patch shall be made in `io/channel-websock.c`, converting the value
  of upgrade string to lowercase before comparison is made with
  QIO_CHANNEL_WEBSOCK_UPGRADE_WEBSOCKET, to allow case-insensitive
  comparison in the process.

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1732671/+subscriptions

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Qemu-devel] [Bug 1732671] Re: vnc websocket compatibility issue
  2017-11-16 11:10 [Qemu-devel] [Bug 1732671] [NEW] vnc websocket compatibility issue Chen Zhang
  2017-11-16 11:23 ` [Qemu-devel] [Bug 1732671] " Daniel Berrange
  2017-11-16 11:33 ` Chen Zhang
@ 2017-11-16 12:20 ` Daniel Berrange
  2017-12-15 16:19 ` Thomas Huth
  3 siblings, 0 replies; 5+ messages in thread
From: Daniel Berrange @ 2017-11-16 12:20 UTC (permalink / raw)
  To: qemu-devel

No problem, it is a valid bug report, since we've not actually released
the fix yet, so changing status.

** Changed in: qemu
       Status: Invalid => Fix Committed

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1732671

Title:
  vnc websocket compatibility issue

Status in QEMU:
  Fix Committed

Bug description:
  WebSocket support in VNC should allow access from VNC client through
  upgraded WebSocket connection. This feature is not working in IE
  11/Edge with noVNC HTML5 client, in contrast to that in
  Firefox/Safari, etc.

  The reason that IE 11/Edge fails to accept the connection upgrade is
  that the value equality of the `Upgrade` header field is checked in a
  strict case-sensitive manner in QEMU side, however, the IE/Edge does
  not send the exactly same string value `websocket` but a capital
  letter `W` instead.

  Defined in section 4.2.1 of rfc6455, the upgrade header field shall be
  treated case-insensitively.

  A patch shall be made in `io/channel-websock.c`, converting the value
  of upgrade string to lowercase before comparison is made with
  QIO_CHANNEL_WEBSOCK_UPGRADE_WEBSOCKET, to allow case-insensitive
  comparison in the process.

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1732671/+subscriptions

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Qemu-devel] [Bug 1732671] Re: vnc websocket compatibility issue
  2017-11-16 11:10 [Qemu-devel] [Bug 1732671] [NEW] vnc websocket compatibility issue Chen Zhang
                   ` (2 preceding siblings ...)
  2017-11-16 12:20 ` Daniel Berrange
@ 2017-12-15 16:19 ` Thomas Huth
  3 siblings, 0 replies; 5+ messages in thread
From: Thomas Huth @ 2017-12-15 16:19 UTC (permalink / raw)
  To: qemu-devel

** Changed in: qemu
       Status: Fix Committed => Fix Released

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1732671

Title:
  vnc websocket compatibility issue

Status in QEMU:
  Fix Released

Bug description:
  WebSocket support in VNC should allow access from VNC client through
  upgraded WebSocket connection. This feature is not working in IE
  11/Edge with noVNC HTML5 client, in contrast to that in
  Firefox/Safari, etc.

  The reason that IE 11/Edge fails to accept the connection upgrade is
  that the value equality of the `Upgrade` header field is checked in a
  strict case-sensitive manner in QEMU side, however, the IE/Edge does
  not send the exactly same string value `websocket` but a capital
  letter `W` instead.

  Defined in section 4.2.1 of rfc6455, the upgrade header field shall be
  treated case-insensitively.

  A patch shall be made in `io/channel-websock.c`, converting the value
  of upgrade string to lowercase before comparison is made with
  QIO_CHANNEL_WEBSOCK_UPGRADE_WEBSOCKET, to allow case-insensitive
  comparison in the process.

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1732671/+subscriptions

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2017-12-15 16:25 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-11-16 11:10 [Qemu-devel] [Bug 1732671] [NEW] vnc websocket compatibility issue Chen Zhang
2017-11-16 11:23 ` [Qemu-devel] [Bug 1732671] " Daniel Berrange
2017-11-16 11:33 ` Chen Zhang
2017-11-16 12:20 ` Daniel Berrange
2017-12-15 16:19 ` Thomas Huth

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.