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

Bug#322197: broken ioctl

reopen 322197


I had a chance to test the patch I sent, and the ioctl doesn't seem to work
(always returns -1, with errno == ENXIO).

However, the ioctl macro being present is enough for some programs to compile
and even run properly (like oss-preserve), so I would leave this patch enabled
untill we find the proper fix.

I think the problem is that in mixer.c, OSS_GETVERSION is parsed as if it was a
macro of the MIXER_READ group.  However, this group of ioctls only can include
31 of them (!!) because they're encoded as an int bitmask (looks like a waste of
information, since they're never ORed, unless I missed something).

My patch encoded it as a separate ioctl (118 iirc).  I tried moving the code
outside of the MIXER_READ switch, with no luck.

Robert Millan

Reply to: