€•Œsphinx.addnodes”Œdocument”“”)�”}”(Œ rawsource”Œ”Œchildren”]”(Œ translations”Œ LanguagesNode”“”)�”}”(hhh]”(hŒ pending_xref”“”)�”}”(hhh]”Œdocutils.nodes”ŒText”“”ŒChinese (Simplified)”…”�”}”Œparent”hsbaŒ attributes”}”(Œids”]”Œclasses”]”Œnames”]”Œdupnames”]”Œbackrefs”]”Œ refdomain”Œstd”Œreftype”Œdoc”Œ reftarget”Œ-/translations/zh_CN/userspace-api/ioctl/cdrom”Œmodname”NŒ classname”NŒ refexplicit”ˆuŒtagname”hhh ubh)�”}”(hhh]”hŒChinese (Traditional)”…”�”}”hh2sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ-/translations/zh_TW/userspace-api/ioctl/cdrom”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒItalian”…”�”}”hhFsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ-/translations/it_IT/userspace-api/ioctl/cdrom”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒJapanese”…”�”}”hhZsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ-/translations/ja_JP/userspace-api/ioctl/cdrom”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒKorean”…”�”}”hhnsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ-/translations/ko_KR/userspace-api/ioctl/cdrom”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒPortuguese (Brazilian)”…”�”}”hh‚sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ-/translations/pt_BR/userspace-api/ioctl/cdrom”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒSpanish”…”�”}”hh–sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ-/translations/sp_SP/userspace-api/ioctl/cdrom”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubeh}”(h]”h ]”h"]”h$]”h&]”Œcurrent_language”ŒEnglish”uh1h hhŒ _document”hŒsource”NŒline”NubhŒsection”“”)�”}”(hhh]”(hŒtitle”“”)�”}”(hŒSummary of CDROM ioctl calls”h]”hŒSummary of CDROM ioctl calls”…”�”}”(hh¼h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hºhh·h²hh³ŒG/var/lib/git/docbuild/linux/Documentation/userspace-api/ioctl/cdrom.rst”h´KubhŒ bullet_list”“”)�”}”(hhh]”hŒ list_item”“”)�”}”(hŒ"Edward A. Falk ”h]”hŒ paragraph”“”)�”}”(hŒ!Edward A. Falk ”h]”(hŒEdward A. Falk <”…”�”}”(hhØh²hh³Nh´NubhŒ reference”“”)�”}”(hŒefalk@google.com”h]”hŒefalk@google.com”…”�”}”(hhâh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œrefuri”Œmailto:efalk@google.com”uh1hàhhØubhŒ>”…”�”}”(hhØh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KhhÒubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhhÍh²hh³hÊh´Nubah}”(h]”h ]”h"]”h$]”h&]”Œbullet”Œ-”uh1hËh³hÊh´Khh·h²hubh×)�”}”(hŒNovember, 2004”h]”hŒNovember, 2004”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Khh·h²hubh×)�”}”(hŒÁThis document attempts to describe the ioctl(2) calls supported by the CDROM layer. These are by-and-large implemented (as of Linux 2.6) in drivers/cdrom/cdrom.c and drivers/block/scsi_ioctl.c”h]”hŒÁThis document attempts to describe the ioctl(2) calls supported by the CDROM layer. These are by-and-large implemented (as of Linux 2.6) in drivers/cdrom/cdrom.c and drivers/block/scsi_ioctl.c”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K hh·h²hubh×)�”}”(hŒUioctl values are listed in . As of this writing, they are as follows:”h]”hŒUioctl values are listed in . As of this writing, they are as follows:”…”�”}”(hj&h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K hh·h²hubhŒ block_quote”“”)�”}”(hX* ======================== =============================================== CDROMPAUSE Pause Audio Operation CDROMRESUME Resume paused Audio Operation CDROMPLAYMSF Play Audio MSF (struct cdrom_msf) CDROMPLAYTRKIND Play Audio Track/index (struct cdrom_ti) CDROMREADTOCHDR Read TOC header (struct cdrom_tochdr) CDROMREADTOCENTRY Read TOC entry (struct cdrom_tocentry) CDROMSTOP Stop the cdrom drive CDROMSTART Start the cdrom drive CDROMEJECT Ejects the cdrom media CDROMVOLCTRL Control output volume (struct cdrom_volctrl) CDROMSUBCHNL Read subchannel data (struct cdrom_subchnl) CDROMREADMODE2 Read CDROM mode 2 data (2336 Bytes) (struct cdrom_read) CDROMREADMODE1 Read CDROM mode 1 data (2048 Bytes) (struct cdrom_read) CDROMREADAUDIO (struct cdrom_read_audio) CDROMEJECT_SW enable(1)/disable(0) auto-ejecting CDROMMULTISESSION Obtain the start-of-last-session address of multi session disks (struct cdrom_multisession) CDROM_GET_MCN Obtain the "Universal Product Code" if available (struct cdrom_mcn) CDROM_GET_UPC Deprecated, use CDROM_GET_MCN instead. CDROMRESET hard-reset the drive CDROMVOLREAD Get the drive's volume setting (struct cdrom_volctrl) CDROMREADRAW read data in raw mode (2352 Bytes) (struct cdrom_read) CDROMREADCOOKED read data in cooked mode CDROMSEEK seek msf address CDROMPLAYBLK scsi-cd only, (struct cdrom_blk) CDROMREADALL read all 2646 bytes CDROMGETSPINDOWN return 4-bit spindown value CDROMSETSPINDOWN set 4-bit spindown value CDROMCLOSETRAY pendant of CDROMEJECT CDROM_SET_OPTIONS Set behavior options CDROM_CLEAR_OPTIONS Clear behavior options CDROM_SELECT_SPEED Set the CD-ROM speed CDROM_SELECT_DISC Select disc (for juke-boxes) CDROM_MEDIA_CHANGED Check is media changed CDROM_TIMED_MEDIA_CHANGE Check if media changed since given time (struct cdrom_timed_media_change_info) CDROM_DRIVE_STATUS Get tray position, etc. CDROM_DISC_STATUS Get disc type, etc. CDROM_CHANGER_NSLOTS Get number of slots CDROM_LOCKDOOR lock or unlock door CDROM_DEBUG Turn debug messages on/off CDROM_GET_CAPABILITY get capabilities CDROMAUDIOBUFSIZ set the audio buffer size DVD_READ_STRUCT Read structure DVD_WRITE_STRUCT Write structure DVD_AUTH Authentication CDROM_SEND_PACKET send a packet to the drive CDROM_NEXT_WRITABLE get next writable block CDROM_LAST_WRITTEN get last block written on disc ======================== =============================================== ”h]”hŒtable”“”)�”}”(hhh]”hŒtgroup”“”)�”}”(hhh]”(hŒcolspec”“”)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œcolwidth”Kuh1jDhjAubjE)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œcolwidth”K/uh1jDhjAubhŒtbody”“”)�”}”(hhh]”(hŒrow”“”)�”}”(hhh]”(hŒentry”“”)�”}”(hhh]”h×)�”}”(hŒ CDROMPAUSE”h]”hŒ CDROMPAUSE”…”�”}”(hjih²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Khjfubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjaubje)�”}”(hhh]”h×)�”}”(hŒPause Audio Operation”h]”hŒPause Audio Operation”…”�”}”(hj€h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Khj}ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjaubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒ CDROMRESUME”h]”hŒ CDROMRESUME”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Khj�ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjšubje)�”}”(hhh]”h×)�”}”(hŒResume paused Audio Operation”h]”hŒResume paused Audio Operation”…”�”}”(hj·h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Khj´ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjšubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒ CDROMPLAYMSF”h]”hŒ CDROMPLAYMSF”…”�”}”(hj×h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KhjÔubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjÑubje)�”}”(hhh]”h×)�”}”(hŒ!Play Audio MSF (struct cdrom_msf)”h]”hŒ!Play Audio MSF (struct cdrom_msf)”…”�”}”(hjîh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Khjëubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjÑubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDROMPLAYTRKIND”h]”hŒCDROMPLAYTRKIND”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Khj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjubje)�”}”(hhh]”h×)�”}”(hŒ(Play Audio Track/index (struct cdrom_ti)”h]”hŒ(Play Audio Track/index (struct cdrom_ti)”…”�”}”(hj%h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Khj"ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDROMREADTOCHDR”h]”hŒCDROMREADTOCHDR”…”�”}”(hjEh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KhjBubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj?ubje)�”}”(hhh]”h×)�”}”(hŒ%Read TOC header (struct cdrom_tochdr)”h]”hŒ%Read TOC header (struct cdrom_tochdr)”…”�”}”(hj\h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KhjYubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj?ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDROMREADTOCENTRY”h]”hŒCDROMREADTOCENTRY”…”�”}”(hj|h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Khjyubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjvubje)�”}”(hhh]”h×)�”}”(hŒ&Read TOC entry (struct cdrom_tocentry)”h]”hŒ&Read TOC entry (struct cdrom_tocentry)”…”�”}”(hj“h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Khj�ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjvubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒ CDROMSTOP”h]”hŒ CDROMSTOP”…”�”}”(hj³h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Khj°ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj­ubje)�”}”(hhh]”h×)�”}”(hŒStop the cdrom drive”h]”hŒStop the cdrom drive”…”�”}”(hjÊh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KhjÇubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj­ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒ CDROMSTART”h]”hŒ CDROMSTART”…”�”}”(hjêh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Khjçubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjäubje)�”}”(hhh]”h×)�”}”(hŒStart the cdrom drive”h]”hŒStart the cdrom drive”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Khjþubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjäubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒ CDROMEJECT”h]”hŒ CDROMEJECT”…”�”}”(hj!h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Khjubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjubje)�”}”(hhh]”h×)�”}”(hŒEjects the cdrom media”h]”hŒEjects the cdrom media”…”�”}”(hj8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Khj5ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒ CDROMVOLCTRL”h]”hŒ CDROMVOLCTRL”…”�”}”(hjXh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KhjUubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjRubje)�”}”(hhh]”h×)�”}”(hŒ,Control output volume (struct cdrom_volctrl)”h]”hŒ,Control output volume (struct cdrom_volctrl)”…”�”}”(hjoh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Khjlubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjRubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒ CDROMSUBCHNL”h]”hŒ CDROMSUBCHNL”…”�”}”(hj�h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KhjŒubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj‰ubje)�”}”(hhh]”h×)�”}”(hŒ+Read subchannel data (struct cdrom_subchnl)”h]”hŒ+Read subchannel data (struct cdrom_subchnl)”…”�”}”(hj¦h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Khj£ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj‰ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDROMREADMODE2”h]”hŒCDROMREADMODE2”…”�”}”(hjÆh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KhjÃubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjÀubje)�”}”(hhh]”h×)�”}”(hŒ7Read CDROM mode 2 data (2336 Bytes) (struct cdrom_read)”h]”hŒ7Read CDROM mode 2 data (2336 Bytes) (struct cdrom_read)”…”�”}”(hjÝh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KhjÚubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjÀubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDROMREADMODE1”h]”hŒCDROMREADMODE1”…”�”}”(hjýh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Khjúubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj÷ubje)�”}”(hhh]”h×)�”}”(hŒ7Read CDROM mode 1 data (2048 Bytes) (struct cdrom_read)”h]”hŒ7Read CDROM mode 1 data (2048 Bytes) (struct cdrom_read)”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Khjubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj÷ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDROMREADAUDIO”h]”hŒCDROMREADAUDIO”…”�”}”(hj4h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K hj1ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj.ubje)�”}”(hhh]”h×)�”}”(hŒ(struct cdrom_read_audio)”h]”hŒ(struct cdrom_read_audio)”…”�”}”(hjKh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K hjHubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj.ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒ CDROMEJECT_SW”h]”hŒ CDROMEJECT_SW”…”�”}”(hjkh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K!hjhubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjeubje)�”}”(hhh]”h×)�”}”(hŒ"enable(1)/disable(0) auto-ejecting”h]”hŒ"enable(1)/disable(0) auto-ejecting”…”�”}”(hj‚h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K!hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjeubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDROMMULTISESSION”h]”hŒCDROMMULTISESSION”…”�”}”(hj¢h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K"hjŸubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjœubje)�”}”(hhh]”h×)�”}”(hŒ[Obtain the start-of-last-session address of multi session disks (struct cdrom_multisession)”h]”hŒ[Obtain the start-of-last-session address of multi session disks (struct cdrom_multisession)”…”�”}”(hj¹h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K"hj¶ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjœubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒ CDROM_GET_MCN”h]”hŒ CDROM_GET_MCN”…”�”}”(hjÙh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K%hjÖubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjÓubje)�”}”(hhh]”h×)�”}”(hŒCObtain the "Universal Product Code" if available (struct cdrom_mcn)”h]”hŒGObtain the “Universal Product Codeâ€� if available (struct cdrom_mcn)”…”�”}”(hjðh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K%hjíubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjÓubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒ CDROM_GET_UPC”h]”hŒ CDROM_GET_UPC”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K'hj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj ubje)�”}”(hhh]”h×)�”}”(hŒ&Deprecated, use CDROM_GET_MCN instead.”h]”hŒ&Deprecated, use CDROM_GET_MCN instead.”…”�”}”(hj'h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K'hj$ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒ CDROMRESET”h]”hŒ CDROMRESET”…”�”}”(hjGh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K(hjDubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjAubje)�”}”(hhh]”h×)�”}”(hŒhard-reset the drive”h]”hŒhard-reset the drive”…”�”}”(hj^h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K(hj[ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjAubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒ CDROMVOLREAD”h]”hŒ CDROMVOLREAD”…”�”}”(hj~h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K)hj{ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjxubje)�”}”(hhh]”h×)�”}”(hŒ5Get the drive's volume setting (struct cdrom_volctrl)”h]”hŒ7Get the drive’s volume setting (struct cdrom_volctrl)”…”�”}”(hj•h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K)hj’ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjxubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒ CDROMREADRAW”h]”hŒ CDROMREADRAW”…”�”}”(hjµh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K+hj²ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj¯ubje)�”}”(hhh]”h×)�”}”(hŒ6read data in raw mode (2352 Bytes) (struct cdrom_read)”h]”hŒ6read data in raw mode (2352 Bytes) (struct cdrom_read)”…”�”}”(hjÌh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K+hjÉubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj¯ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDROMREADCOOKED”h]”hŒCDROMREADCOOKED”…”�”}”(hjìh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K-hjéubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjæubje)�”}”(hhh]”h×)�”}”(hŒread data in cooked mode”h]”hŒread data in cooked mode”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K-hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjæubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒ CDROMSEEK”h]”hŒ CDROMSEEK”…”�”}”(hj#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K.hj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjubje)�”}”(hhh]”h×)�”}”(hŒseek msf address”h]”hŒseek msf address”…”�”}”(hj:h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K.hj7ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒ CDROMPLAYBLK”h]”hŒ CDROMPLAYBLK”…”�”}”(hjZh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K/hjWubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjTubje)�”}”(hhh]”h×)�”}”(hŒ scsi-cd only, (struct cdrom_blk)”h]”hŒ scsi-cd only, (struct cdrom_blk)”…”�”}”(hjqh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K/hjnubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjTubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒ CDROMREADALL”h]”hŒ CDROMREADALL”…”�”}”(hj‘h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K0hjŽubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj‹ubje)�”}”(hhh]”h×)�”}”(hŒread all 2646 bytes”h]”hŒread all 2646 bytes”…”�”}”(hj¨h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K0hj¥ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj‹ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDROMGETSPINDOWN”h]”hŒCDROMGETSPINDOWN”…”�”}”(hjÈh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K1hjÅubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjÂubje)�”}”(hhh]”h×)�”}”(hŒreturn 4-bit spindown value”h]”hŒreturn 4-bit spindown value”…”�”}”(hjßh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K1hjÜubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjÂubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDROMSETSPINDOWN”h]”hŒCDROMSETSPINDOWN”…”�”}”(hjÿh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K2hjüubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjùubje)�”}”(hhh]”h×)�”}”(hŒset 4-bit spindown value”h]”hŒset 4-bit spindown value”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K2hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjùubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDROMCLOSETRAY”h]”hŒCDROMCLOSETRAY”…”�”}”(hj6h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K3hj3ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj0ubje)�”}”(hhh]”h×)�”}”(hŒpendant of CDROMEJECT”h]”hŒpendant of CDROMEJECT”…”�”}”(hjMh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K3hjJubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj0ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDROM_SET_OPTIONS”h]”hŒCDROM_SET_OPTIONS”…”�”}”(hjmh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K4hjjubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjgubje)�”}”(hhh]”h×)�”}”(hŒSet behavior options”h]”hŒSet behavior options”…”�”}”(hj„h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K4hj�ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjgubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDROM_CLEAR_OPTIONS”h]”hŒCDROM_CLEAR_OPTIONS”…”�”}”(hj¤h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K5hj¡ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjžubje)�”}”(hhh]”h×)�”}”(hŒClear behavior options”h]”hŒClear behavior options”…”�”}”(hj»h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K5hj¸ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjžubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDROM_SELECT_SPEED”h]”hŒCDROM_SELECT_SPEED”…”�”}”(hjÛh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K6hjØubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjÕubje)�”}”(hhh]”h×)�”}”(hŒSet the CD-ROM speed”h]”hŒSet the CD-ROM speed”…”�”}”(hjòh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K6hjïubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjÕubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDROM_SELECT_DISC”h]”hŒCDROM_SELECT_DISC”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K7hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj ubje)�”}”(hhh]”h×)�”}”(hŒSelect disc (for juke-boxes)”h]”hŒSelect disc (for juke-boxes)”…”�”}”(hj)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K7hj&ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDROM_MEDIA_CHANGED”h]”hŒCDROM_MEDIA_CHANGED”…”�”}”(hjIh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K8hjFubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjCubje)�”}”(hhh]”h×)�”}”(hŒCheck is media changed”h]”hŒCheck is media changed”…”�”}”(hj`h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K8hj]ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjCubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDROM_TIMED_MEDIA_CHANGE”h]”hŒCDROM_TIMED_MEDIA_CHANGE”…”�”}”(hj€h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K9hj}ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjzubje)�”}”(hhh]”h×)�”}”(hŒNCheck if media changed since given time (struct cdrom_timed_media_change_info)”h]”hŒNCheck if media changed since given time (struct cdrom_timed_media_change_info)”…”�”}”(hj—h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K9hj”ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjzubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDROM_DRIVE_STATUS”h]”hŒCDROM_DRIVE_STATUS”…”�”}”(hj·h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Khj" ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj ubje)�”}”(hhh]”h×)�”}”(hŒGet number of slots”h]”hŒGet number of slots”…”�”}”(hj< h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K>hj9 ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDROM_LOCKDOOR”h]”hŒCDROM_LOCKDOOR”…”�”}”(hj\ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K?hjY ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjV ubje)�”}”(hhh]”h×)�”}”(hŒlock or unlock door”h]”hŒlock or unlock door”…”�”}”(hjs h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K?hjp ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjV ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒ CDROM_DEBUG”h]”hŒ CDROM_DEBUG”…”�”}”(hj“ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K@hj� ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj� ubje)�”}”(hhh]”h×)�”}”(hŒTurn debug messages on/off”h]”hŒTurn debug messages on/off”…”�”}”(hjª h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K@hj§ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj� ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDROM_GET_CAPABILITY”h]”hŒCDROM_GET_CAPABILITY”…”�”}”(hjÊ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KAhjÇ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjÄ ubje)�”}”(hhh]”h×)�”}”(hŒget capabilities”h]”hŒget capabilities”…”�”}”(hjá h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KAhjÞ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjÄ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDROMAUDIOBUFSIZ”h]”hŒCDROMAUDIOBUFSIZ”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KBhjþ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjû ubje)�”}”(hhh]”h×)�”}”(hŒset the audio buffer size”h]”hŒset the audio buffer size”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KBhj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjû ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒDVD_READ_STRUCT”h]”hŒDVD_READ_STRUCT”…”�”}”(hj8 h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KChj5 ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj2 ubje)�”}”(hhh]”h×)�”}”(hŒRead structure”h]”hŒRead structure”…”�”}”(hjO h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KChjL ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj2 ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒDVD_WRITE_STRUCT”h]”hŒDVD_WRITE_STRUCT”…”�”}”(hjo h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KDhjl ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhji ubje)�”}”(hhh]”h×)�”}”(hŒWrite structure”h]”hŒWrite structure”…”�”}”(hj† h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KDhjƒ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhji ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒDVD_AUTH”h]”hŒDVD_AUTH”…”�”}”(hj¦ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KEhj£ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj  ubje)�”}”(hhh]”h×)�”}”(hŒAuthentication”h]”hŒAuthentication”…”�”}”(hj½ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KEhjº ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj  ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDROM_SEND_PACKET”h]”hŒCDROM_SEND_PACKET”…”�”}”(hjÝ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KFhjÚ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj× ubje)�”}”(hhh]”h×)�”}”(hŒsend a packet to the drive”h]”hŒsend a packet to the drive”…”�”}”(hjô h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KFhjñ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj× ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDROM_NEXT_WRITABLE”h]”hŒCDROM_NEXT_WRITABLE”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KGhj ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj ubje)�”}”(hhh]”h×)�”}”(hŒget next writable block”h]”hŒget next writable block”…”�”}”(hj+ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KGhj( ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDROM_LAST_WRITTEN”h]”hŒCDROM_LAST_WRITTEN”…”�”}”(hjK h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KHhjH ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjE ubje)�”}”(hhh]”h×)�”}”(hŒget last block written on disc”h]”hŒget last block written on disc”…”�”}”(hjb h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KHhj_ ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjE ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj\ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jZhjAubeh}”(h]”h ]”h"]”h$]”h&]”Œcols”Kuh1j?hj<ubah}”(h]”h ]”h"]”h$]”h&]”uh1j:hj6ubah}”(h]”h ]”h"]”h$]”h&]”uh1j4h³hÊh´Khh·h²hubh×)�”}”(hŒˆThe information that follows was determined from reading kernel source code. It is likely that some corrections will be made over time.”h]”hŒˆThe information that follows was determined from reading kernel source code. It is likely that some corrections will be made over time.”…”�”}”(hj• h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KLhh·h²hubhŒ transition”“”)�”}”(hŒN------------------------------------------------------------------------------”h]”h}”(h]”h ]”h"]”h$]”h&]”uh1j£ h³hÊh´KOhh·h²hubh×)�”}”(hŒGeneral:”h]”hŒGeneral:”…”�”}”(hj¯ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KQhh·h²hubj5)�”}”(hXÑUnless otherwise specified, all ioctl calls return 0 on success and -1 with errno set to an appropriate value on error. (Some ioctls return non-negative data values.) Unless otherwise specified, all ioctl calls return -1 and set errno to EFAULT on a failed attempt to copy data to or from user address space. Individual drivers may return error codes not listed here. Unless otherwise specified, all data structures and constants are defined in ”h]”(h×)�”}”(hŒ§Unless otherwise specified, all ioctl calls return 0 on success and -1 with errno set to an appropriate value on error. (Some ioctls return non-negative data values.)”h]”hŒ§Unless otherwise specified, all ioctl calls return 0 on success and -1 with errno set to an appropriate value on error. (Some ioctls return non-negative data values.)”…”�”}”(hjÁ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KShj½ ubh×)�”}”(hŒ�Unless otherwise specified, all ioctl calls return -1 and set errno to EFAULT on a failed attempt to copy data to or from user address space.”h]”hŒ�Unless otherwise specified, all ioctl calls return -1 and set errno to EFAULT on a failed attempt to copy data to or from user address space.”…”�”}”(hjÏ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KWhj½ ubh×)�”}”(hŒ:Individual drivers may return error codes not listed here.”h]”hŒ:Individual drivers may return error codes not listed here.”…”�”}”(hjÝ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K[hj½ ubh×)�”}”(hŒ\Unless otherwise specified, all data structures and constants are defined in ”h]”hŒ\Unless otherwise specified, all data structures and constants are defined in ”…”�”}”(hjë h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K]hj½ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j4h³hÊh´KShh·h²hubj¤ )�”}”(hŒN------------------------------------------------------------------------------”h]”h}”(h]”h ]”h"]”h$]”h&]”uh1j£ h³hÊh´K`hh·h²hubhŒdefinition_list”“”)�”}”(hhh]”(hŒdefinition_list_item”“”)�”}”(hŒ´CDROMPAUSE Pause Audio Operation usage:: ioctl(fd, CDROMPAUSE, 0); inputs: none outputs: none error return: - ENOSYS cd drive not audio-capable. ”h]”(hŒterm”“”)�”}”(hŒ CDROMPAUSE”h]”hŒ CDROMPAUSE”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Kvhj ubhŒ definition”“”)�”}”(hhh]”(h×)�”}”(hŒPause Audio Operation”h]”hŒPause Audio Operation”…”�”}”(hj) h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Kdhj& ubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hj7 h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Kghj& ubhŒ literal_block”“”)�”}”(hŒioctl(fd, CDROMPAUSE, 0);”h]”hŒioctl(fd, CDROMPAUSE, 0);”…”�”}”hjG sbah}”(h]”h ]”h"]”h$]”h&]”Œ xml:space”Œpreserve”uh1jE h³hÊh´Kihj& ubj )�”}”(hhh]”(j )�”}”(hŒinputs: none ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hj^ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´KnhjZ ubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hjo h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Kmhjl ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjZ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´KnhjW ubj )�”}”(hŒoutputs: none ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hj� h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Krhj‰ ubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hjž h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Kqhj› ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj‰ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´KrhjW ubj )�”}”(hŒ9error return: - ENOSYS cd drive not audio-capable. ”h]”(j )�”}”(hŒ error return:”h]”hŒ error return:”…”�”}”(hj¼ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Kvhj¸ ubj% )�”}”(hhh]”hÌ)�”}”(hhh]”hÑ)�”}”(hŒ)ENOSYS cd drive not audio-capable. ”h]”h×)�”}”(hŒ'ENOSYS cd drive not audio-capable.”h]”hŒ'ENOSYS cd drive not audio-capable.”…”�”}”(hjÔ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KuhjÐ ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjÍ ubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´KuhjÊ ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj¸ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´KvhjW ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hj& ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Kvhj ubj )�”}”(hŒ¾CDROMRESUME Resume paused Audio Operation usage:: ioctl(fd, CDROMRESUME, 0); inputs: none outputs: none error return: - ENOSYS cd drive not audio-capable. ”h]”(j )�”}”(hŒ CDROMRESUME”h]”hŒ CDROMRESUME”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´K‹hj ubj% )�”}”(hhh]”(h×)�”}”(hŒResume paused Audio Operation”h]”hŒResume paused Audio Operation”…”�”}”(hj! h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Kyhj ubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hj/ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K|hj ubjF )�”}”(hŒioctl(fd, CDROMRESUME, 0);”h]”hŒioctl(fd, CDROMRESUME, 0);”…”�”}”hj= sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´K~hj ubj )�”}”(hhh]”(j )�”}”(hŒinputs: none ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hjR h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´KƒhjN ubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hjc h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K‚hj` ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjN ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´KƒhjK ubj )�”}”(hŒoutputs: none ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hj� h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´K‡hj} ubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hj’ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K†hj� ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj} ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´K‡hjK ubj )�”}”(hŒ9error return: - ENOSYS cd drive not audio-capable. ”h]”(j )�”}”(hŒ error return:”h]”hŒ error return:”…”�”}”(hj° h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´K‹hj¬ ubj% )�”}”(hhh]”hÌ)�”}”(hhh]”hÑ)�”}”(hŒ)ENOSYS cd drive not audio-capable. ”h]”h×)�”}”(hŒ'ENOSYS cd drive not audio-capable.”h]”hŒ'ENOSYS cd drive not audio-capable.”…”�”}”(hjÈ h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KŠhjÄ ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjÁ ubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´KŠhj¾ ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj¬ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´K‹hjK ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hj ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´K‹hj h²hubj )�”}”(hXCDROMPLAYMSF Play Audio MSF (struct cdrom_msf) usage:: struct cdrom_msf msf; ioctl(fd, CDROMPLAYMSF, &msf); inputs: cdrom_msf structure, describing a segment of music to play outputs: none error return: - ENOSYS cd drive not audio-capable. notes: - MSF stands for minutes-seconds-frames - LBA stands for logical block address - Segment is described as start and end times, where each time is described as minutes:seconds:frames. A frame is 1/75 of a second. ”h]”(j )�”}”(hŒ CDROMPLAYMSF”h]”hŒ CDROMPLAYMSF”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Kªhjubj% )�”}”(hhh]”(h×)�”}”(hŒPlay Audio MSF”h]”hŒPlay Audio MSF”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KŽhjubh×)�”}”(hŒ(struct cdrom_msf)”h]”hŒ(struct cdrom_msf)”…”�”}”(hj#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K�hjubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hj1h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K“hjubjF )�”}”(hŒ5struct cdrom_msf msf; ioctl(fd, CDROMPLAYMSF, &msf);”h]”hŒ5struct cdrom_msf msf; ioctl(fd, CDROMPLAYMSF, &msf);”…”�”}”hj?sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´K•hjubj )�”}”(hhh]”(j )�”}”(hŒDinputs: cdrom_msf structure, describing a segment of music to play ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hjTh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´K›hjPubj% )�”}”(hhh]”h×)�”}”(hŒ:cdrom_msf structure, describing a segment of music to play”h]”hŒ:cdrom_msf structure, describing a segment of music to play”…”�”}”(hjeh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Kšhjbubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjPubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´K›hjMubj )�”}”(hŒoutputs: none ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hjƒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´KŸhjubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hj”h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Kžhj‘ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´KŸhjMubj )�”}”(hŒ8error return: - ENOSYS cd drive not audio-capable. ”h]”(j )�”}”(hŒ error return:”h]”hŒ error return:”…”�”}”(hj²h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´K¢hj®ubj% )�”}”(hhh]”hÌ)�”}”(hhh]”hÑ)�”}”(hŒ(ENOSYS cd drive not audio-capable. ”h]”h×)�”}”(hŒ'ENOSYS cd drive not audio-capable.”h]”hŒ'ENOSYS cd drive not audio-capable.”…”�”}”(hjÊh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K¢hjÆubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjÃubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´K¢hjÀubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj®ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´K¢hjMubj )�”}”(hŒßnotes: - MSF stands for minutes-seconds-frames - LBA stands for logical block address - Segment is described as start and end times, where each time is described as minutes:seconds:frames. A frame is 1/75 of a second. ”h]”(j )�”}”(hŒnotes:”h]”hŒnotes:”…”�”}”(hjôh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Kªhjðubj% )�”}”(hhh]”hÌ)�”}”(hhh]”(hÑ)�”}”(hŒ%MSF stands for minutes-seconds-frames”h]”h×)�”}”(hj h]”hŒ%MSF stands for minutes-seconds-frames”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K¥hjubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjubhÑ)�”}”(hŒ$LBA stands for logical block address”h]”h×)�”}”(hj!h]”hŒ$LBA stands for logical block address”…”�”}”(hj#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K¦hjubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjubhÑ)�”}”(hŒƒSegment is described as start and end times, where each time is described as minutes:seconds:frames. A frame is 1/75 of a second. ”h]”h×)�”}”(hŒ�Segment is described as start and end times, where each time is described as minutes:seconds:frames. A frame is 1/75 of a second.”h]”hŒ�Segment is described as start and end times, where each time is described as minutes:seconds:frames. A frame is 1/75 of a second.”…”�”}”(hj:h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K§hj6ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjubeh}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´K¥hjubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjðubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´KªhjMubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Kªhj h²hubj )�”}”(hXŸCDROMPLAYTRKIND Play Audio Track/index (struct cdrom_ti) usage:: struct cdrom_ti ti; ioctl(fd, CDROMPLAYTRKIND, &ti); inputs: cdrom_ti structure, describing a segment of music to play outputs: none error return: - ENOSYS cd drive not audio-capable. notes: - Segment is described as start and end times, where each time is described as a track and an index. ”h]”(j )�”}”(hŒCDROMPLAYTRKIND”h]”hŒCDROMPLAYTRKIND”…”�”}”(hjvh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´KÇhjrubj% )�”}”(hhh]”(h×)�”}”(hŒPlay Audio Track/index”h]”hŒPlay Audio Track/index”…”�”}”(hj‡h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K­hj„ubh×)�”}”(hŒ(struct cdrom_ti)”h]”hŒ(struct cdrom_ti)”…”�”}”(hj•h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K¯hj„ubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hj£h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K²hj„ubjF )�”}”(hŒ5struct cdrom_ti ti; ioctl(fd, CDROMPLAYTRKIND, &ti);”h]”hŒ5struct cdrom_ti ti; ioctl(fd, CDROMPLAYTRKIND, &ti);”…”�”}”hj±sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´K´hj„ubj )�”}”(hhh]”(j )�”}”(hŒCinputs: cdrom_ti structure, describing a segment of music to play ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hjÆh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´KºhjÂubj% )�”}”(hhh]”h×)�”}”(hŒ9cdrom_ti structure, describing a segment of music to play”h]”hŒ9cdrom_ti structure, describing a segment of music to play”…”�”}”(hj×h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K¹hjÔubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjÂubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Kºhj¿ubj )�”}”(hŒoutputs: none ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hjõh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´K¾hjñubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K½hjubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjñubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´K¾hj¿ubj )�”}”(hŒ8error return: - ENOSYS cd drive not audio-capable. ”h]”(j )�”}”(hŒ error return:”h]”hŒ error return:”…”�”}”(hj$h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´KÁhj ubj% )�”}”(hhh]”hÌ)�”}”(hhh]”hÑ)�”}”(hŒ(ENOSYS cd drive not audio-capable. ”h]”h×)�”}”(hŒ'ENOSYS cd drive not audio-capable.”h]”hŒ'ENOSYS cd drive not audio-capable.”…”�”}”(hj<h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KÁhj8ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj5ubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´KÁhj2ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´KÁhj¿ubj )�”}”(hŒpnotes: - Segment is described as start and end times, where each time is described as a track and an index. ”h]”(j )�”}”(hŒnotes:”h]”hŒnotes:”…”�”}”(hjfh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´KÇhjbubj% )�”}”(hhh]”hÌ)�”}”(hhh]”hÑ)�”}”(hŒeSegment is described as start and end times, where each time is described as a track and an index. ”h]”h×)�”}”(hŒbSegment is described as start and end times, where each time is described as a track and an index.”h]”hŒbSegment is described as start and end times, where each time is described as a track and an index.”…”�”}”(hj~h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KÄhjzubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjwubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´KÄhjtubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjbubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´KÇhj¿ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hj„ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjrubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´KÇhj h²hubj )�”}”(hXCDROMREADTOCHDR Read TOC header (struct cdrom_tochdr) usage:: cdrom_tochdr header; ioctl(fd, CDROMREADTOCHDR, &header); inputs: cdrom_tochdr structure outputs: cdrom_tochdr structure error return: - ENOSYS cd drive not audio-capable. ”h]”(j )�”}”(hŒCDROMREADTOCHDR”h]”hŒCDROMREADTOCHDR”…”�”}”(hjºh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Kàhj¶ubj% )�”}”(hhh]”(h×)�”}”(hŒRead TOC header”h]”hŒRead TOC header”…”�”}”(hjËh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KÊhjÈubh×)�”}”(hŒ(struct cdrom_tochdr)”h]”hŒ(struct cdrom_tochdr)”…”�”}”(hjÙh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KÌhjÈubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hjçh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KÏhjÈubjF )�”}”(hŒ:cdrom_tochdr header; ioctl(fd, CDROMREADTOCHDR, &header);”h]”hŒ:cdrom_tochdr header; ioctl(fd, CDROMREADTOCHDR, &header);”…”�”}”hjõsbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´KÑhjÈubj )�”}”(hhh]”(j )�”}”(hŒ inputs: cdrom_tochdr structure ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´K×hjubj% )�”}”(hhh]”h×)�”}”(hŒcdrom_tochdr structure”h]”hŒcdrom_tochdr structure”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KÖhjubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´K×hjubj )�”}”(hŒ!outputs: cdrom_tochdr structure ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hj9h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´KÛhj5ubj% )�”}”(hhh]”h×)�”}”(hŒcdrom_tochdr structure”h]”hŒcdrom_tochdr structure”…”�”}”(hjJh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KÚhjGubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj5ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´KÛhjubj )�”}”(hŒ:error return: - ENOSYS cd drive not audio-capable. ”h]”(j )�”}”(hŒ error return:”h]”hŒ error return:”…”�”}”(hjhh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Kàhjdubj% )�”}”(hhh]”hÌ)�”}”(hhh]”hÑ)�”}”(hŒ*ENOSYS cd drive not audio-capable. ”h]”h×)�”}”(hŒ'ENOSYS cd drive not audio-capable.”h]”hŒ'ENOSYS cd drive not audio-capable.”…”�”}”(hj€h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KÞhj|ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjyubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´KÞhjvubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjdubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Kàhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hjÈubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj¶ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Kàhj h²hubj )�”}”(hXDCDROMREADTOCENTRY Read TOC entry (struct cdrom_tocentry) usage:: struct cdrom_tocentry entry; ioctl(fd, CDROMREADTOCENTRY, &entry); inputs: cdrom_tocentry structure outputs: cdrom_tocentry structure error return: - ENOSYS cd drive not audio-capable. - EINVAL entry.cdte_format not CDROM_MSF or CDROM_LBA - EINVAL requested track out of bounds - EIO I/O error reading TOC notes: - TOC stands for Table Of Contents - MSF stands for minutes-seconds-frames - LBA stands for logical block address ”h]”(j )�”}”(hŒCDROMREADTOCENTRY”h]”hŒCDROMREADTOCENTRY”…”�”}”(hj¼h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhj¸ubj% )�”}”(hhh]”(h×)�”}”(hŒRead TOC entry”h]”hŒRead TOC entry”…”�”}”(hjÍh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KãhjÊubh×)�”}”(hŒ(struct cdrom_tocentry)”h]”hŒ(struct cdrom_tocentry)”…”�”}”(hjÛh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KåhjÊubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hjéh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KèhjÊubjF )�”}”(hŒCstruct cdrom_tocentry entry; ioctl(fd, CDROMREADTOCENTRY, &entry);”h]”hŒCstruct cdrom_tocentry entry; ioctl(fd, CDROMREADTOCENTRY, &entry);”…”�”}”hj÷sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´KêhjÊubj )�”}”(hhh]”(j )�”}”(hŒ"inputs: cdrom_tocentry structure ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Kðhjubj% )�”}”(hhh]”h×)�”}”(hŒcdrom_tocentry structure”h]”hŒcdrom_tocentry structure”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Kïhjubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Kðhjubj )�”}”(hŒ#outputs: cdrom_tocentry structure ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hj;h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Kôhj7ubj% )�”}”(hhh]”h×)�”}”(hŒcdrom_tocentry structure”h]”hŒcdrom_tocentry structure”…”�”}”(hjLh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KóhjIubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj7ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Kôhjubj )�”}”(hŒÃerror return: - ENOSYS cd drive not audio-capable. - EINVAL entry.cdte_format not CDROM_MSF or CDROM_LBA - EINVAL requested track out of bounds - EIO I/O error reading TOC ”h]”(j )�”}”(hŒ error return:”h]”hŒ error return:”…”�”}”(hjjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Kúhjfubj% )�”}”(hhh]”hÌ)�”}”(hhh]”(hÑ)�”}”(hŒ'ENOSYS cd drive not audio-capable.”h]”h×)�”}”(hj€h]”hŒ'ENOSYS cd drive not audio-capable.”…”�”}”(hj‚h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´K÷hj~ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj{ubhÑ)�”}”(hŒ8EINVAL entry.cdte_format not CDROM_MSF or CDROM_LBA”h]”h×)�”}”(hj—h]”hŒ8EINVAL entry.cdte_format not CDROM_MSF or CDROM_LBA”…”�”}”(hj™h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Køhj•ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj{ubhÑ)�”}”(hŒ)EINVAL requested track out of bounds”h]”h×)�”}”(hj®h]”hŒ)EINVAL requested track out of bounds”…”�”}”(hj°h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Kùhj¬ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj{ubhÑ)�”}”(hŒ"EIO I/O error reading TOC ”h]”h×)�”}”(hŒ!EIO I/O error reading TOC”h]”hŒ!EIO I/O error reading TOC”…”�”}”(hjÇh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´KúhjÃubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj{ubeh}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´K÷hjxubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjfubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Kúhjubj )�”}”(hŒ{notes: - TOC stands for Table Of Contents - MSF stands for minutes-seconds-frames - LBA stands for logical block address ”h]”(j )�”}”(hŒnotes:”h]”hŒnotes:”…”�”}”(hjñh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhjíubj% )�”}”(hhh]”hÌ)�”}”(hhh]”(hÑ)�”}”(hŒ TOC stands for Table Of Contents”h]”h×)�”}”(hjh]”hŒ TOC stands for Table Of Contents”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Kýhjubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjubhÑ)�”}”(hŒ%MSF stands for minutes-seconds-frames”h]”h×)�”}”(hjh]”hŒ%MSF stands for minutes-seconds-frames”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Kþhjubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjubhÑ)�”}”(hŒ'LBA stands for logical block address ”h]”h×)�”}”(hŒ$LBA stands for logical block address”h]”hŒ$LBA stands for logical block address”…”�”}”(hj7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Kÿhj3ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjubeh}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´Kýhjÿubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjíubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhjubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hjÊubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj¸ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhj h²hubj )�”}”(hX!CDROMSTOP Stop the cdrom drive usage:: ioctl(fd, CDROMSTOP, 0); inputs: none outputs: none error return: - ENOSYS cd drive not audio-capable. notes: - Exact interpretation of this ioctl depends on the device, but most seem to spin the drive down. ”h]”(j )�”}”(hŒ CDROMSTOP”h]”hŒ CDROMSTOP”…”�”}”(hjsh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhjoubj% )�”}”(hhh]”(h×)�”}”(hŒStop the cdrom drive”h]”hŒStop the cdrom drive”…”�”}”(hj„h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mhj�ubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hj’h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mhj�ubjF )�”}”(hŒioctl(fd, CDROMSTOP, 0);”h]”hŒioctl(fd, CDROMSTOP, 0);”…”�”}”hj sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´M hj�ubj )�”}”(hhh]”(j )�”}”(hŒinputs: none ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hjµh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhj±ubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hjÆh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M hjÃubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj±ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhj®ubj )�”}”(hŒoutputs: none ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hjäh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhjàubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hjõh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mhjòubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjàubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhj®ubj )�”}”(hŒ8error return: - ENOSYS cd drive not audio-capable. ”h]”(j )�”}”(hŒ error return:”h]”hŒ error return:”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhjubj% )�”}”(hhh]”hÌ)�”}”(hhh]”hÑ)�”}”(hŒ(ENOSYS cd drive not audio-capable. ”h]”h×)�”}”(hŒ'ENOSYS cd drive not audio-capable.”h]”hŒ'ENOSYS cd drive not audio-capable.”…”�”}”(hj+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mhj'ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj$ubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´Mhj!ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhj®ubj )�”}”(hŒlnotes: - Exact interpretation of this ioctl depends on the device, but most seem to spin the drive down. ”h]”(j )�”}”(hŒnotes:”h]”hŒnotes:”…”�”}”(hjUh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MhjQubj% )�”}”(hhh]”hÌ)�”}”(hhh]”hÑ)�”}”(hŒaExact interpretation of this ioctl depends on the device, but most seem to spin the drive down. ”h]”h×)�”}”(hŒ_Exact interpretation of this ioctl depends on the device, but most seem to spin the drive down.”h]”hŒ_Exact interpretation of this ioctl depends on the device, but most seem to spin the drive down.”…”�”}”(hjmh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mhjiubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjfubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´Mhjcubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjQubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhj®ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hj�ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjoubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhj h²hubj )�”}”(hXgCDROMSTART Start the cdrom drive usage:: ioctl(fd, CDROMSTART, 0); inputs: none outputs: none error return: - ENOSYS cd drive not audio-capable. notes: - Exact interpretation of this ioctl depends on the device, but most seem to spin the drive up and/or close the tray. Other devices ignore the ioctl completely. ”h]”(j )�”}”(hŒ CDROMSTART”h]”hŒ CDROMSTART”…”�”}”(hj©h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M4hj¥ubj% )�”}”(hhh]”(h×)�”}”(hŒStart the cdrom drive”h]”hŒStart the cdrom drive”…”�”}”(hjºh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mhj·ubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hjÈh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M hj·ubjF )�”}”(hŒioctl(fd, CDROMSTART, 0);”h]”hŒioctl(fd, CDROMSTART, 0);”…”�”}”hjÖsbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´M"hj·ubj )�”}”(hhh]”(j )�”}”(hŒinputs: none ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hjëh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M'hjçubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hjüh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M&hjùubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjçubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M'hjäubj )�”}”(hŒoutputs: none ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M+hjubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hj+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M*hj(ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M+hjäubj )�”}”(hŒ8error return: - ENOSYS cd drive not audio-capable. ”h]”(j )�”}”(hŒ error return:”h]”hŒ error return:”…”�”}”(hjIh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M.hjEubj% )�”}”(hhh]”hÌ)�”}”(hhh]”hÑ)�”}”(hŒ(ENOSYS cd drive not audio-capable. ”h]”h×)�”}”(hŒ'ENOSYS cd drive not audio-capable.”h]”hŒ'ENOSYS cd drive not audio-capable.”…”�”}”(hjah²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M.hj]ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjZubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´M.hjWubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjEubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M.hjäubj )�”}”(hŒ­notes: - Exact interpretation of this ioctl depends on the device, but most seem to spin the drive up and/or close the tray. Other devices ignore the ioctl completely. ”h]”(j )�”}”(hŒnotes:”h]”hŒnotes:”…”�”}”(hj‹h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M4hj‡ubj% )�”}”(hhh]”hÌ)�”}”(hhh]”hÑ)�”}”(hŒ Exact interpretation of this ioctl depends on the device, but most seem to spin the drive up and/or close the tray. Other devices ignore the ioctl completely. ”h]”h×)�”}”(hŒžExact interpretation of this ioctl depends on the device, but most seem to spin the drive up and/or close the tray. Other devices ignore the ioctl completely.”h]”hŒžExact interpretation of this ioctl depends on the device, but most seem to spin the drive up and/or close the tray. Other devices ignore the ioctl completely.”…”�”}”(hj£h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M1hjŸubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjœubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´M1hj™ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj‡ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M4hjäubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hj·ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj¥ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M4hj h²hubj )�”}”(hX3CDROMEJECT - Ejects the cdrom media usage:: ioctl(fd, CDROMEJECT, 0); inputs: none outputs: none error returns: - ENOSYS cd drive not capable of ejecting - EBUSY other processes are accessing drive, or door is locked notes: - See CDROM_LOCKDOOR, below. ”h]”(j )�”}”(hŒ CDROMEJECT”h]”hŒ CDROMEJECT”…”�”}”(hjßh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MOhjÛubj% )�”}”(hhh]”(hÌ)�”}”(hhh]”hÑ)�”}”(hŒEjects the cdrom media ”h]”h×)�”}”(hŒEjects the cdrom media”h]”hŒEjects the cdrom media”…”�”}”(hj÷h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M7hjóubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjðubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´M7hjíubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M:hjíubjF )�”}”(hŒioctl(fd, CDROMEJECT, 0);”h]”hŒioctl(fd, CDROMEJECT, 0);”…”�”}”hjsbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´M<hjíubj )�”}”(hhh]”(j )�”}”(hŒinputs: none ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hj4h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MAhj0ubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hjEh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M@hjBubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj0ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MAhj-ubj )�”}”(hŒoutputs: none ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hjch²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MEhj_ubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hjth²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MDhjqubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj_ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MEhj-ubj )�”}”(hŒƒerror returns: - ENOSYS cd drive not capable of ejecting - EBUSY other processes are accessing drive, or door is locked ”h]”(j )�”}”(hŒerror returns:”h]”hŒerror returns:”…”�”}”(hj’h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MIhjŽubj% )�”}”(hhh]”hÌ)�”}”(hhh]”(hÑ)�”}”(hŒ,ENOSYS cd drive not capable of ejecting”h]”h×)�”}”(hj¨h]”hŒ,ENOSYS cd drive not capable of ejecting”…”�”}”(hjªh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MHhj¦ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj£ubhÑ)�”}”(hŒCEBUSY other processes are accessing drive, or door is locked ”h]”h×)�”}”(hŒBEBUSY other processes are accessing drive, or door is locked”h]”hŒBEBUSY other processes are accessing drive, or door is locked”…”�”}”(hjÁh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MIhj½ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj£ubeh}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´MHhj ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjŽubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MIhj-ubj )�”}”(hŒ'notes: - See CDROM_LOCKDOOR, below. ”h]”(j )�”}”(hŒnotes:”h]”hŒnotes:”…”�”}”(hjëh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MOhjçubj% )�”}”(hhh]”hÌ)�”}”(hhh]”hÑ)�”}”(hŒSee CDROM_LOCKDOOR, below. ”h]”h×)�”}”(hŒSee CDROM_LOCKDOOR, below.”h]”hŒSee CDROM_LOCKDOOR, below.”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MLhjÿubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjüubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´MLhjùubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjçubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MOhj-ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hjíubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjÛubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MOhj h²hubj )�”}”(hX@CDROMCLOSETRAY pendant of CDROMEJECT usage:: ioctl(fd, CDROMCLOSETRAY, 0); inputs: none outputs: none error returns: - ENOSYS cd drive not capable of closing the tray - EBUSY other processes are accessing drive, or door is locked notes: - See CDROM_LOCKDOOR, below. ”h]”(j )�”}”(hŒCDROMCLOSETRAY”h]”hŒCDROMCLOSETRAY”…”�”}”(hj?h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mjhj;ubj% )�”}”(hhh]”(h×)�”}”(hŒpendant of CDROMEJECT”h]”hŒpendant of CDROMEJECT”…”�”}”(hjPh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MRhjMubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hj^h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MUhjMubjF )�”}”(hŒioctl(fd, CDROMCLOSETRAY, 0);”h]”hŒioctl(fd, CDROMCLOSETRAY, 0);”…”�”}”hjlsbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´MWhjMubj )�”}”(hhh]”(j )�”}”(hŒinputs: none ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hj�h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M\hj}ubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hj’h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M[hj�ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj}ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M\hjzubj )�”}”(hŒoutputs: none ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hj°h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M`hj¬ubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hjÁh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M_hj¾ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj¬ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M`hjzubj )�”}”(hŒ‹error returns: - ENOSYS cd drive not capable of closing the tray - EBUSY other processes are accessing drive, or door is locked ”h]”(j )�”}”(hŒerror returns:”h]”hŒerror returns:”…”�”}”(hjßh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MdhjÛubj% )�”}”(hhh]”hÌ)�”}”(hhh]”(hÑ)�”}”(hŒ4ENOSYS cd drive not capable of closing the tray”h]”h×)�”}”(hjõh]”hŒ4ENOSYS cd drive not capable of closing the tray”…”�”}”(hj÷h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mchjóubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjðubhÑ)�”}”(hŒCEBUSY other processes are accessing drive, or door is locked ”•Øh]”h×)�”}”(hŒBEBUSY other processes are accessing drive, or door is locked”h]”hŒBEBUSY other processes are accessing drive, or door is locked”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mdhj ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjðubeh}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´Mchjíubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjÛubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mdhjzubj )�”}”(hŒ'notes: - See CDROM_LOCKDOOR, below. ”h]”(j )�”}”(hŒnotes:”h]”hŒnotes:”…”�”}”(hj8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mjhj4ubj% )�”}”(hhh]”hÌ)�”}”(hhh]”hÑ)�”}”(hŒSee CDROM_LOCKDOOR, below. ”h]”h×)�”}”(hŒSee CDROM_LOCKDOOR, below.”h]”hŒSee CDROM_LOCKDOOR, below.”…”�”}”(hjPh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MghjLubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjIubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´MghjFubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj4ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mjhjzubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hjMubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj;ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mjhj h²hubj )�”}”(hX8CDROMVOLCTRL Control output volume (struct cdrom_volctrl) usage:: struct cdrom_volctrl volume; ioctl(fd, CDROMVOLCTRL, &volume); inputs: cdrom_volctrl structure containing volumes for up to 4 channels. outputs: none error return: - ENOSYS cd drive not audio-capable. ”h]”(j )�”}”(hŒ CDROMVOLCTRL”h]”hŒ CDROMVOLCTRL”…”�”}”(hjŒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M�hjˆubj% )�”}”(hhh]”(h×)�”}”(hŒ,Control output volume (struct cdrom_volctrl)”h]”hŒ,Control output volume (struct cdrom_volctrl)”…”�”}”(hj�h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mmhjšubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hj«h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MphjšubjF )�”}”(hŒ?struct cdrom_volctrl volume; ioctl(fd, CDROMVOLCTRL, &volume);”h]”hŒ?struct cdrom_volctrl volume; ioctl(fd, CDROMVOLCTRL, &volume);”…”�”}”hj¹sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´Mrhjšubj )�”}”(hhh]”(j )�”}”(hŒIinputs: cdrom_volctrl structure containing volumes for up to 4 channels. ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hjÎh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MxhjÊubj% )�”}”(hhh]”h×)�”}”(hŒ@cdrom_volctrl structure containing volumes for up to 4 channels.”h]”hŒ@cdrom_volctrl structure containing volumes for up to 4 channels.”…”�”}”(hjßh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MwhjÜubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjÊubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MxhjÇubj )�”}”(hŒoutputs: none ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hjýh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M|hjùubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M{hj ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjùubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M|hjÇubj )�”}”(hŒ:error return: - ENOSYS cd drive not audio-capable. ”h]”(j )�”}”(hŒ error return:”h]”hŒ error return:”…”�”}”(hj,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M�hj(ubj% )�”}”(hhh]”hÌ)�”}”(hhh]”hÑ)�”}”(hŒ*ENOSYS cd drive not audio-capable. ”h]”h×)�”}”(hŒ'ENOSYS cd drive not audio-capable.”h]”hŒ'ENOSYS cd drive not audio-capable.”…”�”}”(hjDh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mhj@ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj=ubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´Mhj:ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj(ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M�hjÇubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hjšubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjˆubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M�hj h²hubj )�”}”(hXCDROMVOLREAD Get the drive's volume setting (struct cdrom_volctrl) usage:: struct cdrom_volctrl volume; ioctl(fd, CDROMVOLREAD, &volume); inputs: none outputs: The current volume settings. error return: - ENOSYS cd drive not audio-capable. ”h]”(j )�”}”(hŒ CDROMVOLREAD”h]”hŒ CDROMVOLREAD”…”�”}”(hj€h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mšhj|ubj% )�”}”(hhh]”(h×)�”}”(hŒGet the drive's volume setting”h]”hŒ Get the drive’s volume setting”…”�”}”(hj‘h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M„hjŽubh×)�”}”(hŒ(struct cdrom_volctrl)”h]”hŒ(struct cdrom_volctrl)”…”�”}”(hjŸh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M†hjŽubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hj­h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M‰hjŽubjF )�”}”(hŒ?struct cdrom_volctrl volume; ioctl(fd, CDROMVOLREAD, &volume);”h]”hŒ?struct cdrom_volctrl volume; ioctl(fd, CDROMVOLREAD, &volume);”…”�”}”hj»sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´M‹hjŽubj )�”}”(hhh]”(j )�”}”(hŒinputs: none ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hjÐh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M‘hjÌubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hjáh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M�hjÞubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjÌubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M‘hjÉubj )�”}”(hŒ'outputs: The current volume settings. ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hjÿh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M•hjûubj% )�”}”(hhh]”h×)�”}”(hŒThe current volume settings.”h]”hŒThe current volume settings.”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M”hj ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjûubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M•hjÉubj )�”}”(hŒ:error return: - ENOSYS cd drive not audio-capable. ”h]”(j )�”}”(hŒ error return:”h]”hŒ error return:”…”�”}”(hj.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mšhj*ubj% )�”}”(hhh]”hÌ)�”}”(hhh]”hÑ)�”}”(hŒ*ENOSYS cd drive not audio-capable. ”h]”h×)�”}”(hŒ'ENOSYS cd drive not audio-capable.”h]”hŒ'ENOSYS cd drive not audio-capable.”…”�”}”(hjFh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M˜hjBubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj?ubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´M˜hj<ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj*ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MšhjÉubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hjŽubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj|ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mšhj h²hubj )�”}”(hX«CDROMSUBCHNL Read subchannel data (struct cdrom_subchnl) usage:: struct cdrom_subchnl q; ioctl(fd, CDROMSUBCHNL, &q); inputs: cdrom_subchnl structure outputs: cdrom_subchnl structure error return: - ENOSYS cd drive not audio-capable. - EINVAL format not CDROM_MSF or CDROM_LBA notes: - Format is converted to CDROM_MSF or CDROM_LBA as per user request on return ”h]”(j )�”}”(hŒ CDROMSUBCHNL”h]”hŒ CDROMSUBCHNL”…”�”}”(hj‚h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M¸hj~ubj% )�”}”(hhh]”(h×)�”}”(hŒRead subchannel data”h]”hŒRead subchannel data”…”�”}”(hj“h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M�hj�ubh×)�”}”(hŒ(struct cdrom_subchnl)”h]”hŒ(struct cdrom_subchnl)”…”�”}”(hj¡h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MŸhj�ubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hj¯h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M¢hj�ubjF )�”}”(hŒ5struct cdrom_subchnl q; ioctl(fd, CDROMSUBCHNL, &q);”h]”hŒ5struct cdrom_subchnl q; ioctl(fd, CDROMSUBCHNL, &q);”…”�”}”hj½sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´M¤hj�ubj )�”}”(hhh]”(j )�”}”(hŒ!inputs: cdrom_subchnl structure ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hjÒh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MªhjÎubj% )�”}”(hhh]”h×)�”}”(hŒcdrom_subchnl structure”h]”hŒcdrom_subchnl structure”…”�”}”(hjãh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M©hjàubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjÎubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MªhjËubj )�”}”(hŒ"outputs: cdrom_subchnl structure ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M®hjýubj% )�”}”(hhh]”h×)�”}”(hŒcdrom_subchnl structure”h]”hŒcdrom_subchnl structure”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M­hjubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjýubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M®hjËubj )�”}”(hŒherror return: - ENOSYS cd drive not audio-capable. - EINVAL format not CDROM_MSF or CDROM_LBA ”h]”(j )�”}”(hŒ error return:”h]”hŒ error return:”…”�”}”(hj0h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M²hj,ubj% )�”}”(hhh]”hÌ)�”}”(hhh]”(hÑ)�”}”(hŒ'ENOSYS cd drive not audio-capable.”h]”h×)�”}”(hjFh]”hŒ'ENOSYS cd drive not audio-capable.”…”�”}”(hjHh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M±hjDubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjAubhÑ)�”}”(hŒ.EINVAL format not CDROM_MSF or CDROM_LBA ”h]”h×)�”}”(hŒ-EINVAL format not CDROM_MSF or CDROM_LBA”h]”hŒ-EINVAL format not CDROM_MSF or CDROM_LBA”…”�”}”(hj_h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M²hj[ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjAubeh}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´M±hj>ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj,ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M²hjËubj )�”}”(hŒYnotes: - Format is converted to CDROM_MSF or CDROM_LBA as per user request on return ”h]”(j )�”}”(hŒnotes:”h]”hŒnotes:”…”�”}”(hj‰h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M¸hj…ubj% )�”}”(hhh]”hÌ)�”}”(hhh]”hÑ)�”}”(hŒNFormat is converted to CDROM_MSF or CDROM_LBA as per user request on return ”h]”h×)�”}”(hŒKFormat is converted to CDROM_MSF or CDROM_LBA as per user request on return”h]”hŒKFormat is converted to CDROM_MSF or CDROM_LBA as per user request on return”…”�”}”(hj¡h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mµhj�ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjšubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´Mµhj—ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj…ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M¸hjËubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hj�ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj~ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M¸hj h²hubj )�”}”(hX‘CDROMREADRAW read data in raw mode (2352 Bytes) (struct cdrom_read) usage:: union { struct cdrom_msf msf; /* input */ char buffer[CD_FRAMESIZE_RAW]; /* return */ } arg; ioctl(fd, CDROMREADRAW, &arg); inputs: cdrom_msf structure indicating an address to read. Only the start values are significant. outputs: Data written to address provided by user. error return: - EINVAL address less than 0, or msf less than 0:2:0 - ENOMEM out of memory notes: - As of 2.6.8.1, comments in indicate that this ioctl accepts a cdrom_read structure, but actual source code reads a cdrom_msf structure and writes a buffer of data to the same address. - MSF values are converted to LBA values via this formula:: lba = (((m * CD_SECS) + s) * CD_FRAMES + f) - CD_MSF_OFFSET; ”h]”(j )�”}”(hŒ CDROMREADRAW”h]”hŒ CDROMREADRAW”…”�”}”(hjÝh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MàhjÙubj% )�”}”(hhh]”(h×)�”}”(hŒ"read data in raw mode (2352 Bytes)”h]”hŒ"read data in raw mode (2352 Bytes)”…”�”}”(hjîh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M»hjëubh×)�”}”(hŒ(struct cdrom_read)”h]”hŒ(struct cdrom_read)”…”�”}”(hjüh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M½hjëubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M¿hjëubjF )�”}”(hŒ“union { struct cdrom_msf msf; /* input */ char buffer[CD_FRAMESIZE_RAW]; /* return */ } arg; ioctl(fd, CDROMREADRAW, &arg);”h]”hŒ“union { struct cdrom_msf msf; /* input */ char buffer[CD_FRAMESIZE_RAW]; /* return */ } arg; ioctl(fd, CDROMREADRAW, &arg);”…”�”}”hjsbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´MÁhjëubj )�”}”(hhh]”(j )�”}”(hŒcinputs: cdrom_msf structure indicating an address to read. Only the start values are significant. ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hj-h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MËhj)ubj% )�”}”(hhh]”(h×)�”}”(hŒ2cdrom_msf structure indicating an address to read.”h]”hŒ2cdrom_msf structure indicating an address to read.”…”�”}”(hj>h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MÉhj;ubh×)�”}”(hŒ&Only the start values are significant.”h]”hŒ&Only the start values are significant.”…”�”}”(hjLh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MËhj;ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj)ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MËhj&ubj )�”}”(hŒ4outputs: Data written to address provided by user. ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hjjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÏhjfubj% )�”}”(hhh]”h×)�”}”(hŒ)Data written to address provided by user.”h]”hŒ)Data written to address provided by user.”…”�”}”(hj{h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MÎhjxubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjfubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÏhj&ubj )�”}”(hŒderror return: - EINVAL address less than 0, or msf less than 0:2:0 - ENOMEM out of memory ”h]”(j )�”}”(hŒ error return:”h]”hŒ error return:”…”�”}”(hj™h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÓhj•ubj% )�”}”(hhh]”hÌ)�”}”(hhh]”(hÑ)�”}”(hŒ7EINVAL address less than 0, or msf less than 0:2:0”h]”h×)�”}”(hj¯h]”hŒ7EINVAL address less than 0, or msf less than 0:2:0”…”�”}”(hj±h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MÒhj­ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjªubhÑ)�”}”(hŒENOMEM out of memory ”h]”h×)�”}”(hŒENOMEM out of memory”h]”hŒENOMEM out of memory”…”�”}”(hjÈh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MÓhjÄubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjªubeh}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´MÒhj§ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj•ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÓhj&ubj )�”}”(hXYnotes: - As of 2.6.8.1, comments in indicate that this ioctl accepts a cdrom_read structure, but actual source code reads a cdrom_msf structure and writes a buffer of data to the same address. - MSF values are converted to LBA values via this formula:: lba = (((m * CD_SECS) + s) * CD_FRAMES + f) - CD_MSF_OFFSET; ”h]”(j )�”}”(hŒnotes:”h]”hŒnotes:”…”�”}”(hjòh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Màhjîubj% )�”}”(hhh]”hÌ)�”}”(hhh]”(hÑ)�”}”(hŒÈAs of 2.6.8.1, comments in indicate that this ioctl accepts a cdrom_read structure, but actual source code reads a cdrom_msf structure and writes a buffer of data to the same address. ”h]”h×)�”}”(hŒÇAs of 2.6.8.1, comments in indicate that this ioctl accepts a cdrom_read structure, but actual source code reads a cdrom_msf structure and writes a buffer of data to the same address.”h]”hŒÇAs of 2.6.8.1, comments in indicate that this ioctl accepts a cdrom_read structure, but actual source code reads a cdrom_msf structure and writes a buffer of data to the same address.”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MÖhjubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjubhÑ)�”}”(hŒ}MSF values are converted to LBA values via this formula:: lba = (((m * CD_SECS) + s) * CD_FRAMES + f) - CD_MSF_OFFSET; ”h]”(h×)�”}”(hŒ9MSF values are converted to LBA values via this formula::”h]”hŒ8MSF values are converted to LBA values via this formula:”…”�”}”(hj"h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MÛhjubjF )�”}”(hŒhjt!ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjq!ubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´M>hjn!ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj\!ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M?hjã ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hj¨ ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj– ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M?hj h²hubj )�”}”(hX�CDROM_GET_MCN Obtain the "Universal Product Code" if available (struct cdrom_mcn) usage:: struct cdrom_mcn mcn; ioctl(fd, CDROM_GET_MCN, &mcn); inputs: none outputs: Universal Product Code error return: - ENOSYS Drive is not capable of reading MCN data. notes: - Source code comments state:: The following function is implemented, although very few audio discs give Universal Product Code information, which should just be the Medium Catalog Number on the box. Note, that the way the code is written on the CD is /not/ uniform across all discs! ”h]”(j )�”}”(hŒ CDROM_GET_MCN”h]”hŒ CDROM_GET_MCN”…”�”}”(hj´!h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mchj°!ubj% )�”}”(hhh]”(h×)�”}”(hŒ0Obtain the "Universal Product Code" if available”h]”hŒ4Obtain the “Universal Product Codeâ€� if available”…”�”}”(hjÅ!h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MBhjÂ!ubh×)�”}”(hŒ(struct cdrom_mcn)”h]”hŒ(struct cdrom_mcn)”…”�”}”(hjÓ!h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MEhjÂ!ubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hjá!h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MHhjÂ!ubjF )�”}”(hŒ6struct cdrom_mcn mcn; ioctl(fd, CDROM_GET_MCN, &mcn);”h]”hŒ6struct cdrom_mcn mcn; ioctl(fd, CDROM_GET_MCN, &mcn);”…”�”}”hjï!sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´MJhjÂ!ubj )�”}”(hhh]”(j )�”}”(hŒinputs: none ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hj"h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MPhj"ubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hj"h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MOhj"ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj"ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MPhjý!ubj )�”}”(hŒ!outputs: Universal Product Code ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hj3"h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MThj/"ubj% )�”}”(hhh]”h×)�”}”(hŒUniversal Product Code”h]”hŒUniversal Product Code”…”�”}”(hjD"h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MShjA"ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj/"ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MThjý!ubj )�”}”(hŒFerror return: - ENOSYS Drive is not capable of reading MCN data. ”h]”(j )�”}”(hŒ error return:”h]”hŒ error return:”…”�”}”(hjb"h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MWhj^"ubj% )�”}”(hhh]”hÌ)�”}”(hhh]”hÑ)�”}”(hŒ6ENOSYS Drive is not capable of reading MCN data. ”h]”h×)�”}”(hŒ5ENOSYS Drive is not capable of reading MCN data.”h]”hŒ5ENOSYS Drive is not capable of reading MCN data.”…”�”}”(hjz"h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MWhjv"ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjs"ubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´MWhjp"ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj^"ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MWhjý!ubj )�”}”(hX<notes: - Source code comments state:: The following function is implemented, although very few audio discs give Universal Product Code information, which should just be the Medium Catalog Number on the box. Note, that the way the code is written on the CD is /not/ uniform across all discs! ”h]”(j )�”}”(hŒnotes:”h]”hŒnotes:”…”�”}”(hj¤"h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mchj "ubj% )�”}”(hhh]”hÌ)�”}”(hhh]”hÑ)�”}”(hX)Source code comments state:: The following function is implemented, although very few audio discs give Universal Product Code information, which should just be the Medium Catalog Number on the box. Note, that the way the code is written on the CD is /not/ uniform across all discs! ”h]”(h×)�”}”(hŒSource code comments state::”h]”hŒSource code comments state:”…”�”}”(hj¼"h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MZhj¸"ubjF )�”}”(hŒýThe following function is implemented, although very few audio discs give Universal Product Code information, which should just be the Medium Catalog Number on the box. Note, that the way the code is written on the CD is /not/ uniform across all discs!”h]”hŒýThe following function is implemented, although very few audio discs give Universal Product Code information, which should just be the Medium Catalog Number on the box. Note, that the way the code is written on the CD is /not/ uniform across all discs!”…”�”}”hjÊ"sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´M\hj¸"ubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjµ"ubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´MZhj²"ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj "ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mchjý!ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hjÂ!ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj°!ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mchj h²hubj )�”}”(hŒMCDROM_GET_UPC CDROM_GET_MCN (deprecated) Not implemented, as of 2.6.8.1 ”h]”(j )�”}”(hŒ CDROM_GET_UPC”h]”hŒ CDROM_GET_UPC”…”�”}”(hj#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mkhj#ubj% )�”}”(hhh]”(h×)�”}”(hŒCDROM_GET_MCN (deprecated)”h]”hŒCDROM_GET_MCN (deprecated)”…”�”}”(hj#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mfhj#ubh×)�”}”(hŒNot implemented, as of 2.6.8.1”h]”hŒNot implemented, as of 2.6.8.1”…”�”}”(hj%#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mihj#ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj#ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mkhj h²hubj )�”}”(hŒóCDROMRESET hard-reset the drive usage:: ioctl(fd, CDROMRESET, 0); inputs: none outputs: none error return: - EACCES Access denied: requires CAP_SYS_ADMIN - ENOSYS Drive is not capable of resetting. ”h]”(j )�”}”(hŒ CDROMRESET”h]”hŒ CDROMRESET”…”�”}”(hjC#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mƒhj?#ubj% )�”}”(hhh]”(h×)�”}”(hŒhard-reset the drive”h]”hŒhard-reset the drive”…”�”}”(hjT#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MnhjQ#ubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hjb#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MqhjQ#ubjF )�”}”(hŒioctl(fd, CDROMRESET, 0);”h]”hŒioctl(fd, CDROMRESET, 0);”…”�”}”hjp#sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´MshjQ#ubj )�”}”(hhh]”(j )�”}”(hŒinputs: none ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hj…#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mxhj�#ubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hj–#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mwhj“#ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj�#ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mxhj~#ubj )�”}”(hŒoutputs: none ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hj´#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M|hj°#ubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hjÅ#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M{hjÂ#ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj°#ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M|hj~#ubj )�”}”(hŒwerror return: - EACCES Access denied: requires CAP_SYS_ADMIN - ENOSYS Drive is not capable of resetting. ”h]”(j )�”}”(hŒ error return:”h]”hŒ error return:”…”�”}”(hjã#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mƒhjß#ubj% )�”}”(hhh]”hÌ)�”}”(hhh]”(hÑ)�”}”(hŒ2EACCES Access denied: requires CAP_SYS_ADMIN”h]”h×)�”}”(hjù#h]”hŒ2EACCES Access denied: requires CAP_SYS_ADMIN”…”�”}”(hjû#h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mhj÷#ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjô#ubhÑ)�”}”(hŒ2ENOSYS Drive is not capable of resetting. ”h]”h×)�”}”(hŒ.ENOSYS Drive is not capable of resetting.”h]”hŒ.ENOSYS Drive is not capable of resetting.”…”�”}”(hj$h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M€hj$ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjô#ubeh}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´Mhjñ#ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjß#ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mƒhj~#ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hjQ#ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj?#ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mƒhj h²hubj )�”}”(hŒõCDROMREADCOOKED read data in cooked mode usage:: u8 buffer[CD_FRAMESIZE] ioctl(fd, CDROMREADCOOKED, buffer); inputs: none outputs: 2048 bytes of data, "cooked" mode. notes: Not implemented on all drives. ”h]”(j )�”}”(hŒCDROMREADCOOKED”h]”hŒCDROMREADCOOKED”…”�”}”(hjN$h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MœhjJ$ubj% )�”}”(hhh]”(h×)�”}”(hŒread data in cooked mode”h]”hŒread data in cooked mode”…”�”}”(hj_$h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M†hj\$ubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hjm$h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M‰hj\$ubjF )�”}”(hŒ(ubj% )�”}”(hhh]”(h×)�”}”(hŒSet behavior options”h]”hŒSet behavior options”…”�”}”(hjS(h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MühjP(ubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hja(h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MÿhjP(ubjF )�”}”(hŒ4int options; ioctl(fd, CDROM_SET_OPTIONS, options);”h]”hŒ4int options; ioctl(fd, CDROM_SET_OPTIONS, options);”…”�”}”hjo(sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´MhjP(ubj )�”}”(hhh]”(j )�”}”(hX inputs: New values for drive options. The logical 'or' of: ============== ================================== CDO_AUTO_CLOSE close tray on first open(2) CDO_AUTO_EJECT open tray on last release CDO_USE_FFLAGS use O_NONBLOCK information on open CDO_LOCK lock tray on open files CDO_CHECK_TYPE check type on open for data ============== ================================== ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hj„(h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhj€(ubj% )�”}”(hhh]”(j5)�”}”(hŒ4New values for drive options. The logical 'or' of: ”h]”h×)�”}”(hŒ3New values for drive options. The logical 'or' of:”h]”hŒ7New values for drive options. The logical ‘or’ of:”…”�”}”(hj™(h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mhj•(ubah}”(h]”h ]”h"]”h$]”h&]”uh1j4h³hÊh´Mhj’(ubj;)�”}”(hhh]”j@)�”}”(hhh]”(jE)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œcolwidth”Kuh1jDhj°(ubjE)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œcolwidth”K"uh1jDhj°(ubj[)�”}”(hhh]”(j`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDO_AUTO_CLOSE”h]”hŒCDO_AUTO_CLOSE”…”�”}”(hjÐ(h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M hjÍ(ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjÊ(ubje)�”}”(hhh]”h×)�”}”(hŒclose tray on first open(2)”h]”hŒclose tray on first open(2)”…”�”}”(hjç(h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M hjä(ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjÊ(ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hjÇ(ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDO_AUTO_EJECT”h]”hŒCDO_AUTO_EJECT”…”�”}”(hj)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M hj)ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj)ubje)�”}”(hhh]”h×)�”}”(hŒopen tray on last release”h]”hŒopen tray on last release”…”�”}”(hj)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M hj)ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj)ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hjÇ(ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDO_USE_FFLAGS”h]”hŒCDO_USE_FFLAGS”…”�”}”(hj>)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M hj;)ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj8)ubje)�”}”(hhh]”h×)�”}”(hŒ"use O_NONBLOCK information on open”h]”hŒ"use O_NONBLOCK information on open”…”�”}”(hjU)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M hjR)ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj8)ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hjÇ(ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDO_LOCK”h]”hŒCDO_LOCK”…”�”}”(hju)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M hjr)ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjo)ubje)�”}”(hhh]”h×)�”}”(hŒlock tray on open files”h]”hŒlock tray on open files”…”�”}”(hjŒ)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M hj‰)ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjo)ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hjÇ(ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDO_CHECK_TYPE”h]”hŒCDO_CHECK_TYPE”…”�”}”(hj¬)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M hj©)ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj¦)ubje)�”}”(hhh]”h×)�”}”(hŒcheck type on open for data”h]”hŒcheck type on open for data”…”�”}”(hjÃ)h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M hjÀ)ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj¦)ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hjÇ(ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jZhj°(ubeh}”(h]”h ]”h"]”h$]”h&]”Œcols”Kuh1j?hj­(ubah}”(h]”h ]”h"]”h$]”h&]”uh1j:hj’(ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj€(ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhj}(ubj )�”}”(hŒaoutputs: Returns the resulting options settings in the ioctl return value. Returns -1 on error. ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hj*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhjü)ubj% )�”}”(hhh]”h×)�”}”(hŒWReturns the resulting options settings in the ioctl return value. Returns -1 on error.”h]”hŒWReturns the resulting options settings in the ioctl return value. Returns -1 on error.”…”�”}”(hj*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mhj*ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjü)ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhj}(ubj )�”}”(hŒJerror return: - ENOSYS selected option(s) not supported by drive. ”h]”(j )�”}”(hŒ error return:”h]”hŒ error return:”…”�”}”(hj/*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhj+*ubj% )�”}”(hhh]”hÌ)�”}”(hhh]”hÑ)�”}”(hŒ:ENOSYS selected option(s) not supported by drive. ”h]”h×)�”}”(hŒ6ENOSYS selected option(s) not supported by drive.”h]”hŒ6ENOSYS selected option(s) not supported by drive.”…”�”}”(hjG*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MhjC*ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj@*ubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´Mhj=*ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj+*ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhj}(ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hjP(ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj>(ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhj h²hubj )�”}”(hŒwCDROM_CLEAR_OPTIONS Clear behavior options Same as CDROM_SET_OPTIONS, except that selected options are turned off. ”h]”(j )�”}”(hŒCDROM_CLEAR_OPTIONS”h]”hŒCDROM_CLEAR_OPTIONS”…”�”}”(hjƒ*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M!hj*ubj% )�”}”(hhh]”(h×)�”}”(hŒClear behavior options”h]”hŒClear behavior options”…”�”}”(hj”*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mhj‘*ubh×)�”}”(hŒGSame as CDROM_SET_OPTIONS, except that selected options are turned off.”h]”hŒGSame as CDROM_SET_OPTIONS, except that selected options are turned off.”…”�”}”(hj¢*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mhj‘*ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj*ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M!hj h²hubj )�”}”(hŒíCDROM_SELECT_SPEED Set the CD-ROM speed usage:: int speed; ioctl(fd, CDROM_SELECT_SPEED, speed); inputs: New drive speed. outputs: none error return: - ENOSYS speed selection not supported by drive. ”h]”(j )�”}”(hŒCDROM_SELECT_SPEED”h]”hŒCDROM_SELECT_SPEED”…”�”}”(hjÀ*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M8hj¼*ubj% )�”}”(hhh]”(h×)�”}”(hŒSet the CD-ROM speed”h]”hŒSet the CD-ROM speed”…”�”}”(hjÑ*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M$hjÎ*ubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hjß*h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M'hjÎ*ubjF )�”}”(hŒ1int speed; ioctl(fd, CDROM_SELECT_SPEED, speed);”h]”hŒ1int speed; ioctl(fd, CDROM_SELECT_SPEED, speed);”…”�”}”hjí*sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´M)hjÎ*ubj )�”}”(hhh]”(j )�”}”(hŒinputs: New drive speed. ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hj+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M/hjþ*ubj% )�”}”(hhh]”h×)�”}”(hŒNew drive speed.”h]”hŒNew drive speed.”…”�”}”(hj+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M.hj+ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjþ*ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M/hjû*ubj )�”}”(hŒoutputs: none ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hj1+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M3hj-+ubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hjB+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M2hj?+ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj-+ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M3hjû*ubj )�”}”(hŒFerror return: - ENOSYS speed selection not supported by drive. ”h]”(j )�”}”(hŒ error return:”h]”hŒ error return:”…”�”}”(hj`+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M8hj\+ubj% )�”}”(hhh]”hÌ)�”}”(hhh]”hÑ)�”}”(hŒ6ENOSYS speed selection not supported by drive. ”h]”h×)�”}”(hŒ3ENOSYS speed selection not supported by drive.”h]”hŒ3ENOSYS speed selection not supported by drive.”…”�”}”(hjx+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M6hjt+ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjq+ubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´M6hjn+ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj\+ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M8hjû*ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hjÎ*ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj¼*ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M8hj h²hubj )�”}”(hŒöCDROM_SELECT_DISC Select disc (for juke-boxes) usage:: int disk; ioctl(fd, CDROM_SELECT_DISC, disk); inputs: Disk to load into drive. outputs: none error return: - EINVAL Disk number beyond capacity of drive ”h]”(j )�”}”(hŒCDROM_SELECT_DISC”h]”hŒCDROM_SELECT_DISC”…”�”}”(hj´+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MOhj°+ubj% )�”}”(hhh]”(h×)�”}”(hŒSelect disc (for juke-boxes)”h]”hŒSelect disc (for juke-boxes)”…”�”}”(hjÅ+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M;hjÂ+ubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hjÓ+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M>hjÂ+ubjF )�”}”(hŒ.int disk; ioctl(fd, CDROM_SELECT_DISC, disk);”h]”hŒ.int disk; ioctl(fd, CDROM_SELECT_DISC, disk);”…”�”}”hjá+sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´M@hjÂ+ubj )�”}”(hhh]”(j )�”}”(hŒ"inputs: Disk to load into drive. ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hjö+h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MFhjò+ubj% )�”}”(hhh]”h×)�”}”(hŒDisk to load into drive.”h]”hŒDisk to load into drive.”…”�”}”(hj,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MEhj,ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjò+ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MFhjï+ubj )�”}”(hŒoutputs: none ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hj%,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MJhj!,ubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hj6,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MIhj3,ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj!,ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MJhjï+ubj )�”}”(hŒCerror return: - EINVAL Disk number beyond capacity of drive ”h]”(j )�”}”(hŒ error return:”h]”hŒ error return:”…”�”}”(hjT,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MOhjP,ubj% )�”}”(hhh]”hÌ)�”}”(hhh]”hÑ)�”}”(hŒ3EINVAL Disk number beyond capacity of drive ”h]”h×)�”}”(hŒ0EINVAL Disk number beyond capacity of drive”h]”hŒ0EINVAL Disk number beyond capacity of drive”…”�”}”(hjl,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MMhjh,ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhje,ubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´MMhjb,ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjP,ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MOhjï+ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hjÂ+ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj°+ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MOhj h²hubj )�”}”(hXþCDROM_MEDIA_CHANGED Check is media changed usage:: int slot; ioctl(fd, CDROM_MEDIA_CHANGED, slot); inputs: Slot number to be tested, always zero except for jukeboxes. May also be special values CDSL_NONE or CDSL_CURRENT outputs: Ioctl return value is 0 or 1 depending on whether the media has been changed, or -1 on error. error returns: - ENOSYS Drive can't detect media change - EINVAL Slot number beyond capacity of drive - ENOMEM Out of memory ”h]”(j )�”}”(hŒCDROM_MEDIA_CHANGED”h]”hŒCDROM_MEDIA_CHANGED”…”�”}”(hj¨,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mjhj¤,ubj% )�”}”(hhh]”(h×)�”}”(hŒCheck is media changed”h]”hŒCheck is media changed”…”�”}”(hj¹,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MRhj¶,ubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hjÇ,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MUhj¶,ubjF )�”}”(hŒ0int slot; ioctl(fd, CDROM_MEDIA_CHANGED, slot);”h]”hŒ0int slot; ioctl(fd, CDROM_MEDIA_CHANGED, slot);”…”�”}”hjÕ,sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´MWhj¶,ubj )�”}”(hhh]”(j )�”}”(hŒzinputs: Slot number to be tested, always zero except for jukeboxes. May also be special values CDSL_NONE or CDSL_CURRENT ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hjê,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M^hjæ,ubj% )�”}”(hhh]”(h×)�”}”(hŒ;Slot number to be tested, always zero except for jukeboxes.”h]”hŒ;Slot number to be tested, always zero except for jukeboxes.”…”�”}”(hjû,h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M\hjø,ubh×)�”}”(hŒ4May also be special values CDSL_NONE or CDSL_CURRENT”h]”hŒ4May also be special values CDSL_NONE or CDSL_CURRENT”…”�”}”(hj -h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M^hjø,ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjæ,ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M^hjã,ubj )�”}”(hŒnoutputs: Ioctl return value is 0 or 1 depending on whether the media has been changed, or -1 on error. ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hj'-h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mchj#-ubj% )�”}”(hhh]”(j5)�”}”(hŒ: =================== ========================== CDS_NO_INFO Information not available. CDS_NO_DISC CDS_TRAY_OPEN CDS_DRIVE_NOT_READY CDS_DISC_OK -1 error =================== ========================== error returns: - ENOSYS Drive can't detect drive status - EINVAL Slot number beyond capacity of drive - ENOMEM Out of memory ”•Ëáh]”(j )�”}”(hŒCDROM_DRIVE_STATUS”h]”hŒCDROM_DRIVE_STATUS”…”�”}”(hjð-h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M�hjì-ubj% )�”}”(hhh]”(h×)�”}”(hŒGet tray position, etc.”h]”hŒGet tray position, etc.”…”�”}”(hj.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mmhjþ-ubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hj.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mphjþ-ubjF )�”}”(hŒ/int slot; ioctl(fd, CDROM_DRIVE_STATUS, slot);”h]”hŒ/int slot; ioctl(fd, CDROM_DRIVE_STATUS, slot);”…”�”}”hj.sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´Mrhjþ-ubj )�”}”(hhh]”(j )�”}”(hŒzinputs: Slot number to be tested, always zero except for jukeboxes. May also be special values CDSL_NONE or CDSL_CURRENT ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hj2.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Myhj..ubj% )�”}”(hhh]”(h×)�”}”(hŒ;Slot number to be tested, always zero except for jukeboxes.”h]”hŒ;Slot number to be tested, always zero except for jukeboxes.”…”�”}”(hjC.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mwhj@.ubh×)�”}”(hŒ4May also be special values CDSL_NONE or CDSL_CURRENT”h]”hŒ4May also be special values CDSL_NONE or CDSL_CURRENT”…”�”}”(hjQ.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Myhj@.ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj..ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Myhj+.ubj )�”}”(hXOoutputs: Ioctl return value will be one of the following values from : =================== ========================== CDS_NO_INFO Information not available. CDS_NO_DISC CDS_TRAY_OPEN CDS_DRIVE_NOT_READY CDS_DISC_OK -1 error =================== ========================== ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hjo.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M‡hjk.ubj% )�”}”(hhh]”(j5)�”}”(hŒ7Ioctl return value will be one of the following values ”h]”h×)�”}”(hŒ6Ioctl return value will be one of the following values”h]”hŒ6Ioctl return value will be one of the following values”…”�”}”(hj„.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M|hj€.ubah}”(h]”h ]”h"]”h$]”h&]”uh1j4h³hÊh´M|hj}.ubh×)�”}”(hŒfrom :”h]”hŒfrom :”…”�”}”(hj˜.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M~hj}.ubj5)�”}”(hŒá=================== ========================== CDS_NO_INFO Information not available. CDS_NO_DISC CDS_TRAY_OPEN CDS_DRIVE_NOT_READY CDS_DISC_OK -1 error =================== ========================== ”h]”j;)�”}”(hhh]”j@)�”}”(hhh]”(jE)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œcolwidth”Kuh1jDhj­.ubjE)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œcolwidth”Kuh1jDhj­.ubj[)�”}”(hhh]”(j`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒ CDS_NO_INFO”h]”hŒ CDS_NO_INFO”…”�”}”(hjÍ.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M�hjÊ.ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjÇ.ubje)�”}”(hhh]”h×)�”}”(hŒInformation not available.”h]”hŒInformation not available.”…”�”}”(hjä.h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M�hjá.ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjÇ.ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hjÄ.ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒ CDS_NO_DISC”h]”hŒ CDS_NO_DISC”…”�”}”(hj/h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M‚hj/ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjþ.ubje)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”uh1jdhjþ.ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hjÄ.ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒ CDS_TRAY_OPEN”h]”hŒ CDS_TRAY_OPEN”…”�”}”(hj-/h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mƒhj*/ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj'/ubje)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”uh1jdhj'/ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hjÄ.ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒCDS_DRIVE_NOT_READY”h]”hŒCDS_DRIVE_NOT_READY”…”�”}”(hjV/h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M„hjS/ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjP/ubje)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”uh1jdhjP/ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hjÄ.ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒ CDS_DISC_OK”h]”hŒ CDS_DISC_OK”…”�”}”(hj/h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M…hj|/ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjy/ubje)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”uh1jdhjy/ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hjÄ.ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒ-1”h]”hŒ-1”…”�”}”(hj¨/h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M†hj¥/ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj¢/ubje)�”}”(hhh]”h×)�”}”(hŒerror”h]”hŒerror”…”�”}”(hj¿/h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M†hj¼/ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj¢/ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hjÄ.ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jZhj­.ubeh}”(h]”h ]”h"]”h$]”h&]”Œcols”Kuh1j?hjª.ubah}”(h]”h ]”h"]”h$]”h&]”uh1j:hj¦.ubah}”(h]”h ]”h"]”h$]”h&]”uh1j4h³hÊh´M€hj}.ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjk.ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M‡hj+.ubj )�”}”(hŒ�error returns: - ENOSYS Drive can't detect drive status - EINVAL Slot number beyond capacity of drive - ENOMEM Out of memory ”h]”(j )�”}”(hŒerror returns:”h]”hŒerror returns:”…”�”}”(hj0h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M�hjþ/ubj% )�”}”(hhh]”hÌ)�”}”(hhh]”(hÑ)�”}”(hŒ+ENOSYS Drive can't detect drive status”h]”h×)�”}”(hj0h]”hŒ-ENOSYS Drive can’t detect drive status”…”�”}”(hj0h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MŠhj0ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj0ubhÑ)�”}”(hŒ0EINVAL Slot number beyond capacity of drive”h]”h×)�”}”(hj/0h]”hŒ0EINVAL Slot number beyond capacity of drive”…”�”}”(hj10h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M‹hj-0ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj0ubhÑ)�”}”(hŒENOMEM Out of memory ”h]”h×)�”}”(hŒENOMEM Out of memory”h]”hŒENOMEM Out of memory”…”�”}”(hjH0h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MŒhjD0ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj0ubeh}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´MŠhj0ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjþ/ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M�hj+.ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hjþ-ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjì-ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M�hj h²hubj )�”}”(hX—CDROM_DISC_STATUS Get disc type, etc. usage:: ioctl(fd, CDROM_DISC_STATUS, 0); inputs: none outputs: Ioctl return value will be one of the following values from : - CDS_NO_INFO - CDS_AUDIO - CDS_MIXED - CDS_XA_2_2 - CDS_XA_2_1 - CDS_DATA_1 error returns: none at present notes: - Source code comments state:: Ok, this is where problems start. The current interface for the CDROM_DISC_STATUS ioctl is flawed. It makes the false assumption that CDs are all CDS_DATA_1 or all CDS_AUDIO, etc. Unfortunately, while this is often the case, it is also very common for CDs to have some tracks with data, and some tracks with audio. Just because I feel like it, I declare the following to be the best way to cope. If the CD has ANY data tracks on it, it will be returned as a data CD. If it has any XA tracks, I will return it as that. Now I could simplify this interface by combining these returns with the above, but this more clearly demonstrates the problem with the current interface. Too bad this wasn't designed to use bitmasks... -Erik Well, now we have the option CDS_MIXED: a mixed-type CD. User level programmers might feel the ioctl is not very useful. ---david ”h]”(j )�”}”(hŒCDROM_DISC_STATUS”h]”hŒCDROM_DISC_STATUS”…”�”}”(hj„0h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÅhj€0ubj% )�”}”(hhh]”(h×)�”}”(hŒGet disc type, etc.”h]”hŒGet disc type, etc.”…”�”}”(hj•0h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M’hj’0ubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hj£0h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M•hj’0ubjF )�”}”(hŒ ioctl(fd, CDROM_DISC_STATUS, 0);”h]”hŒ ioctl(fd, CDROM_DISC_STATUS, 0);”…”�”}”hj±0sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´M—hj’0ubj )�”}”(hhh]”(j )�”}”(hŒinputs: none ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hjÆ0h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MœhjÂ0ubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hj×0h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M›hjÔ0ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjÂ0ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mœhj¿0ubj )�”}”(hŒ·outputs: Ioctl return value will be one of the following values from : - CDS_NO_INFO - CDS_AUDIO - CDS_MIXED - CDS_XA_2_2 - CDS_XA_2_1 - CDS_DATA_1 ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hjõ0h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M¨hjñ0ubj% )�”}”(hhh]”(j5)�”}”(hŒ7Ioctl return value will be one of the following values ”h]”h×)�”}”(hŒ6Ioctl return value will be one of the following values”h]”hŒ6Ioctl return value will be one of the following values”…”�”}”(hj 1h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MŸhj1ubah}”(h]”h ]”h"]”h$]”h&]”uh1j4h³hÊh´MŸhj1ubh×)�”}”(hŒfrom :”h]”hŒfrom :”…”�”}”(hj1h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M¡hj1ubj5)�”}”(hŒM- CDS_NO_INFO - CDS_AUDIO - CDS_MIXED - CDS_XA_2_2 - CDS_XA_2_1 - CDS_DATA_1 ”h]”hÌ)�”}”(hhh]”(hÑ)�”}”(hŒ CDS_NO_INFO”h]”h×)�”}”(hj51h]”hŒ CDS_NO_INFO”…”�”}”(hj71h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M£hj31ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj01ubhÑ)�”}”(hŒ CDS_AUDIO”h]”h×)�”}”(hjL1h]”hŒ CDS_AUDIO”…”�”}”(hjN1h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M¤hjJ1ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj01ubhÑ)�”}”(hŒ CDS_MIXED”h]”h×)�”}”(hjc1h]”hŒ CDS_MIXED”…”�”}”(hje1h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M¥hja1ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj01ubhÑ)�”}”(hŒ CDS_XA_2_2”h]”h×)�”}”(hjz1h]”hŒ CDS_XA_2_2”…”�”}”(hj|1h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M¦hjx1ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj01ubhÑ)�”}”(hŒ CDS_XA_2_1”h]”h×)�”}”(hj‘1h]”hŒ CDS_XA_2_1”…”�”}”(hj“1h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M§hj�1ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj01ubhÑ)�”}”(hŒ CDS_DATA_1 ”h]”h×)�”}”(hŒ CDS_DATA_1”h]”hŒ CDS_DATA_1”…”�”}”(hjª1h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M¨hj¦1ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj01ubeh}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´M£hj,1ubah}”(h]”h ]”h"]”h$]”h&]”uh1j4h³hÊh´M£hj1ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjñ0ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M¨hj¿0ubj )�”}”(hŒerror returns: none at present ”h]”(j )�”}”(hŒerror returns:”h]”hŒerror returns:”…”�”}”(hjÚ1h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M«hjÖ1ubj% )�”}”(hhh]”h×)�”}”(hŒnone at present”h]”hŒnone at present”…”�”}”(hjë1h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M«hjè1ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjÖ1ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M«hj¿0ubj )�”}”(hXònotes: - Source code comments state:: Ok, this is where problems start. The current interface for the CDROM_DISC_STATUS ioctl is flawed. It makes the false assumption that CDs are all CDS_DATA_1 or all CDS_AUDIO, etc. Unfortunately, while this is often the case, it is also very common for CDs to have some tracks with data, and some tracks with audio. Just because I feel like it, I declare the following to be the best way to cope. If the CD has ANY data tracks on it, it will be returned as a data CD. If it has any XA tracks, I will return it as that. Now I could simplify this interface by combining these returns with the above, but this more clearly demonstrates the problem with the current interface. Too bad this wasn't designed to use bitmasks... -Erik Well, now we have the option CDS_MIXED: a mixed-type CD. User level programmers might feel the ioctl is not very useful. ---david ”h]”(j )�”}”(hŒnotes:”h]”hŒnotes:”…”�”}”(hj 2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÅhj2ubj% )�”}”(hhh]”hÌ)�”}”(hhh]”hÑ)�”}”(hXÇSource code comments state:: Ok, this is where problems start. The current interface for the CDROM_DISC_STATUS ioctl is flawed. It makes the false assumption that CDs are all CDS_DATA_1 or all CDS_AUDIO, etc. Unfortunately, while this is often the case, it is also very common for CDs to have some tracks with data, and some tracks with audio. Just because I feel like it, I declare the following to be the best way to cope. If the CD has ANY data tracks on it, it will be returned as a data CD. If it has any XA tracks, I will return it as that. Now I could simplify this interface by combining these returns with the above, but this more clearly demonstrates the problem with the current interface. Too bad this wasn't designed to use bitmasks... -Erik Well, now we have the option CDS_MIXED: a mixed-type CD. User level programmers might feel the ioctl is not very useful. ---david ”h]”(h×)�”}”(hŒSource code comments state::”h]”hŒSource code comments state:”…”�”}”(hj!2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M®hj2ubjF )�”}”(hX‚Ok, this is where problems start. The current interface for the CDROM_DISC_STATUS ioctl is flawed. It makes the false assumption that CDs are all CDS_DATA_1 or all CDS_AUDIO, etc. Unfortunately, while this is often the case, it is also very common for CDs to have some tracks with data, and some tracks with audio. Just because I feel like it, I declare the following to be the best way to cope. If the CD has ANY data tracks on it, it will be returned as a data CD. If it has any XA tracks, I will return it as that. Now I could simplify this interface by combining these returns with the above, but this more clearly demonstrates the problem with the current interface. Too bad this wasn't designed to use bitmasks... -Erik Well, now we have the option CDS_MIXED: a mixed-type CD. User level programmers might feel the ioctl is not very useful. ---david”h]”hX‚Ok, this is where problems start. The current interface for the CDROM_DISC_STATUS ioctl is flawed. It makes the false assumption that CDs are all CDS_DATA_1 or all CDS_AUDIO, etc. Unfortunately, while this is often the case, it is also very common for CDs to have some tracks with data, and some tracks with audio. Just because I feel like it, I declare the following to be the best way to cope. If the CD has ANY data tracks on it, it will be returned as a data CD. If it has any XA tracks, I will return it as that. Now I could simplify this interface by combining these returns with the above, but this more clearly demonstrates the problem with the current interface. Too bad this wasn't designed to use bitmasks... -Erik Well, now we have the option CDS_MIXED: a mixed-type CD. User level programmers might feel the ioctl is not very useful. ---david”…”�”}”hj/2sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´M±hj2ubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj2ubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´M®hj2ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj2ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÅhj¿0ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hj’0ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj€0ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÅhj h²hubj )�”}”(hXCDROM_CHANGER_NSLOTS Get number of slots usage:: ioctl(fd, CDROM_CHANGER_NSLOTS, 0); inputs: none outputs: The ioctl return value will be the number of slots in a CD changer. Typically 1 for non-multi-disk devices. error returns: none ”h]”(j )�”}”(hŒCDROM_CHANGER_NSLOTS”h]”hŒCDROM_CHANGER_NSLOTS”…”�”}”(hjk2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÛhjg2ubj% )�”}”(hhh]”(h×)�”}”(hŒGet number of slots”h]”hŒGet number of slots”…”�”}”(hj|2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MÈhjy2ubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hjŠ2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MËhjy2ubjF )�”}”(hŒ#ioctl(fd, CDROM_CHANGER_NSLOTS, 0);”h]”hŒ#ioctl(fd, CDROM_CHANGER_NSLOTS, 0);”…”�”}”hj˜2sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´MÍhjy2ubj )�”}”(hhh]”(j )�”}”(hŒinputs: none ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hj­2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÒhj©2ubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hj¾2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MÑhj»2ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj©2ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÒhj¦2ubj )�”}”(hŒvoutputs: The ioctl return value will be the number of slots in a CD changer. Typically 1 for non-multi-disk devices. ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hjÜ2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÖhjØ2ubj% )�”}”(hhh]”h×)�”}”(hŒlThe ioctl return value will be the number of slots in a CD changer. Typically 1 for non-multi-disk devices.”h]”hŒlThe ioctl return value will be the number of slots in a CD changer. Typically 1 for non-multi-disk devices.”…”�”}”(hjí2h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MÕhjê2ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjØ2ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÖhj¦2ubj )�”}”(hŒerror returns: none ”h]”(j )�”}”(hŒerror returns:”h]”hŒerror returns:”…”�”}”(hj 3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÛhj3ubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hj3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MÙhj3ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj3ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÛhj¦2ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hjy2ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjg2ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÛhj h²hubj )�”}”(hXÀCDROM_LOCKDOOR lock or unlock door usage:: int lock; ioctl(fd, CDROM_LOCKDOOR, lock); inputs: Door lock flag, 1=lock, 0=unlock outputs: none error returns: - EDRIVE_CANT_DO_THIS Door lock function not supported. - EBUSY Attempt to unlock when multiple users have the drive open and not CAP_SYS_ADMIN notes: As of 2.6.8.1, the lock flag is a global lock, meaning that all CD drives will be locked or unlocked together. This is probably a bug. The EDRIVE_CANT_DO_THIS value is defined in and is currently (2.6.8.1) the same as EOPNOTSUPP ”h]”(j )�”}”(hŒCDROM_LOCKDOOR”h]”hŒCDROM_LOCKDOOR”…”�”}”(hjL3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MhjH3ubj% )�”}”(hhh]”(h×)�”}”(hŒlock or unlock door”h]”hŒlock or unlock door”…”�”}”(hj]3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MÞhjZ3ubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hjk3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MáhjZ3ubjF )�”}”(hŒ+int lock; ioctl(fd, CDROM_LOCKDOOR, lock);”h]”hŒ+int lock; ioctl(fd, CDROM_LOCKDOOR, lock);”…”�”}”hjy3sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´MãhjZ3ubj )�”}”(hhh]”(j )�”}”(hŒ*inputs: Door lock flag, 1=lock, 0=unlock ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hjŽ3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MéhjŠ3ubj% )�”}”(hhh]”h×)�”}”(hŒ Door lock flag, 1=lock, 0=unlock”h]”hŒ Door lock flag, 1=lock, 0=unlock”…”�”}”(hjŸ3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mèhjœ3ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjŠ3ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Méhj‡3ubj )�”}”(hŒoutputs: none ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hj½3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Míhj¹3ubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hjÎ3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MìhjË3ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj¹3ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Míhj‡3ubj )�”}”(hŒãerror returns: - EDRIVE_CANT_DO_THIS Door lock function not supported. - EBUSY Attempt to unlock when multiple users have the drive open and not CAP_SYS_ADMIN ”h]”(j )�”}”(hŒerror returns:”h]”hŒerror returns:”…”�”}”(hjì3h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Möhjè3ubj% )�”}”(hhh]”hÌ)�”}”(hhh]”(hÑ)�”}”(hŒJEDRIVE_CANT_DO_THIS Door lock function not supported.”h]”(h×)�”}”(hŒEDRIVE_CANT_DO_THIS”h]”hŒEDRIVE_CANT_DO_THIS”…”�”}”(hj4h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mðhj4ubj5)�”}”(hŒ!Door lock function not supported.”h]”h×)�”}”(hj4h]”hŒ!Door lock function not supported.”…”�”}”(hj4h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mòhj4ubah}”(h]”h ]”h"]”h$]”h&]”uh1j4h³hÊh´Mòhj4ubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjý3ubhÑ)�”}”(hŒEBUSY Attempt to unlock when multiple users have the drive open and not CAP_SYS_ADMIN ”h]”(h×)�”}”(hŒEBUSY”h]”hŒEBUSY”…”�”}”(hj34h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Móhj/4ubj5)�”}”(hŒPAttempt to unlock when multiple users have the drive open and not CAP_SYS_ADMIN ”h]”h×)�”}”(hŒOAttempt to unlock when multiple users have the drive open and not CAP_SYS_ADMIN”h]”hŒOAttempt to unlock when multiple users have the drive open and not CAP_SYS_ADMIN”…”�”}”(hjE4h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MõhjA4ubah}”(h]”h ]”h"]”h$]”h&]”uh1j4h³hÊh´Mõhj/4ubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjý3ubeh}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´Mðhjú3ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjè3ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Möhj‡3ubj )�”}”(hXnotes: As of 2.6.8.1, the lock flag is a global lock, meaning that all CD drives will be locked or unlocked together. This is probably a bug. The EDRIVE_CANT_DO_THIS value is defined in and is currently (2.6.8.1) the same as EOPNOTSUPP ”h]”(j )�”}”(hŒnotes:”h]”hŒnotes:”…”�”}”(hju4h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhjq4ubj% )�”}”(hhh]”(h×)�”}”(hŒ‡As of 2.6.8.1, the lock flag is a global lock, meaning that all CD drives will be locked or unlocked together. This is probably a bug.”h]”hŒ‡As of 2.6.8.1, the lock flag is a global lock, meaning that all CD drives will be locked or unlocked together. This is probably a bug.”…”�”}”(hj†4h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mùhjƒ4ubh×)�”}”(hŒmThe EDRIVE_CANT_DO_THIS value is defined in and is currently (2.6.8.1) the same as EOPNOTSUPP”h]”hŒmThe EDRIVE_CANT_DO_THIS value is defined in and is currently (2.6.8.1) the same as EOPNOTSUPP”…”�”}”(hj”4h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mýhjƒ4ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjq4ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhj‡3ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hjZ3ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjH3ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhj h²hubj )�”}”(hX'CDROM_DEBUG Turn debug messages on/off usage:: int debug; ioctl(fd, CDROM_DEBUG, debug); inputs: Cdrom debug flag, 0=disable, 1=enable outputs: The ioctl return value will be the new debug flag. error return: - EACCES Access denied: requires CAP_SYS_ADMIN ”h]”(j )�”}”(hŒ CDROM_DEBUG”h]”hŒ CDROM_DEBUG”…”�”}”(hjÄ4h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MhjÀ4ubj% )�”}”(hhh]”(h×)�”}”(hŒTurn debug messages on/off”h]”hŒTurn debug messages on/off”…”�”}”(hjÕ4h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MhjÒ4ubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hjã4h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MhjÒ4ubjF )�”}”(hŒ*int debug; ioctl(fd, CDROM_DEBUG, debug);”h]”hŒ*int debug; ioctl(fd, CDROM_DEBUG, debug);”…”�”}”hjñ4sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´MhjÒ4ubj )�”}”(hhh]”(j )�”}”(hŒ/inputs: Cdrom debug flag, 0=disable, 1=enable ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hj5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhj5ubj% )�”}”(hhh]”h×)�”}”(hŒ%Cdrom debug flag, 0=disable, 1=enable”h]”hŒ%Cdrom debug flag, 0=disable, 1=enable”…”�”}”(hj5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M hj5ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj5ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhjÿ4ubj )�”}”(hŒ=outputs: The ioctl return value will be the new debug flag. ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hj55h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhj15ubj% )�”}”(hhh]”h×)�”}”(hŒ2The ioctl return value will be the new debug flag.”h]”hŒ2The ioctl return value will be the new debug flag.”…”�”}”(hjF5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MhjC5ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj15ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhjÿ4ubj )�”}”(hŒEerror return: - EACCES Access denied: requires CAP_SYS_ADMIN ”h]”(j )�”}”(hŒ error return:”h]”hŒ error return:”…”�”}”(hjd5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhj`5ubj% )�”}”(hhh]”hÌ)�”}”(hhh]”hÑ)�”}”(hŒ5EACCES Access denied: requires CAP_SYS_ADMIN ”h]”h×)�”}”(hŒ2EACCES Access denied: requires CAP_SYS_ADMIN”h]”hŒ2EACCES Access denied: requires CAP_SYS_ADMIN”…”�”}”(hj|5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mhjx5ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhju5ubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´Mhjr5ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj`5ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhjÿ4ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hjÒ4ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjÀ4ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mhj h²hubj )�”}”(hŒóCDROM_GET_CAPABILITY get capabilities usage:: ioctl(fd, CDROM_GET_CAPABILITY, 0); inputs: none outputs: The ioctl return value is the current device capability flags. See CDC_CLOSE_TRAY, CDC_OPEN_TRAY, etc. ”h]”(j )�”}”(hŒCDROM_GET_CAPABILITY”h]”hŒCDROM_GET_CAPABILITY”…”�”}”(hj¸5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M*hj´5ubj% )�”}”(hhh]”(h×)�”}”(hŒget capabilities”h]”hŒget capabilities”…”�”}”(hjÉ5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MhjÆ5ubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hj×5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MhjÆ5ubjF )�”}”(hŒ#ioctl(fd, CDROM_GET_CAPABILITY, 0);”h]”hŒ#ioctl(fd, CDROM_GET_CAPABILITY, 0);”…”�”}”hjå5sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´MhjÆ5ubj )�”}”(hhh]”(j )�”}”(hŒinputs: none ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hjú5h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M$hjö5ubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hj 6h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M#hj6ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjö5ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M$hjó5ubj )�”}”(hŒsoutputs: The ioctl return value is the current device capability flags. See CDC_CLOSE_TRAY, CDC_OPEN_TRAY, etc. ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hj)6h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M*hj%6ubj% )�”}”(hhh]”h×)�”}”(hŒgThe ioctl return value is the current device capability flags. See CDC_CLOSE_TRAY, CDC_OPEN_TRAY, etc.”h]”hŒgThe ioctl return value is the current device capability flags. See CDC_CLOSE_TRAY, CDC_OPEN_TRAY, etc.”…”�”}”(hj:6h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M'hj76ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj%6ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M*hjó5ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hjÆ5ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj´5ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M*hj h²hubj )�”}”(hX[CDROMAUDIOBUFSIZ set the audio buffer size usage:: int arg; ioctl(fd, CDROMAUDIOBUFSIZ, val); inputs: New audio buffer size outputs: The ioctl return value is the new audio buffer size, or -1 on error. error return: - ENOSYS Not supported by this driver. notes: Not supported by all drivers. ”h]”(j )�”}”(hŒCDROMAUDIOBUFSIZ”h]”hŒCDROMAUDIOBUFSIZ”…”�”}”(hjj6h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MEhjf6ubj% )�”}”(hhh]”(h×)�”}”(hŒset the audio buffer size”h]”hŒset the audio buffer size”…”�”}”(hj{6h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M-hjx6ubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hj‰6h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M0hjx6ubjF )�”}”(hŒ+int arg; ioctl(fd, CDROMAUDIOBUFSIZ, val);”h]”hŒ+int arg; ioctl(fd, CDROMAUDIOBUFSIZ, val);”…”�”}”hj—6sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´M2hjx6ubj )�”}”(hhh]”(j )�”}”(hŒinputs: New audio buffer size ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hj¬6h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M8hj¨6ubj% )�”}”(hhh]”h×)�”}”(hŒNew audio buffer size”h]”hŒNew audio buffer size”…”�”}”(hj½6h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M7hjº6ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj¨6ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M8hj¥6ubj )�”}”(hŒNoutputs: The ioctl return value is the new audio buffer size, or -1 on error. ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hjÛ6h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M<hj×6ubj% )�”}”(hhh]”h×)�”}”(hŒDThe ioctl return value is the new audio buffer size, or -1 on error.”h]”hŒDThe ioctl return value is the new audio buffer size, or -1 on error.”…”�”}”(hjì6h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M;hjé6ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj×6ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M<hj¥6ubj )�”}”(hŒ:error return: - ENOSYS Not supported by this driver. ”h]”(j )�”}”(hŒ error return:”h]”hŒ error return:”…”�”}”(hj 7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M?hj7ubj% )�”}”(hhh]”hÌ)�”}”(hhh]”hÑ)�”}”(hŒ*ENOSYS Not supported by this driver. ”h]”h×)�”}”(hŒ)ENOSYS Not supported by this driver.”h]”hŒ)ENOSYS Not supported by this driver.”…”�”}”(hj"7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M?hj7ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj7ubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´M?hj7ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj7ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M?hj¥6ubj )�”}”(hŒ(notes: Not supported by all drivers. ”h]”(j )�”}”(hŒnotes:”h]”hŒnotes:”…”�”}”(hjL7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MEhjH7ubj% )�”}”(hhh]”h×)�”}”(hŒNot supported by all drivers.”h]”hŒNot supported by all drivers.”…”�”}”(hj]7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MBhjZ7ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjH7ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MEhj¥6ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hjx6ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjf6ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MEhj h²hubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hh·h²hh³Nh´Nubh×)�”}”(hŒ.DVD_READ_STRUCT Read structure”h]”hŒ.DVD_READ_STRUCT Read structure”…”�”}”(hj�7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MGhh·h²hubj5)�”}”(hX�usage:: dvd_struct s; ioctl(fd, DVD_READ_STRUCT, &s); inputs: dvd_struct structure, containing: =================== ========================================== type specifies the information desired, one of DVD_STRUCT_PHYSICAL, DVD_STRUCT_COPYRIGHT, DVD_STRUCT_DISCKEY, DVD_STRUCT_BCA, DVD_STRUCT_MANUFACT physical.layer_num desired layer, indexed from 0 copyright.layer_num desired layer, indexed from 0 disckey.agid =================== ========================================== outputs: dvd_struct structure, containing: =================== ================================ physical for type == DVD_STRUCT_PHYSICAL copyright for type == DVD_STRUCT_COPYRIGHT disckey.value for type == DVD_STRUCT_DISCKEY bca.{len,value} for type == DVD_STRUCT_BCA manufact.{len,valu} for type == DVD_STRUCT_MANUFACT =================== ================================ error returns: - EINVAL physical.layer_num exceeds number of layers - EIO Received invalid response from drive ”h]”(h×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hj¡7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MIhj�7ubjF )�”}”(hŒ.dvd_struct s; ioctl(fd, DVD_READ_STRUCT, &s);”h]”hŒ.dvd_struct s; ioctl(fd, DVD_READ_STRUCT, &s);”…”�”}”hj¯7sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´MKhj�7ubj )�”}”(hhh]”(j )�”}”(hXûinputs: dvd_struct structure, containing: =================== ========================================== type specifies the information desired, one of DVD_STRUCT_PHYSICAL, DVD_STRUCT_COPYRIGHT, DVD_STRUCT_DISCKEY, DVD_STRUCT_BCA, DVD_STRUCT_MANUFACT physical.layer_num desired layer, indexed from 0 copyright.layer_num desired layer, indexed from 0 disckey.agid =================== ========================================== ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hjÄ7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MZhjÀ7ubj% )�”}”(hhh]”(j5)�”}”(hŒ"dvd_struct structure, containing: ”h]”h×)�”}”(hŒ!dvd_struct structure, containing:”h]”hŒ!dvd_struct structure, containing:”…”�”}”(hjÙ7h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MPhjÕ7ubah}”(h]”h ]”h"]”h$]”h&]”uh1j4h³hÊh´MPhjÒ7ubj;)�”}”(hhh]”j@)�”}”(hhh]”(jE)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œcolwidth”Kuh1jDhjð7ubjE)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œcolwidth”K*uh1jDhjð7ubj[)�”}”(hhh]”(j`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒtype”h]”hŒtype”…”�”}”(hj8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MShj 8ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj 8ubje)�”}”(hhh]”h×)�”}”(hŒŒspecifies the information desired, one of DVD_STRUCT_PHYSICAL, DVD_STRUCT_COPYRIGHT, DVD_STRUCT_DISCKEY, DVD_STRUCT_BCA, DVD_STRUCT_MANUFACT”h]”hŒŒspecifies the information desired, one of DVD_STRUCT_PHYSICAL, DVD_STRUCT_COPYRIGHT, DVD_STRUCT_DISCKEY, DVD_STRUCT_BCA, DVD_STRUCT_MANUFACT”…”�”}”(hj'8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MShj$8ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj 8ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj8ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒphysical.layer_num”h]”hŒphysical.layer_num”…”�”}”(hjG8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MWhjD8ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjA8ubje)�”}”(hhh]”h×)�”}”(hŒdesired layer, indexed from 0”h]”hŒdesired layer, indexed from 0”…”�”}”(hj^8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MWhj[8ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjA8ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj8ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒcopyright.layer_num”h]”hŒcopyright.layer_num”…”�”}”(hj~8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MXhj{8ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjx8ubje)�”}”(hhh]”h×)�”}”(hŒdesired layer, indexed from 0”h]”hŒdesired layer, indexed from 0”…”�”}”(hj•8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MXhj’8ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjx8ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj8ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒ disckey.agid”h]”hŒ disckey.agid”…”�”}”(hjµ8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MYhj²8ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj¯8ubje)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”uh1jdhj¯8ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj8ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jZhjð7ubeh}”(h]”h ]”h"]”h$]”h&]”Œcols”Kuh1j?hjí7ubah}”(h]”h ]”h"]”h$]”h&]”uh1j:hjÒ7ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjÀ7ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MZhj½7ubj )�”}”(hX™outputs: dvd_struct structure, containing: =================== ================================ physical for type == DVD_STRUCT_PHYSICAL copyright for type == DVD_STRUCT_COPYRIGHT disckey.value for type == DVD_STRUCT_DISCKEY bca.{len,value} for type == DVD_STRUCT_BCA manufact.{len,valu} for type == DVD_STRUCT_MANUFACT =================== ================================ ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hjû8h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mehj÷8ubj% )�”}”(hhh]”(j5)�”}”(hŒ"dvd_struct structure, containing: ”h]”h×)�”}”(hŒ!dvd_struct structure, containing:”h]”hŒ!dvd_struct structure, containing:”…”�”}”(hj9h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M]hj 9ubah}”(h]”h ]”h"]”h$]”h&]”uh1j4h³hÊh´M]hj 9ubj;)�”}”(hhh]”j@)�”}”(hhh]”(jE)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œcolwidth”Kuh1jDhj'9ubjE)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œcolwidth”K uh1jDhj'9ubj[)�”}”(hhh]”(j`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒphysical”h]”hŒphysical”…”�”}”(hjG9h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M`hjD9ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjA9ubje)�”}”(hhh]”h×)�”}”(hŒfor type == DVD_STRUCT_PHYSICAL”h]”hŒfor type == DVD_STRUCT_PHYSICAL”…”�”}”(hj^9h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M`hj[9ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjA9ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj>9ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒ copyright”h]”hŒ copyright”…”�”}”(hj~9h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mahj{9ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjx9ubje)�”}”(hhh]”h×)�”}”(hŒ for type == DVD_STRUCT_COPYRIGHT”h]”hŒ for type == DVD_STRUCT_COPYRIGHT”…”�”}”(hj•9h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mahj’9ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjx9ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj>9ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒ disckey.value”h]”hŒ disckey.value”…”�”}”(hjµ9h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mbhj²9ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj¯9ubje)�”}”(hhh]”h×)�”}”(hŒfor type == DVD_STRUCT_DISCKEY”h]”hŒfor type == DVD_STRUCT_DISCKEY”…”�”}”(hjÌ9h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MbhjÉ9ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj¯9ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj>9ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒbca.{len,value}”h]”hŒbca.{len,value}”…”�”}”(hjì9h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mchjé9ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjæ9ubje)�”}”(hhh]”h×)�”}”(hŒfor type == DVD_STRUCT_BCA”h]”hŒfor type == DVD_STRUCT_BCA”…”�”}”(hj:h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mchj:ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhjæ9ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj>9ubj`)�”}”(hhh]”(je)�”}”(hhh]”h×)�”}”(hŒmanufact.{len,valu}”h]”hŒmanufact.{len,valu}”…”�”}”(hj#:h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mdhj :ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj:ubje)�”}”(hhh]”h×)�”}”(hŒfor type == DVD_STRUCT_MANUFACT”h]”hŒfor type == DVD_STRUCT_MANUFACT”…”�”}”(hj::h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mdhj7:ubah}”(h]”h ]”h"]”h$]”h&]”uh1jdhj:ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j_hj>9ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jZhj'9ubeh}”(h]”h ]”h"]”h$]”h&]”Œcols”Kuh1j?hj$9ubah}”(h]”h ]”h"]”h$]”h&]”uh1j:hj 9ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj÷8ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mehj½7ubj )�”}”(hŒ~error returns: - EINVAL physical.layer_num exceeds number of layers - EIO Received invalid response from drive ”h]”(j )�”}”(hŒerror returns:”h]”hŒerror returns:”…”�”}”(hjw:h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mkhjs:ubj% )�”}”(hhh]”hÌ)�”}”(hhh]”(hÑ)�”}”(hŒ7EINVAL physical.layer_num exceeds number of layers”h]”h×)�”}”(hj�:h]”hŒ7EINVAL physical.layer_num exceeds number of layers”…”�”}”(hj�:h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mhhj‹:ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjˆ:ubhÑ)�”}”(hŒ3EIO Received invalid response from drive ”h]”h×)�”}”(hŒ0EIO Received invalid response from drive”h]”hŒ0EIO Received invalid response from drive”…”�”}”(hj¦:h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mihj¢:ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhjˆ:ubeh}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´Mhhj…:ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjs:ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´Mkhj½7ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hj�7ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j4h³hÊh´MIhh·h²hubh×)�”}”(hŒ/DVD_WRITE_STRUCT Write structure”h]”hŒ/DVD_WRITE_STRUCT Write structure”…”�”}”(hjØ:h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mmhh·h²hubj5)�”}”(hŒ!Not implemented, as of 2.6.8.1 ”h]”h×)�”}”(hŒNot implemented, as of 2.6.8.1”h]”hŒNot implemented, as of 2.6.8.1”…”�”}”(hjê:h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mohjæ:ubah}”(h]”h ]”h"]”h$]”h&]”uh1j4h³hÊh´Mohh·h²hubh×)�”}”(hŒ.DVD_AUTH Authentication”h]”hŒ.DVD_AUTH Authentication”…”�”}”(hjþ:h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mshh·h²hubj5)�”}”(hŒÜusage:: dvd_authinfo ai; ioctl(fd, DVD_AUTH, &ai); inputs: dvd_authinfo structure. See outputs: dvd_authinfo structure. error return: - ENOTTY ai.type not recognized. ”h]”(h×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hj;h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Muhj ;ubjF )�”}”(hŒ+dvd_authinfo ai; ioctl(fd, DVD_AUTH, &ai);”h]”hŒ+dvd_authinfo ai; ioctl(fd, DVD_AUTH, &ai);”…”�”}”hj;sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´Mwhj ;ubj )�”}”(hhh]”(j )�”}”(hŒ6inputs: dvd_authinfo structure. See ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hj3;h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M}hj/;ubj% )�”}”(hhh]”h×)�”}”(hŒ,dvd_authinfo structure. See ”h]”hŒ,dvd_authinfo structure. See ”…”�”}”(hjD;h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M|hjA;ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj/;ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M}hj,;ubj )�”}”(hŒ"outputs: dvd_authinfo structure. ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hjb;h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M�hj^;ubj% )�”}”(hhh]”h×)�”}”(hŒdvd_authinfo structure.”h]”hŒdvd_authinfo structure.”…”�”}”(hjs;h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M€hjp;ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj^;ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M�hj,;ubj )�”}”(hŒ6error return: - ENOTTY ai.type not recognized. ”h]”(j )�”}”(hŒ error return:”h]”hŒ error return:”…”�”}”(hj‘;h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M†hj�;ubj% )�”}”(hhh]”hÌ)�”}”(hhh]”hÑ)�”}”(hŒ&ENOTTY ai.type not recognized. ”h]”h×)�”}”(hŒ#ENOTTY ai.type not recognized.”h]”hŒ#ENOTTY ai.type not recognized.”…”�”}”(hj©;h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M„hj¥;ubah}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj¢;ubah}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´M„hjŸ;ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj�;ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M†hj,;ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hj ;ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j4h³hÊh´Muhh·h²hubj )�”}”(hhh]”(j )�”}”(hXxCDROM_SEND_PACKET send a packet to the drive usage:: struct cdrom_generic_command cgc; ioctl(fd, CDROM_SEND_PACKET, &cgc); inputs: cdrom_generic_command structure containing the packet to send. outputs: none cdrom_generic_command structure containing results. error return: - EIO command failed. - EPERM Operation not permitted, either because a write command was attempted on a drive which is opened read-only, or because the command requires CAP_SYS_RAWIO - EINVAL cgc.data_direction not set ”h]”(j )�”}”(hŒCDROM_SEND_PACKET”h]”hŒCDROM_SEND_PACKET”…”�”}”(hjâ;h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M©hjÞ;ubj% )�”}”(hhh]”(h×)�”}”(hŒsend a packet to the drive”h]”hŒsend a packet to the drive”…”�”}”(hjó;h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M‰hjð;ubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hj<h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MŒhjð;ubjF )�”}”(hŒFstruct cdrom_generic_command cgc; ioctl(fd, CDROM_SEND_PACKET, &cgc);”h]”hŒFstruct cdrom_generic_command cgc; ioctl(fd, CDROM_SEND_PACKET, &cgc);”…”�”}”hj<sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´MŽhjð;ubj )�”}”(hhh]”(j )�”}”(hŒHinputs: cdrom_generic_command structure containing the packet to send. ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hj$<h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M”hj <ubj% )�”}”(hhh]”h×)�”}”(hŒ>cdrom_generic_command structure containing the packet to send.”h]”hŒ>cdrom_generic_command structure containing the packet to send.”…”�”}”(hj5<h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M“hj2<ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj <ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M”hj<ubj )�”}”(hŒIoutputs: none cdrom_generic_command structure containing results. ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hjS<h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M™hjO<ubj% )�”}”(hhh]”(j5)�”}”(hŒnone ”h]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hjh<h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M—hjd<ubah}”(h]”h ]”h"]”h$]”h&]”uh1j4h³hÊh´M—hja<ubh×)�”}”(hŒ3cdrom_generic_command structure containing results.”h]”hŒ3cdrom_generic_command structure containing results.”…”�”}”(hj|<h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M™hja<ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjO<ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M™hj<ubj )�”}”(hXCerror return: - EIO command failed. - EPERM Operation not permitted, either because a write command was attempted on a drive which is opened read-only, or because the command requires CAP_SYS_RAWIO - EINVAL cgc.data_direction not set ”h]”(j )�”}”(hŒ error return:”h]”hŒ error return:”…”�”}”(hjš<h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M©hj–<ubj% )�”}”(hhh]”hÌ)�”}”(hhh]”(hÑ)�”}”(hŒ EIO command failed.”h]”(h×)�”}”(hŒEIO”h]”hŒEIO”…”�”}”(hj²<h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mœhj®<ubj5)�”}”(hŒcommand failed.”h]”h×)�”}”(hjÂ<h]”hŒcommand failed.”…”�”}”(hjÄ<h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MžhjÀ<ubah}”(h]”h ]”h"]”h$]”h&]”uh1j4h³hÊh´Mžhj®<ubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj«<ubhÑ)�”}”(hŒÐEPERM Operation not permitted, either because a write command was attempted on a drive which is opened read-only, or because the command requires CAP_SYS_RAWIO”h]”(h×)�”}”(hŒEPERM”h]”hŒEPERM”…”�”}”(hjá<h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MŸhjÝ<ubj5)�”}”(hŒ™Operation not permitted, either because a write command was attempted on a drive which is opened read-only, or because the command requires CAP_SYS_RAWIO”h]”h×)�”}”(hŒ™Operation not permitted, either because a write command was attempted on a drive which is opened read-only, or because the command requires CAP_SYS_RAWIO”h]”hŒ™Operation not permitted, either because a write command was attempted on a drive which is opened read-only, or because the command requires CAP_SYS_RAWIO”…”�”}”(hjó<h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M¡hjï<ubah}”(h]”h ]”h"]”h$]”h&]”uh1j4h³hÊh´M¡hjÝ<ubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj«<ubhÑ)�”}”(hŒ1EINVAL cgc.data_direction not set ”h]”(h×)�”}”(hŒEINVAL”h]”hŒEINVAL”…”�”}”(hj=h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M¥hj =ubj5)�”}”(hŒcgc.data_direction not set ”h]”h×)�”}”(hŒcgc.data_direction not set”h]”hŒcgc.data_direction not set”…”�”}”(hj#=h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M§hj=ubah}”(h]”h ]”h"]”h$]”h&]”uh1j4h³hÊh´M§hj =ubeh}”(h]”h ]”h"]”h$]”h&]”uh1hÐhj«<ubeh}”(h]”h ]”h"]”h$]”h&]”jj uh1hËh³hÊh´Mœhj¨<ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj–<ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M©hj<ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hjð;ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjÞ;ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M©hjÛ;ubj )�”}”(hX(CDROM_NEXT_WRITABLE get next writable block usage:: long next; ioctl(fd, CDROM_NEXT_WRITABLE, &next); inputs: none outputs: The next writable block. notes: If the device does not support this ioctl directly, the ioctl will return CDROM_LAST_WRITTEN + 7. ”h]”(j )�”}”(hŒCDROM_NEXT_WRITABLE”h]”hŒCDROM_NEXT_WRITABLE”…”�”}”(hje=h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÂhja=ubj% )�”}”(hhh]”(h×)�”}”(hŒget next writable block”h]”hŒget next writable block”…”�”}”(hjv=h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M¬hjs=ubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hj„=h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M¯hjs=ubjF )�”}”(hŒ2long next; ioctl(fd, CDROM_NEXT_WRITABLE, &next);”h]”hŒ2long next; ioctl(fd, CDROM_NEXT_WRITABLE, &next);”…”�”}”hj’=sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´M±hjs=ubj )�”}”(hhh]”(j )�”}”(hŒinputs: none ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hj§=h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M·hj£=ubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hj¸=h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M¶hjµ=ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj£=ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M·hj =ubj )�”}”(hŒ#outputs: The next writable block. ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hjÖ=h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M»hjÒ=ubj% )�”}”(hhh]”h×)�”}”(hŒThe next writable block.”h]”hŒThe next writable block.”…”�”}”(hjç=h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´Mºhjä=ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjÒ=ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´M»hj =ubj )�”}”(hŒrnotes: If the device does not support this ioctl directly, the ioctl will return CDROM_LAST_WRITTEN + 7. ”h]”(j )�”}”(hŒnotes:”h]”hŒnotes:”…”�”}”(hj>h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÂhj>ubj% )�”}”(hhh]”(j5)�”}”(hŒ8If the device does not support this ioctl directly, the ”h]”h×)�”}”(hŒ7If the device does not support this ioctl directly, the”h]”hŒ7If the device does not support this ioctl directly, the”…”�”}”(hj>h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M¾hj>ubah}”(h]”h ]”h"]”h$]”h&]”uh1j4h³hÊh´M¾hj>ubh×)�”}”(hŒ)ioctl will return CDROM_LAST_WRITTEN + 7.”h]”hŒ)ioctl will return CDROM_LAST_WRITTEN + 7.”…”�”}”(hj.>h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MÀhj>ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hj>ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÂhj =ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hjs=ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hja=ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÂhjÛ;h²hubj )�”}”(hX–CDROM_LAST_WRITTEN get last block written on disc usage:: long last; ioctl(fd, CDROM_LAST_WRITTEN, &last); inputs: none outputs: The last block written on disc notes: If the device does not support this ioctl directly, the result is derived from the disc's table of contents. If the table of contents can't be read, this ioctl returns an error.”h]”(j )�”}”(hŒCDROM_LAST_WRITTEN”h]”hŒCDROM_LAST_WRITTEN”…”�”}”(hj^>h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÙhjZ>ubj% )�”}”(hhh]”(h×)�”}”(hŒget last block written on disc”h]”hŒget last block written on disc”…”�”}”(hjo>h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MÅhjl>ubh×)�”}”(hŒusage::”h]”hŒusage:”…”�”}”(hj}>h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MÈhjl>ubjF )�”}”(hŒ1long last; ioctl(fd, CDROM_LAST_WRITTEN, &last);”h]”hŒ1long last; ioctl(fd, CDROM_LAST_WRITTEN, &last);”…”�”}”hj‹>sbah}”(h]”h ]”h"]”h$]”h&]”jU jV uh1jE h³hÊh´MÊhjl>ubj )�”}”(hhh]”(j )�”}”(hŒinputs: none ”h]”(j )�”}”(hŒinputs:”h]”hŒinputs:”…”�”}”(hj >h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÐhjœ>ubj% )�”}”(hhh]”h×)�”}”(hŒnone”h]”hŒnone”…”�”}”(hj±>h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MÏhj®>ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjœ>ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÐhj™>ubj )�”}”(hŒ)outputs: The last block written on disc ”h]”(j )�”}”(hŒoutputs:”h]”hŒoutputs:”…”�”}”(hjÏ>h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÔhjË>ubj% )�”}”(hhh]”h×)�”}”(hŒThe last block written on disc”h]”hŒThe last block written on disc”…”�”}”(hjà>h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´MÓhjÝ>ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjË>ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÔhj™>ubj )�”}”(hŒ¹notes: If the device does not support this ioctl directly, the result is derived from the disc's table of contents. If the table of contents can't be read, this ioctl returns an error.”h]”(j )�”}”(hŒnotes:”h]”hŒnotes:”…”�”}”(hjþ>h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÙhjú>ubj% )�”}”(hhh]”h×)�”}”(hŒ²If the device does not support this ioctl directly, the result is derived from the disc's table of contents. If the table of contents can't be read, this ioctl returns an error.”h]”hŒ¶If the device does not support this ioctl directly, the result is derived from the disc’s table of contents. If the table of contents can’t be read, this ioctl returns an error.”…”�”}”(hj?h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÖh³hÊh´M×hj ?ubah}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjú>ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÙhj™>ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hjl>ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j$ hjZ>ubeh}”(h]”h ]”h"]”h$]”h&]”uh1j h³hÊh´MÙhjÛ;h²hubeh}”(h]”h ]”h"]”h$]”h&]”uh1j hh·h²hh³Nh´Nubeh}”(h]”Œsummary-of-cdrom-ioctl-calls”ah ]”h"]”Œsummary of cdrom ioctl calls”ah$]”h&]”uh1hµhhh²hh³hÊh´Kubeh}”(h]”h ]”h"]”h$]”h&]”Œsource”hÊuh1hŒcurrent_source”NŒ current_line”NŒsettings”Œdocutils.frontend”ŒValues”“”)�”}”(hºNŒ generator”NŒ datestamp”NŒ source_link”NŒ source_url”NŒ toc_backlinks”jdŒfootnote_backlinks”KŒ sectnum_xform”KŒstrip_comments”NŒstrip_elements_with_classes”NŒ strip_classes”NŒ report_level”KŒ halt_level”KŒexit_status_level”KŒdebug”NŒwarning_stream”NŒ traceback”ˆŒinput_encoding”Œ utf-8-sig”Œinput_encoding_error_handler”Œstrict”Œoutput_encoding”Œutf-8”Œoutput_encoding_error_handler”jk?Œerror_encoding”Œutf-8”Œerror_encoding_error_handler”Œbackslashreplace”Œ language_code”Œen”Œrecord_dependencies”NŒconfig”NŒ id_prefix”hŒauto_id_prefix”Œid”Œ dump_settings”NŒdump_internals”NŒdump_transforms”NŒdump_pseudo_xml”NŒexpose_internals”NŒstrict_visitor”NŒ_disable_config”NŒ_source”hÊŒ _destination”NŒ _config_files”]”Œ7/var/lib/git/docbuild/linux/Documentation/docutils.conf”aŒfile_insertion_enabled”ˆŒ raw_enabled”KŒline_length_limit”M'Œpep_references”NŒ pep_base_url”Œhttps://peps.python.org/”Œpep_file_url_template”Œpep-%04d”Œrfc_references”NŒ rfc_base_url”Œ&https://datatracker.ietf.org/doc/html/”Œ tab_width”KŒtrim_footnote_reference_space”‰Œsyntax_highlight”Œlong”Œ smart_quotes”ˆŒsmartquotes_locales”]”Œcharacter_level_inline_markup”‰Œdoctitle_xform”‰Œ docinfo_xform”KŒsectsubtitle_xform”‰Œ image_loading”Œlink”Œembed_stylesheet”‰Œcloak_email_addresses”ˆŒsection_self_link”‰Œenv”NubŒreporter”NŒindirect_targets”]”Œsubstitution_defs”}”Œsubstitution_names”}”Œrefnames”}”Œrefids”}”Œnameids”}”jF?jC?sŒ nametypes”}”jF?‰sh}”jC?h·sŒ footnote_refs”}”Œ citation_refs”}”Œ autofootnotes”]”Œautofootnote_refs”]”Œsymbol_footnotes”]”Œsymbol_footnote_refs”]”Œ footnotes”]”Œ citations”]”Œautofootnote_start”KŒsymbol_footnote_start”KŒ id_counter”Œ collections”ŒCounter”“”}”…”R”Œparse_messages”]”Œtransform_messages”]”Œ transformer”NŒ include_log”]”Œ decoration”Nh²hub.