Re: Proposed response to gnopernicus/DecTalk problem



[quoted lines by Bill Haneman on 2005/02/15 at 13:41 +0000]

>How does brltty ensure that the byte sequence it sends to the probed tty 
>ports is nontoxic to 'unknown' devices?  In theory this would seem 
>impossible.

I was specifically addressing the issue of brltty being immune from ttyUSBn
device changes. The whole story is as follows:

Bluetooth: Connection to the display is done via Bluetooth Device Address. In
addition, the correct PIN must be specified (either manually or by prespecified
data). It's highly unlikely, therefore, that brltty would be communicating with
the wrong device.

USB: The display is found by looking through usbfs for a device with matching
vendor and product identifiers, and, optionally, serial number. Again,
therefore, it's highly unlikely that brltty would be communicating with the
wrong device.

Serial: The possibility of communication with the wrong device is just as high
as with any other screen reader. The basic problem is that Linux allows a
serial device to be opened more than once simultaneously. In my opinion, the
proper fix to this problem is for the kernel to provide a way for an
application to determine if the device is already open. The simplest solution,
to me, is for the O_EXCL open attribute to be used for this. If the kernel
would refuse to open a serial device (returning EBUSY) if O_EXCL is specified
and if that device is already open, and if we all use that attribute, then the
problem would go away.

BRLTTY also supports display autodetection. When this is requested, it only
checks for those displays which are known to autodetect reliably.

-- 
Dave Mielke           | 2213 Fox Crescent | I believe that the Bible is the
Phone: 1-613-726-0014 | Ottawa, Ontario   | Word of God. Please contact me
EMail: dave mielke cc | Canada  K2A 1H7   | if you're concerned about Hell.
http://FamilyRadio.com/                   | http://Mielke.cc/bible/



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]