bug-glibc
[Top][All Lists]
Advanced

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

STREAMS ioctl value conflicts in glibc 2.1.94


From: Ossama Othman
Subject: STREAMS ioctl value conflicts in glibc 2.1.94
Date: Wed, 4 Oct 2000 09:41:10 -0700
User-agent: Mutt/1.2.5i

Hi,

Conflicts exist between glibc 2.1.94's STREAMS ioctls and the Linux
kernel's CDROM ioctls.

In <bits/stropts.h>:

/* Macros used as `request' argument to `ioctl'.  */
#define __SID           ('S' << 8)

#define I_NREAD     (__SID | 1) /* Counts the number of data bytes in the data
                                   block in the first message.  */
#define I_PUSH      (__SID | 2) /* Push STREAMS module onto top of the current
                                   STREAM, just below the STREAM head.  */
#define I_POP       (__SID | 3) /* Remove STREAMS module from just below the
                                   STREAM head.  */
.
.
.


In <linux/cdrom.h> (in both the 2.2.x and the 2.4-pre kernels):

/*******************************************************
 * The CD-ROM IOCTL commands  -- these should be supported by 
 * all the various cdrom drivers.  For the CD-ROM ioctls, we 
 * will commandeer byte 0x53, or 'S'.
 *******************************************************/
#define CDROMPAUSE              0x5301 /* Pause Audio Operation */ 
#define CDROMRESUME             0x5302 /* Resume paused Audio Operation */
#define CDROMPLAYMSF            0x5303 /* Play Audio MSF (struct cdrom_msf) */
.
.
.


I encountered this problem when attempting to set the I_SRDOPT ioctl
to RMSGN.  ioctl() returned with an EINVAL error.

Running strace revealed that the CDROMREADTOCENTRY ioctl was used
instead of I_SRDOPT.

Thanks,
-Ossama
-- 
Ossama Othman <address@hidden>
Distributed Object Computing Laboratory, Univ. of California at Irvine
1024D/F7A394A8 - 84ED AA0B 1203 99E4 1068  70E6 5EB7 5E71 F7A3 94A8



reply via email to

[Prev in Thread] Current Thread [Next in Thread]