summaryrefslogtreecommitdiffstats
path: root/sys/sys/cdio.h
diff options
context:
space:
mode:
authorsobomax <sobomax@FreeBSD.org>2005-01-30 08:12:37 +0000
committersobomax <sobomax@FreeBSD.org>2005-01-30 08:12:37 +0000
commit69aa6843efc6c9eeb6337b4d4ea4111c5ccd9ea7 (patch)
tree60c80029e1db66c753066e1ca06309b6a56d0ce6 /sys/sys/cdio.h
parent357d55c30bf33ab6d5042b919803aac27999084a (diff)
downloadFreeBSD-src-69aa6843efc6c9eeb6337b4d4ea4111c5ccd9ea7.zip
FreeBSD-src-69aa6843efc6c9eeb6337b4d4ea4111c5ccd9ea7.tar.gz
Boot away another stackgap (one of the lest ones in linuxlator/i386) by
providing special version of CDIOCREADSUBCHANNEL ioctl(), which assumes that result has to be placed into kernel space not user space. In the long run more generic solution has to be designed WRT emulating various ioctl()s that operate on userspace buffers, but right now there is only one such ioctl() is emulated, so that it makes little sense. MFC after: 2 weeks
Diffstat (limited to 'sys/sys/cdio.h')
-rw-r--r--sys/sys/cdio.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/sys/sys/cdio.h b/sys/sys/cdio.h
index a3eb271..3614d19 100644
--- a/sys/sys/cdio.h
+++ b/sys/sys/cdio.h
@@ -274,4 +274,11 @@ struct ioc_capability { /*<2>*/
#define CDIOCCAPABILITY _IOR('c',30,struct ioc_capability) /*<2>*/
+/*
+ * Special version of CDIOCREADSUBCHANNEL which assumes that
+ * ioc_read_subchannel->data points to the kernel memory. For
+ * use in compatibility layers.
+ */
+#define CDIOCREADSUBCHANNEL_SYSSPACE _IOWR('c', 31, struct ioc_read_subchannel)
+
#endif /* !_SYS_CDIO_H_ */
OpenPOWER on IntegriCloud