Hello

First time some tests have been performed with OpenBSD 7.7 + Iridium and 
Chromium browsers with connected NanoKVM USB (USB camera + audio + uhid input 
device emulation) composite device.

The same machine (OpenBSD 7.7 and 7.8 after upgrade) hosts nginx server with 
web page to access NanoKVM USB.

By opening a link http://nanokvm.local in Iridium or Chromium browser on the 
same machine resolves and opens NanoKVM access page with drop down menu which 
asks to access camera and microphone device. Once permissions are granted 
"Select USB device" drop down menu has appeared with "USB3 Video" and "Select 
Serial Device" button to access NanoKVM USB video from remote PC where NanoKVM 
is connected.

Once "Select Serial Device" button is pressed on the nanokvm.local web page, 
Iridium and Chromium browsers crash with core dump.

I would like to solve this in some way, if it was possible.

Some related system setting and commands are listed below:

1. sysctl kern.video.record=1

2. chmod 660 /dev/video* (NanoKVM USB uses video0)
crw-rw---- 1 root wheel /dev/video -> video0
crw-rw---- 1 root wheel /dev/video0
crw-rw---- 1 root wheel /dev/video1
crw-rw---- 1 root wheel /dev/video2
crw-rw---- 1 root wheel /dev/video3

3. chmod 660 /dev/uhid* (NanoKVM USB uses uhid0)
crw-rw---- 1 root wheel /dev/uhid0
crw-rw---- 1 root wheel /dev/uhid1
crw-rw---- 1 root wheel /dev/uhid2
crw-rw---- 1 root wheel /dev/uhid3
crw-rw---- 1 root wheel /dev/uhid4
crw-rw---- 1 root wheel /dev/uhid5
crw-rw---- 1 root wheel /dev/uhid6
crw-rw---- 1 root wheel /dev/uhid7

4. chmod 660 /dev/audio* (NanoKVM USB uses audio1)
crw-rw---- 1 root wheel /dev/audio0
crw-rw---- 1 root wheel /dev/audio1
crw-rw---- 1 root wheel /dev/audio2
crw-rw---- 1 root wheel /dev/audio3

5. Run Iridium (Chromium) with command to get NanoKVM USB device accessible:

iridium --user-data-dir="/tmp" 
--unsafely-treat-insecure-origin-as-secure=http://nanokvm.local

6. dmesg part with KVM USB composite device detected:

uvideo0 at uhub0 port 6 configuration 1 interface 0 "MACROSILICON USB3 Video" 
rev 3.20/31.00 addr 4
video0 at uvideo0
uaudio0 at uhub0 port 6 configuration 1 interface 3 "MACROSILICON USB3 Video" 
rev 3.20/31.00 addr 4
uaudio0: class v1, high-speed, sync, channels: 0 play, 2 rec, 1 ctls
audio1 at uaudio0
uhidev0 at uhub0 port 6 configuration 1 interface 4 "MACROSILICON USB3 Video" 
rev 3.20/31.00 addr 4
uhidev: iclass 3/0
uhid0 at uhidev0: input=0, output=0, feature=8

Martin

Reply via email to