chiark / gitweb /
added the cdrom.h #defines directly into the cdrom_id.c file
[elogind.git] / extras / cdrom_id / cdrom_id.c
index 556499b..3d62781 100644 (file)
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <linux/types.h>
-#include <linux/cdrom.h>
 
 #include "../../logging.h"
 #include "../../udev_utils.h"
 
+/*
+ * Taken from the cdrom.h kernel include file.
+ * Included here as some distros don't have an updated version
+ * with all of the DVD flags.  So we just include our own, aren't
+ * we so nice...
+ */
+#define CDROM_GET_CAPABILITY   0x5331  /* get capabilities */
+
+/* capability flags used with the uniform CD-ROM driver */
+#define CDC_CLOSE_TRAY         0x1     /* caddy systems _can't_ close */
+#define CDC_OPEN_TRAY          0x2     /* but _can_ eject.  */
+#define CDC_LOCK               0x4     /* disable manual eject */
+#define CDC_SELECT_SPEED       0x8     /* programmable speed */
+#define CDC_SELECT_DISC                0x10    /* select disc from juke-box */
+#define CDC_MULTI_SESSION      0x20    /* read sessions>1 */
+#define CDC_MCN                        0x40    /* Medium Catalog Number */
+#define CDC_MEDIA_CHANGED      0x80    /* media changed */
+#define CDC_PLAY_AUDIO         0x100   /* audio functions */
+#define CDC_RESET              0x200   /* hard reset device */
+#define CDC_IOCTLS             0x400   /* driver has non-standard ioctls */
+#define CDC_DRIVE_STATUS       0x800   /* driver implements drive status */
+#define CDC_GENERIC_PACKET     0x1000  /* driver implements generic packets */
+#define CDC_CD_R               0x2000  /* drive is a CD-R */
+#define CDC_CD_RW              0x4000  /* drive is a CD-RW */
+#define CDC_DVD                        0x8000  /* drive is a DVD */
+#define CDC_DVD_R              0x10000 /* drive can write DVD-R */
+#define CDC_DVD_RAM            0x20000 /* drive can write DVD-RAM */
+#define CDC_MO_DRIVE           0x40000 /* drive is an MO device */
+#define CDC_MRW                        0x80000 /* drive can read MRW */
+#define CDC_MRW_W              0x100000 /* drive can write MRW */
+#define CDC_RAM                        0x200000 /* ok to open for WRITE */
+
 #ifdef USE_LOG
 void log_message(int priority, const char *format, ...)
 {