Re: no ioctls for serial ports? [was Re: LANANA: To Pending Device Num

Pavel Machek
2001-05-22T21:04:07Z

Hi!

> > I've seen this question several times in this thread. I haven't seen the
> > obvious answer, though.
> >
> > Have a new system call:
> >
> > ctlfd = open_device_control_fd(fd);
> >
> > If fd is something that doesn't have a control interface (say, it already
> > is a control filehandle), this returns an appropriate error code.
>
> It may have several. Which one?
>
> FWIW, I think that mixing network and device ioctls is a bad idea. These
> groups are very different and we'd be better off dealing with changes in
> them separately.
>
> For devices... I'd say that fpath(2) (same type as getcwd(2)) would be
> a good way to deal with that. Or fpath(3) - implemented via readlink(2)
> on /proc/self/fd/<n>.

fpath is *wrong* solution, and extremely ugly.

stty 115200 < /dev/ttyS0 &
rm /dev/ttyS0

or even worse

stty 115200 < /dev/ttyS0 &
ln -s /dev/ttyS1 /dev/ttyS0

What I'm trying to show is that with fpath you can no longer delete
open devices and continue to work with them. I really think that
open_sub(fd, "control") is right solution.
Pavel
--
I'm pavel@ucw.cz. "In my country we have almost anarchy and I don't care."
Panos Katsaloulis describing me w.r.t. patents at discuss@linmodems.org