* Re: Bug#274860: Acknowledgement (kernel-image-2.6.8-1-686: CDROM_SEND_PACKET ioctls only work as root) [not found] ` <20041004131014.GF19341@lkcl.net> @ 2004-10-04 13:53 ` Luke Kenneth Casson Leighton 2004-10-04 14:01 ` Jens Axboe 0 siblings, 1 reply; 5+ messages in thread From: Luke Kenneth Casson Leighton @ 2004-10-04 13:53 UTC (permalink / raw) To: 274860; +Cc: linux-kernel, 274867 found it. it's a new piece of kernel code verify_command in drivers/block/scsi_ioctl.c, which checks for the capability CAP_SYS_RAWIO. ah, dammit. for k3b to work, you'd have to install it setuid root, call getcap(), remove all but the necessary capabilities (i.e. don't remove CAP_SYS_RAWIO), do a setfsuid() and setfsgid() and do a setcap(). fuse (file system in userspace) uses this technique for allowing mount and unmount but nothing else [which doesn't work on 2.6.8 btw: the getcap() fails, but i did notice that debian doesn't install fusermount as setuid to root which is half the problem...] l. On Mon, Oct 04, 2004 at 02:10:14PM +0100, Luke Kenneth Casson Leighton wrote: > additional info: > > kernel 2.6.8. ioctl ("/dev/hdc", CDROM_SEND_PACKET, cmd) > > commands that are failing as non-root, even when permission is granted > rwxrwxrwx to /dev/hdc, are, according to some debug info added to k3b: > > GET CONFIGURATION (46) > error code: 0 > sense key: NO SENSE (2) > asc: 0 > ascq: 0 > > and: > > MODE SELECT (55) > error code: 0 > sense key: NO SENSE (2) > asc: 0 > ascq: 0 > > the result is that k3b cannot determine that the drive exists, therefore > it cannot use it even though cdrecord might actually work. > > > as root, the following errors occur: > > MODE SELECT (46) > errorcode: 70 > sense key: ILLEGAL REQUEST (5) > asc: 26 > ascq: 0 > > READ DVD STRUCTURE (ad) > errorcode: 70 > sense key: NOT READY (2) > asc: 3a > ascq: 0 > > presumably it can be concluded that the GET CONFIGURATION ioctl command > is the one at fault. > > ... what gives? > > l. > > -- > -- > Truth, honesty and respect are rare commodities that all spring from > the same well: Love. If you love yourself and everyone and everything > around you, funnily and coincidentally enough, life gets a lot better. > -- > <a href="http://lkcl.net"> lkcl.net </a> <br /> > <a href="mailto:lkcl@lkcl.net"> lkcl@lkcl.net </a> <br /> > > -- > -- > Truth, honesty and respect are rare commodities that all spring from > the same well: Love. If you love yourself and everyone and everything > around you, funnily and coincidentally enough, life gets a lot better. > -- > <a href="http://lkcl.net"> lkcl.net </a> <br /> > <a href="mailto:lkcl@lkcl.net"> lkcl@lkcl.net </a> <br /> > -- -- Truth, honesty and respect are rare commodities that all spring from the same well: Love. If you love yourself and everyone and everything around you, funnily and coincidentally enough, life gets a lot better. -- <a href="http://lkcl.net"> lkcl.net </a> <br /> <a href="mailto:lkcl@lkcl.net"> lkcl@lkcl.net </a> <br /> ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Bug#274860: Acknowledgement (kernel-image-2.6.8-1-686: CDROM_SEND_PACKET ioctls only work as root) 2004-10-04 13:53 ` Bug#274860: Acknowledgement (kernel-image-2.6.8-1-686: CDROM_SEND_PACKET ioctls only work as root) Luke Kenneth Casson Leighton @ 2004-10-04 14:01 ` Jens Axboe 2004-10-04 14:16 ` K.R. Foley 2004-10-04 14:25 ` Luke Kenneth Casson Leighton 0 siblings, 2 replies; 5+ messages in thread From: Jens Axboe @ 2004-10-04 14:01 UTC (permalink / raw) To: Luke Kenneth Casson Leighton; +Cc: linux-kernel On Mon, Oct 04 2004, Luke Kenneth Casson Leighton wrote: > found it. > > it's a new piece of kernel code verify_command in > drivers/block/scsi_ioctl.c, which checks for the capability > CAP_SYS_RAWIO. > > ah, dammit. > > for k3b to work, you'd have to install it setuid root, call > getcap(), remove all but the necessary capabilities (i.e. don't > remove CAP_SYS_RAWIO), do a setfsuid() and setfsgid() and do > a setcap(). it works in 2.6.9-rcX. -- Jens Axboe ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Bug#274860: Acknowledgement (kernel-image-2.6.8-1-686: CDROM_SEND_PACKET ioctls only work as root) 2004-10-04 14:01 ` Jens Axboe @ 2004-10-04 14:16 ` K.R. Foley 2004-10-04 14:25 ` Luke Kenneth Casson Leighton 1 sibling, 0 replies; 5+ messages in thread From: K.R. Foley @ 2004-10-04 14:16 UTC (permalink / raw) To: Jens Axboe; +Cc: Luke Kenneth Casson Leighton, linux-kernel Jens Axboe wrote: > On Mon, Oct 04 2004, Luke Kenneth Casson Leighton wrote: > >>found it. >> >>it's a new piece of kernel code verify_command in >>drivers/block/scsi_ioctl.c, which checks for the capability >>CAP_SYS_RAWIO. >> >>ah, dammit. >> >>for k3b to work, you'd have to install it setuid root, call >>getcap(), remove all but the necessary capabilities (i.e. don't >>remove CAP_SYS_RAWIO), do a setfsuid() and setfsgid() and do >>a setcap(). > > > it works in 2.6.9-rcX. > I don't know for sure if this is related or not, but it sure sounds like it. I have noticed the following in at least the last few versions (I believe 2.6.9-rc2 also): Even though CONFIG_SECURITY_CAPABILITIES can be configured as a module, if I don't compile it into the kernel getcap and setcap fail. kr ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Bug#274860: Acknowledgement (kernel-image-2.6.8-1-686: CDROM_SEND_PACKET ioctls only work as root) 2004-10-04 14:01 ` Jens Axboe 2004-10-04 14:16 ` K.R. Foley @ 2004-10-04 14:25 ` Luke Kenneth Casson Leighton 2004-10-04 14:19 ` Jens Axboe 1 sibling, 1 reply; 5+ messages in thread From: Luke Kenneth Casson Leighton @ 2004-10-04 14:25 UTC (permalink / raw) To: Jens Axboe; +Cc: linux-kernel On Mon, Oct 04, 2004 at 04:01:46PM +0200, Jens Axboe wrote: > On Mon, Oct 04 2004, Luke Kenneth Casson Leighton wrote: > > found it. > > > > it's a new piece of kernel code verify_command in > > drivers/block/scsi_ioctl.c, which checks for the capability > > CAP_SYS_RAWIO. > > > > ah, dammit. > > > > for k3b to work, you'd have to install it setuid root, call > > getcap(), remove all but the necessary capabilities (i.e. don't > > remove CAP_SYS_RAWIO), do a setfsuid() and setfsgid() and do > > a setcap(). > > it works in 2.6.9-rcX. okay so someone has added the GET_CAPABILITY to verify_command in scsi_block.c there, yes? ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Bug#274860: Acknowledgement (kernel-image-2.6.8-1-686: CDROM_SEND_PACKET ioctls only work as root) 2004-10-04 14:25 ` Luke Kenneth Casson Leighton @ 2004-10-04 14:19 ` Jens Axboe 0 siblings, 0 replies; 5+ messages in thread From: Jens Axboe @ 2004-10-04 14:19 UTC (permalink / raw) To: Luke Kenneth Casson Leighton; +Cc: linux-kernel On Mon, Oct 04 2004, Luke Kenneth Casson Leighton wrote: > On Mon, Oct 04, 2004 at 04:01:46PM +0200, Jens Axboe wrote: > > On Mon, Oct 04 2004, Luke Kenneth Casson Leighton wrote: > > > found it. > > > > > > it's a new piece of kernel code verify_command in > > > drivers/block/scsi_ioctl.c, which checks for the capability > > > CAP_SYS_RAWIO. > > > > > > ah, dammit. > > > > > > for k3b to work, you'd have to install it setuid root, call > > > getcap(), remove all but the necessary capabilities (i.e. don't > > > remove CAP_SYS_RAWIO), do a setfsuid() and setfsgid() and do > > > a setcap(). > > > > it works in 2.6.9-rcX. > > okay so someone has added the GET_CAPABILITY to verify_command in > scsi_block.c there, yes? GET_CONFIGURATION, yes. There have been a number of additions since 2.6.8. -- Jens Axboe ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2004-10-04 14:25 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <E1CES9w-0005Lh-6f@lkcl.net>
[not found] ` <handler.274860.B.10968930694757.ack@bugs.debian.org>
[not found] ` <20041004131014.GF19341@lkcl.net>
2004-10-04 13:53 ` Bug#274860: Acknowledgement (kernel-image-2.6.8-1-686: CDROM_SEND_PACKET ioctls only work as root) Luke Kenneth Casson Leighton
2004-10-04 14:01 ` Jens Axboe
2004-10-04 14:16 ` K.R. Foley
2004-10-04 14:25 ` Luke Kenneth Casson Leighton
2004-10-04 14:19 ` Jens Axboe
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox