public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* ioctl() still problem w/2.5.18
@ 2002-05-25 22:33 A Guy Called Tyketto
  0 siblings, 0 replies; 2+ messages in thread
From: A Guy Called Tyketto @ 2002-05-25 22:33 UTC (permalink / raw)
  To: linux-kernel

        I posted this before with 2.5.8 - 2.5.16 before, but the problem still
exists in 2.5.18, so I'll repost.


        In 2.5.16, have any restrictions been placed on ioctl()? With 2.5.16,
a non-root user is unable to use /dev/cdrom with an ide cd, to play audio cds.
An strace of workbone shows this:

open("/dev/cdrom", O_RDONLY)            = 3
ioctl(3, CDROMSUBCHNL, 0xbfffe814)      = -1 EACCES (Permission denied)  
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
rt_sigaction(SIGINT, {SIG_IGN}, {SIG_DFL}, 8) = 0
ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(0, SNDCTL_TMR_START, {B38400 opost isig -icanon -echo ...}) = 0
ioctl(0, TCGETS, {B38400 opost isig -icanon -echo ...}) = 0
write(1, "\n", 1
)                       = 1
ioctl(0, SNDCTL_TMR_START, {B38400 opost isig icanon echo ...}) = 0
ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
rt_sigaction(SIGINT, {SIG_DFL}, {SIG_IGN}, 8) = 0
munmap(0x40017000, 4096)                = 0
_exit(0)                                = ?

        Workbone is supposed to access /dev/cdrom, and then wait for user 
input from the number pad, to play the cd. the following strace from workbone 
in 2.5.7 shows this working properly:

write(1, "\33[10m\n", 6
) = 55                                               
open("/dev/cdrom", O_RDONLY)            = 3  "..., 55
ioctl(3, CDROMSUBCHNL, 0xbfffe654)      = 0
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ioctl(3, CDROMREADTOCHDR, 0xbfffe626)   = 0
ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
rt_sigaction(SIGINT, {SIG_IGN}, {SIG_DFL}, 8) = 0
ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0

        This worked as root, and with  a kernel <= 2.5.13. I didn't try this 
with 2.5.14 or 2.5.15.

        since open("/dev/cdrom", O_RDONLY) is returning as it should, It would 
be safe to assume that the ioctl() call is causing the problem. /dev/cdrom has 
permissions 0666 applied to it.

                                                        BL.
-- 
Brad Littlejohn                         | Email:        tyketto@wizard.com
Unix Systems Administrator,             |           tyketto@ozemail.com.au
Web + NewsMaster, BOFH.. Smeghead! :)   |   http://www.wizard.com/~tyketto
  PGP: 1024D/E319F0BF 6980 AAD6 7329 E9E6 D569  F620 C819 199A E319 F0BF


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: ioctl() still problem w/2.5.18
       [not found] <20020526160519.A23832@urfass.r-kom.de>
@ 2002-05-26 14:16 ` Stefan M. Brandl
  0 siblings, 0 replies; 2+ messages in thread
From: Stefan M. Brandl @ 2002-05-26 14:16 UTC (permalink / raw)
  To: linux-kernel

>         In 2.5.16, have any restrictions been placed on ioctl()? With 2.5.16,
> a non-root user is unable to use /dev/cdrom with an ide cd, to play audio cds.
> An strace of workbone shows this:
> 
> open("/dev/cdrom", O_RDONLY)            = 3
> ioctl(3, CDROMSUBCHNL, 0xbfffe814)      = -1 EACCES (Permission denied)  
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> rt_sigaction(SIGINT, {SIG_IGN}, {SIG_DFL}, 8) = 0
> ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
> ioctl(0, SNDCTL_TMR_START, {B38400 opost isig -icanon -echo ...}) = 0
> ioctl(0, TCGETS, {B38400 opost isig -icanon -echo ...}) = 0
> write(1, "\n", 1
> )                       = 1
> ioctl(0, SNDCTL_TMR_START, {B38400 opost isig icanon echo ...}) = 0
> ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
> rt_sigaction(SIGINT, {SIG_DFL}, {SIG_IGN}, 8) = 0
> munmap(0x40017000, 4096)                = 0
> _exit(0)                                = ?
> 
>         Workbone is supposed to access /dev/cdrom, and then wait for user 
> input from the number pad, to play the cd. the following strace from workbone 
> in 2.5.7 shows this working properly:
> 
> write(1, "\33[10m\n", 6
> ) = 55                                               
> open("/dev/cdrom", O_RDONLY)            = 3  "..., 55
> ioctl(3, CDROMSUBCHNL, 0xbfffe654)      = 0
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> ioctl(3, CDROMREADTOCHDR, 0xbfffe626)   = 0
> ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
> ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
> ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
> ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
> ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
> ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
> ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
> ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
> ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
> ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
> ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
> rt_sigaction(SIGINT, {SIG_IGN}, {SIG_DFL}, 8) = 0
> ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
> 
>         This worked as root, and with  a kernel <= 2.5.13. I didn't try this 
> with 2.5.14 or 2.5.15.
> 

Same problem here.
While kernels <= 2.5.15 don't show this error, 2.5.16, 17 and 18 do.
The bug? must have been introduced with 2.5.16.


Stefan

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2002-05-26 14:16 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-05-25 22:33 ioctl() still problem w/2.5.18 A Guy Called Tyketto
     [not found] <20020526160519.A23832@urfass.r-kom.de>
2002-05-26 14:16 ` Stefan M. Brandl

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox