Edit File by line
/home/barbar84/public_h.../wp-conte.../plugins/sujqvwi/ExeBy/smexe_ro.../usr/include/scsi
File: scsi.h
/* Copyright (C) 1998-2018 Free Software Foundation, Inc.
[0] Fix | Delete
This file is part of the GNU C Library.
[1] Fix | Delete
[2] Fix | Delete
The GNU C Library is free software; you can redistribute it and/or
[3] Fix | Delete
modify it under the terms of the GNU Lesser General Public
[4] Fix | Delete
License as published by the Free Software Foundation; either
[5] Fix | Delete
version 2.1 of the License, or (at your option) any later version.
[6] Fix | Delete
[7] Fix | Delete
The GNU C Library is distributed in the hope that it will be useful,
[8] Fix | Delete
but WITHOUT ANY WARRANTY; without even the implied warranty of
[9] Fix | Delete
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
[10] Fix | Delete
Lesser General Public License for more details.
[11] Fix | Delete
[12] Fix | Delete
You should have received a copy of the GNU Lesser General Public
[13] Fix | Delete
License along with the GNU C Library; if not, see
[14] Fix | Delete
<http://www.gnu.org/licenses/>. */
[15] Fix | Delete
[16] Fix | Delete
/*
[17] Fix | Delete
* This header file contains public constants and structures used by
[18] Fix | Delete
* the scsi code for linux.
[19] Fix | Delete
*/
[20] Fix | Delete
[21] Fix | Delete
#ifndef _SCSI_SCSI_H
[22] Fix | Delete
#define _SCSI_SCSI_H 1
[23] Fix | Delete
[24] Fix | Delete
#include <features.h>
[25] Fix | Delete
[26] Fix | Delete
/*
[27] Fix | Delete
* SCSI opcodes
[28] Fix | Delete
*/
[29] Fix | Delete
[30] Fix | Delete
#define TEST_UNIT_READY 0x00
[31] Fix | Delete
#define REZERO_UNIT 0x01
[32] Fix | Delete
#define REQUEST_SENSE 0x03
[33] Fix | Delete
#define FORMAT_UNIT 0x04
[34] Fix | Delete
#define READ_BLOCK_LIMITS 0x05
[35] Fix | Delete
#define REASSIGN_BLOCKS 0x07
[36] Fix | Delete
#define READ_6 0x08
[37] Fix | Delete
#define WRITE_6 0x0a
[38] Fix | Delete
#define SEEK_6 0x0b
[39] Fix | Delete
#define READ_REVERSE 0x0f
[40] Fix | Delete
#define WRITE_FILEMARKS 0x10
[41] Fix | Delete
#define SPACE 0x11
[42] Fix | Delete
#define INQUIRY 0x12
[43] Fix | Delete
#define RECOVER_BUFFERED_DATA 0x14
[44] Fix | Delete
#define MODE_SELECT 0x15
[45] Fix | Delete
#define RESERVE 0x16
[46] Fix | Delete
#define RELEASE 0x17
[47] Fix | Delete
#define COPY 0x18
[48] Fix | Delete
#define ERASE 0x19
[49] Fix | Delete
#define MODE_SENSE 0x1a
[50] Fix | Delete
#define START_STOP 0x1b
[51] Fix | Delete
#define RECEIVE_DIAGNOSTIC 0x1c
[52] Fix | Delete
#define SEND_DIAGNOSTIC 0x1d
[53] Fix | Delete
#define ALLOW_MEDIUM_REMOVAL 0x1e
[54] Fix | Delete
[55] Fix | Delete
#define SET_WINDOW 0x24
[56] Fix | Delete
#define READ_CAPACITY 0x25
[57] Fix | Delete
#define READ_10 0x28
[58] Fix | Delete
#define WRITE_10 0x2a
[59] Fix | Delete
#define SEEK_10 0x2b
[60] Fix | Delete
#define WRITE_VERIFY 0x2e
[61] Fix | Delete
#define VERIFY 0x2f
[62] Fix | Delete
#define SEARCH_HIGH 0x30
[63] Fix | Delete
#define SEARCH_EQUAL 0x31
[64] Fix | Delete
#define SEARCH_LOW 0x32
[65] Fix | Delete
#define SET_LIMITS 0x33
[66] Fix | Delete
#define PRE_FETCH 0x34
[67] Fix | Delete
#define READ_POSITION 0x34
[68] Fix | Delete
#define SYNCHRONIZE_CACHE 0x35
[69] Fix | Delete
#define LOCK_UNLOCK_CACHE 0x36
[70] Fix | Delete
#define READ_DEFECT_DATA 0x37
[71] Fix | Delete
#define MEDIUM_SCAN 0x38
[72] Fix | Delete
#define COMPARE 0x39
[73] Fix | Delete
#define COPY_VERIFY 0x3a
[74] Fix | Delete
#define WRITE_BUFFER 0x3b
[75] Fix | Delete
#define READ_BUFFER 0x3c
[76] Fix | Delete
#define UPDATE_BLOCK 0x3d
[77] Fix | Delete
#define READ_LONG 0x3e
[78] Fix | Delete
#define WRITE_LONG 0x3f
[79] Fix | Delete
#define CHANGE_DEFINITION 0x40
[80] Fix | Delete
#define WRITE_SAME 0x41
[81] Fix | Delete
#define READ_TOC 0x43
[82] Fix | Delete
#define LOG_SELECT 0x4c
[83] Fix | Delete
#define LOG_SENSE 0x4d
[84] Fix | Delete
#define MODE_SELECT_10 0x55
[85] Fix | Delete
#define RESERVE_10 0x56
[86] Fix | Delete
#define RELEASE_10 0x57
[87] Fix | Delete
#define MODE_SENSE_10 0x5a
[88] Fix | Delete
#define PERSISTENT_RESERVE_IN 0x5e
[89] Fix | Delete
#define PERSISTENT_RESERVE_OUT 0x5f
[90] Fix | Delete
#define MOVE_MEDIUM 0xa5
[91] Fix | Delete
#define READ_12 0xa8
[92] Fix | Delete
#define WRITE_12 0xaa
[93] Fix | Delete
#define WRITE_VERIFY_12 0xae
[94] Fix | Delete
#define SEARCH_HIGH_12 0xb0
[95] Fix | Delete
#define SEARCH_EQUAL_12 0xb1
[96] Fix | Delete
#define SEARCH_LOW_12 0xb2
[97] Fix | Delete
#define READ_ELEMENT_STATUS 0xb8
[98] Fix | Delete
#define SEND_VOLUME_TAG 0xb6
[99] Fix | Delete
#define WRITE_LONG_2 0xea
[100] Fix | Delete
[101] Fix | Delete
/*
[102] Fix | Delete
* Status codes
[103] Fix | Delete
*/
[104] Fix | Delete
[105] Fix | Delete
#define GOOD 0x00
[106] Fix | Delete
#define CHECK_CONDITION 0x01
[107] Fix | Delete
#define CONDITION_GOOD 0x02
[108] Fix | Delete
#define BUSY 0x04
[109] Fix | Delete
#define INTERMEDIATE_GOOD 0x08
[110] Fix | Delete
#define INTERMEDIATE_C_GOOD 0x0a
[111] Fix | Delete
#define RESERVATION_CONFLICT 0x0c
[112] Fix | Delete
#define COMMAND_TERMINATED 0x11
[113] Fix | Delete
#define QUEUE_FULL 0x14
[114] Fix | Delete
[115] Fix | Delete
#define STATUS_MASK 0x3e
[116] Fix | Delete
[117] Fix | Delete
/*
[118] Fix | Delete
* SENSE KEYS
[119] Fix | Delete
*/
[120] Fix | Delete
[121] Fix | Delete
#define NO_SENSE 0x00
[122] Fix | Delete
#define RECOVERED_ERROR 0x01
[123] Fix | Delete
#define NOT_READY 0x02
[124] Fix | Delete
#define MEDIUM_ERROR 0x03
[125] Fix | Delete
#define HARDWARE_ERROR 0x04
[126] Fix | Delete
#define ILLEGAL_REQUEST 0x05
[127] Fix | Delete
#define UNIT_ATTENTION 0x06
[128] Fix | Delete
#define DATA_PROTECT 0x07
[129] Fix | Delete
#define BLANK_CHECK 0x08
[130] Fix | Delete
#define COPY_ABORTED 0x0a
[131] Fix | Delete
#define ABORTED_COMMAND 0x0b
[132] Fix | Delete
#define VOLUME_OVERFLOW 0x0d
[133] Fix | Delete
#define MISCOMPARE 0x0e
[134] Fix | Delete
[135] Fix | Delete
[136] Fix | Delete
/*
[137] Fix | Delete
* DEVICE TYPES
[138] Fix | Delete
*/
[139] Fix | Delete
[140] Fix | Delete
#define TYPE_DISK 0x00
[141] Fix | Delete
#define TYPE_TAPE 0x01
[142] Fix | Delete
#define TYPE_PROCESSOR 0x03 /* HP scanners use this */
[143] Fix | Delete
#define TYPE_WORM 0x04 /* Treated as ROM by our system */
[144] Fix | Delete
#define TYPE_ROM 0x05
[145] Fix | Delete
#define TYPE_SCANNER 0x06
[146] Fix | Delete
#define TYPE_MOD 0x07 /* Magneto-optical disk -
[147] Fix | Delete
* - treated as TYPE_DISK */
[148] Fix | Delete
#define TYPE_MEDIUM_CHANGER 0x08
[149] Fix | Delete
#define TYPE_ENCLOSURE 0x0d /* Enclosure Services Device */
[150] Fix | Delete
#define TYPE_NO_LUN 0x7f
[151] Fix | Delete
[152] Fix | Delete
/*
[153] Fix | Delete
* standard mode-select header prepended to all mode-select commands
[154] Fix | Delete
*
[155] Fix | Delete
* moved here from cdrom.h -- kraxel
[156] Fix | Delete
*/
[157] Fix | Delete
[158] Fix | Delete
struct ccs_modesel_head
[159] Fix | Delete
{
[160] Fix | Delete
unsigned char _r1; /* reserved. */
[161] Fix | Delete
unsigned char medium; /* device-specific medium type. */
[162] Fix | Delete
unsigned char _r2; /* reserved. */
[163] Fix | Delete
unsigned char block_desc_length; /* block descriptor length. */
[164] Fix | Delete
unsigned char density; /* device-specific density code. */
[165] Fix | Delete
unsigned char number_blocks_hi; /* number of blocks in this block
[166] Fix | Delete
desc. */
[167] Fix | Delete
unsigned char number_blocks_med;
[168] Fix | Delete
unsigned char number_blocks_lo;
[169] Fix | Delete
unsigned char _r3;
[170] Fix | Delete
unsigned char block_length_hi; /* block length for blocks in this
[171] Fix | Delete
desc. */
[172] Fix | Delete
unsigned char block_length_med;
[173] Fix | Delete
unsigned char block_length_lo;
[174] Fix | Delete
};
[175] Fix | Delete
[176] Fix | Delete
/*
[177] Fix | Delete
* MESSAGE CODES
[178] Fix | Delete
*/
[179] Fix | Delete
[180] Fix | Delete
#define COMMAND_COMPLETE 0x00
[181] Fix | Delete
#define EXTENDED_MESSAGE 0x01
[182] Fix | Delete
#define EXTENDED_MODIFY_DATA_POINTER 0x00
[183] Fix | Delete
#define EXTENDED_SDTR 0x01
[184] Fix | Delete
#define EXTENDED_EXTENDED_IDENTIFY 0x02 /* SCSI-I only */
[185] Fix | Delete
#define EXTENDED_WDTR 0x03
[186] Fix | Delete
#define SAVE_POINTERS 0x02
[187] Fix | Delete
#define RESTORE_POINTERS 0x03
[188] Fix | Delete
#define DISCONNECT 0x04
[189] Fix | Delete
#define INITIATOR_ERROR 0x05
[190] Fix | Delete
#define ABORT 0x06
[191] Fix | Delete
#define MESSAGE_REJECT 0x07
[192] Fix | Delete
#define NOP 0x08
[193] Fix | Delete
#define MSG_PARITY_ERROR 0x09
[194] Fix | Delete
#define LINKED_CMD_COMPLETE 0x0a
[195] Fix | Delete
#define LINKED_FLG_CMD_COMPLETE 0x0b
[196] Fix | Delete
#define BUS_DEVICE_RESET 0x0c
[197] Fix | Delete
[198] Fix | Delete
#define INITIATE_RECOVERY 0x0f /* SCSI-II only */
[199] Fix | Delete
#define RELEASE_RECOVERY 0x10 /* SCSI-II only */
[200] Fix | Delete
[201] Fix | Delete
#define SIMPLE_QUEUE_TAG 0x20
[202] Fix | Delete
#define HEAD_OF_QUEUE_TAG 0x21
[203] Fix | Delete
#define ORDERED_QUEUE_TAG 0x22
[204] Fix | Delete
[205] Fix | Delete
/*
[206] Fix | Delete
* Here are some scsi specific ioctl commands which are sometimes useful.
[207] Fix | Delete
*/
[208] Fix | Delete
/* These are a few other constants only used by scsi devices. */
[209] Fix | Delete
[210] Fix | Delete
#define SCSI_IOCTL_GET_IDLUN 0x5382
[211] Fix | Delete
[212] Fix | Delete
/* Used to turn on and off tagged queuing for scsi devices. */
[213] Fix | Delete
[214] Fix | Delete
#define SCSI_IOCTL_TAGGED_ENABLE 0x5383
[215] Fix | Delete
#define SCSI_IOCTL_TAGGED_DISABLE 0x5384
[216] Fix | Delete
[217] Fix | Delete
/* Used to obtain the host number of a device. */
[218] Fix | Delete
#define SCSI_IOCTL_PROBE_HOST 0x5385
[219] Fix | Delete
[220] Fix | Delete
/* Used to get the bus number for a device. */
[221] Fix | Delete
#define SCSI_IOCTL_GET_BUS_NUMBER 0x5386
[222] Fix | Delete
[223] Fix | Delete
#endif /* scsi/scsi.h */
[224] Fix | Delete
[225] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function