| "MT_ST_BUFFER_WRITES (Default: true)"
| Buffer all write operations in fixed block mode. If this option is false and the drive uses a fixed block size, then all write operations must be for a multiple of the block size. This option must be set false to write reliable multi-volume archives.
| "MT_ST_ASYNC_WRITES (Default: true)"
| When this options is true write operations return immediately without waiting for the data to be transferred to the drive if the data fits into the drivers buffer. The write threshold determines how full the buffer must be before a new SCSI write command is issued. Any errors reported by the drive will be held until the next operation. This option must be set false to write reliable multi-volume archives.
| "MT_ST_READ_AHEAD (Default: true)"
| This option causes the driver to provide read buffering and read-ahead in fixed block mode. If this option is false and the drive uses a fixed block size, then all read operations must be for a multiple of the block size.
| "MT_ST_TWO_FM (Default: false)"
| This option modifies the driver behavior when a file is closed. The normal action is to write a single filemark. If the option is true the driver will write two filemarks and backspace over the second one.
| Note: This option should not be set true for QIC tape drives since they are unable to overwrite a filemark. These drives detect the end of recorded data by testing for blank tape rather than two consecutive filemarks. Most other current drives also detect the end of recorded data and using two filemarks is usually necessary only when interchanging tapes with some other systems.
| "MT_ST_DEBUGGING (Default: false)"
| This option turns on various debugging messages from the driver (effective only if the driver was compiled with DEBUG defined non-zero).
| "MT_ST_FAST_EOM (Default: false)"
| This option causes the MTEOM operation to be sent directly to the drive, potentially speeding up the operation but causing the driver to lose track of the current file number normally returned by the MTIOCGET request. If MT_ST_FAST_EOM is false the driver will respond to an MTEOM request by forward spacing over files.
| "MT_ST_AUTO_LOCK (Default: false)"
| When this option is true, the drive door is locked when the device is opened and unlocked when it is closed.
| "MT_ST_DEF_WRITES (Default: false)"
| The tape options (block size, mode, compression, etc.) may change when changing from one device linked to a drive to another device linked to the same drive depending on how the devices are defined. This option defines when the changes are enforced by the driver using SCSI-commands and when the drives auto-detection capabilities are relied upon. If this option is false, the driver sends the SCSI-commands immediately when the device is changed. If the option is true, the SCSI-commands are not sent until a write is requested. In this case the drive firmware is allowed to detect the tape structure when reading and the SCSI-commands are used only to make sure that a tape is written according to the correct specification.
| "MT_ST_CAN_BSR (Default: false)"
| When read-ahead is used, the tape must sometimes be spaced backward to the correct position when the device is closed and the SCSI command to space backwards over records is used for this purpose. Some older drives cant process this command reliably and this option can be used to instruct the driver not to use the command. The end result is that, with read-ahead and fixed block mode, the tape may not be correctly positioned within a file when the device is closed.
| "MT_ST_NO_BLKLIMS (Default: false)"
| Some drives dont accept the READ BLOCK LIMITS SCSI command. If this is used, the driver does not use the command. The drawback is that the driver cant check before sending commands if the selected block size is acceptable to the drive.
| "MT_ST_CAN_PARTITIONS (Default: false)"
| This option enables support for several partitions within a tape. The option applies to all devices linked to a drive.
| "MT_ST_SCSI2LOGICAL (Default: false)"
| This option instructs the driver to use the logical block addresses defined in the SCSI-2 standard when performing the seek and tell operations (both with MTSEEK and MTIOCPOS commands and when changing tape partition). Otherwise the device-specific addresses are used. It is highly advisable to set this option if the drive supports the logical addresses because they count also filemarks. There are some drives that only support the logical block addresses.
| "MT_ST_SYSV (Default: false)"
| When this option is enabled, the tape devices use the SystemV semantics. Otherwise the BSD semantics are used. The most important difference between the semantics is what happens when a device used for reading is closed: in SYSV semantics the tape is spaced forward past the next filemark if this has not happened while using the device. In BSD semantics the tape position is not changed.
"struct mtop "mt_cmd;
"mt_cmd.mt_op"" = MTSETDRVBUFFER;"
"mt_cmd.mt_count"" = MT_ST_BOOLEANS |"
"ioctl("fd", MTIOCTOP, &"mt_cmd");"