diff options
-rw-r--r-- | epan/dissectors/packet-scsi-smc.c | 55 | ||||
-rw-r--r-- | epan/dissectors/packet-scsi-smc.h | 32 | ||||
-rw-r--r-- | epan/dissectors/packet-scsi-ssc.c | 16 | ||||
-rw-r--r-- | epan/dissectors/packet-scsi.c | 34 |
4 files changed, 69 insertions, 68 deletions
diff --git a/epan/dissectors/packet-scsi-smc.c b/epan/dissectors/packet-scsi-smc.c index 2f96c002d0..0903720860 100644 --- a/epan/dissectors/packet-scsi-smc.c +++ b/epan/dissectors/packet-scsi-smc.c @@ -1,3 +1,4 @@ +/* based on the SMC 3 standard */ /* packet-scsi-smc.c * Dissector for the SCSI SMC commandset * Extracted from packet-scsi.c @@ -49,7 +50,7 @@ int hf_scsi_smc_opcode = -1; void -dissect_smc2_movemedium (tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, +dissect_smc_movemedium (tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, guint offset, gboolean isreq, gboolean iscdb, guint payload_len _U_, scsi_task_data_t *cdata _U_) { @@ -101,7 +102,7 @@ static const value_string element_type_code_vals[] = { #define SVALID 0x80 static void -dissect_scsi_smc2_volume_tag (tvbuff_t *tvb, packet_info *pinfo _U_, +dissect_scsi_smc_volume_tag (tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, guint offset, const char *name) { @@ -125,7 +126,7 @@ dissect_scsi_smc2_volume_tag (tvbuff_t *tvb, packet_info *pinfo _U_, static void -dissect_scsi_smc2_element (tvbuff_t *tvb, packet_info *pinfo _U_, +dissect_scsi_smc_element (tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, guint offset, guint elem_bytecnt, guint8 elem_type, guint8 voltag_flags) @@ -248,7 +249,7 @@ dissect_scsi_smc2_element (tvbuff_t *tvb, packet_info *pinfo _U_, if (voltag_flags & PVOLTAG) { if (elem_bytecnt < 36) return; - dissect_scsi_smc2_volume_tag (tvb, pinfo, tree, offset, + dissect_scsi_smc_volume_tag (tvb, pinfo, tree, offset, "Primary Volume Tag Information"); offset += 36; elem_bytecnt -= 36; @@ -257,7 +258,7 @@ dissect_scsi_smc2_element (tvbuff_t *tvb, packet_info *pinfo _U_, if (voltag_flags & AVOLTAG) { if (elem_bytecnt < 36) return; - dissect_scsi_smc2_volume_tag (tvb, pinfo, tree, offset, + dissect_scsi_smc_volume_tag (tvb, pinfo, tree, offset, "Alternate Volume Tag Information"); offset += 36; elem_bytecnt -= 36; @@ -317,7 +318,7 @@ dissect_scsi_smc2_element (tvbuff_t *tvb, packet_info *pinfo _U_, static void -dissect_scsi_smc2_elements (tvbuff_t *tvb, packet_info *pinfo, +dissect_scsi_smc_elements (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, guint offset, guint desc_bytecnt, guint8 elem_type, guint8 voltag_flags, guint16 elem_desc_len) @@ -328,7 +329,7 @@ dissect_scsi_smc2_elements (tvbuff_t *tvb, packet_info *pinfo, elem_bytecnt = elem_desc_len; if (elem_bytecnt > desc_bytecnt) elem_bytecnt = desc_bytecnt; - dissect_scsi_smc2_element (tvb, pinfo, tree, offset, elem_bytecnt, + dissect_scsi_smc_element (tvb, pinfo, tree, offset, elem_bytecnt, elem_type, voltag_flags); offset += elem_bytecnt; desc_bytecnt -= elem_bytecnt; @@ -337,7 +338,7 @@ dissect_scsi_smc2_elements (tvbuff_t *tvb, packet_info *pinfo, void -dissect_smc2_readelementstatus (tvbuff_t *tvb, packet_info *pinfo, +dissect_smc_readelementstatus (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, guint offset, gboolean isreq, gboolean iscdb, guint payload_len _U_, scsi_task_data_t *cdata _U_) @@ -437,7 +438,7 @@ dissect_smc2_readelementstatus (tvbuff_t *tvb, packet_info *pinfo, if (desc_bytecnt > bytecnt) desc_bytecnt = bytecnt; - dissect_scsi_smc2_elements (tvb, pinfo, tree, offset, + dissect_scsi_smc_elements (tvb, pinfo, tree, offset, desc_bytecnt, elem_type, voltag_flags, elem_desc_len); offset += desc_bytecnt; @@ -450,9 +451,9 @@ dissect_smc2_readelementstatus (tvbuff_t *tvb, packet_info *pinfo, /* SMC Commands */ const value_string scsi_smc_vals[] = { - {SCSI_SMC2_EXCHANGE_MEDIUM , "Exchange Medium"}, - {SCSI_SMC2_INITIALIZE_ELEMENT_STATUS , "Initialize Element Status"}, - {SCSI_SMC2_INITIALIZE_ELEMENT_STATUS_RANGE, "Initialize Element Status With Range"}, + {SCSI_SMC_EXCHANGE_MEDIUM , "Exchange Medium"}, + {SCSI_SMC_INITIALIZE_ELEMENT_STATUS , "Initialize Element Status"}, + {SCSI_SMC_INITIALIZE_ELEMENT_STATUS_RANGE , "Initialize Element Status With Range"}, {SCSI_SPC2_INQUIRY , "Inquiry"}, {SCSI_SPC2_LOGSELECT , "Log Select"}, {SCSI_SPC2_LOGSENSE , "Log Sense"}, @@ -460,28 +461,28 @@ const value_string scsi_smc_vals[] = { {SCSI_SPC2_MODESELECT10 , "Mode Select(10)"}, {SCSI_SPC2_MODESENSE6 , "Mode Sense(6)"}, {SCSI_SPC2_MODESENSE10 , "Mode Sense(10)"}, - {SCSI_SMC2_MOVE_MEDIUM , "Move Medium"}, - {SCSI_SMC2_MOVE_MEDIUM_ATTACHED , "Move Medium Attached"}, - {SCSI_SMC2_OPENCLOSE_ELEMENT , "Open/Close Import/Export Element"}, + {SCSI_SMC_MOVE_MEDIUM , "Move Medium"}, + {SCSI_SMC_MOVE_MEDIUM_ATTACHED , "Move Medium Attached"}, + {SCSI_SMC_OPENCLOSE_ELEMENT , "Open/Close Import/Export Element"}, {SCSI_SPC2_PERSRESVIN , "Persistent Reserve In"}, {SCSI_SPC2_PERSRESVOUT , "Persistent Reserve Out"}, - {SCSI_SMC2_POSITION_TO_ELEMENT , "Position To Element"}, + {SCSI_SMC_POSITION_TO_ELEMENT , "Position To Element"}, {SCSI_SPC2_PREVMEDREMOVAL , "Prevent/Allow Medium Removal"}, - {SCSI_SMC2_READ_ATTRIBUTE , "Read Attribute"}, - {SCSI_SMC2_READ_ELEMENT_STATUS , "Read Element Status"}, - {SCSI_SMC2_READ_ELEMENT_STATUS_ATTACHED , "Read Element Status Attached"}, + {SCSI_SMC_READ_ATTRIBUTE , "Read Attribute"}, + {SCSI_SMC_READ_ELEMENT_STATUS , "Read Element Status"}, + {SCSI_SMC_READ_ELEMENT_STATUS_ATTACHED , "Read Element Status Attached"}, {SCSI_SPC2_RELEASE6 , "Release(6)"}, {SCSI_SPC2_RELEASE10 , "Release(10)"}, {SCSI_SPC2_REPORTLUNS , "Report LUNs"}, - {SCSI_SMC2_REPORT_VOLUME_TYPES_SUPPORTED , "Report Volume Types Supported"}, + {SCSI_SMC_REPORT_VOLUME_TYPES_SUPPORTED , "Report Volume Types Supported"}, {SCSI_SPC2_REQSENSE , "Request Sense"}, - {SCSI_SMC2_REQUEST_VOLUME_ELEMENT_ADDRESS , "Request Volume Element Address"}, + {SCSI_SMC_REQUEST_VOLUME_ELEMENT_ADDRESS , "Request Volume Element Address"}, {SCSI_SPC2_RESERVE6 , "Reserve(6)"}, {SCSI_SPC2_RESERVE10 , "Reserve(10)"}, - {SCSI_SMC2_SEND_VOLUME_TAG , "Send Volume Tag"}, + {SCSI_SMC_SEND_VOLUME_TAG , "Send Volume Tag"}, {SCSI_SPC2_SENDDIAG , "Send Diagnostic"}, {SCSI_SPC2_TESTUNITRDY , "Test Unit Ready"}, - {SCSI_SMC2_WRITE_ATTRIBUTE , "Write Attribute"}, + {SCSI_SMC_WRITE_ATTRIBUTE , "Write Attribute"}, {SCSI_SPC2_WRITEBUFFER , "Write Buffer"}, {0, NULL}, }; @@ -652,9 +653,9 @@ scsi_cdb_table_t scsi_smc_table[256] = { /*SMC 0xa2*/{NULL}, /*SMC 0xa3*/{NULL}, /*SMC 0xa4*/{NULL}, -/*SMC 0xa5*/{dissect_smc2_movemedium}, +/*SMC 0xa5*/{dissect_smc_movemedium}, /*SMC 0xa6*/{NULL}, -/*SMC 0xa7*/{dissect_smc2_movemedium}, +/*SMC 0xa7*/{dissect_smc_movemedium}, /*SMC 0xa8*/{NULL}, /*SMC 0xa9*/{NULL}, /*SMC 0xaa*/{NULL}, @@ -667,11 +668,11 @@ scsi_cdb_table_t scsi_smc_table[256] = { /*SMC 0xb1*/{NULL}, /*SMC 0xb2*/{NULL}, /*SMC 0xb3*/{NULL}, -/*SMC 0xb4*/{dissect_smc2_readelementstatus}, +/*SMC 0xb4*/{dissect_smc_readelementstatus}, /*SMC 0xb5*/{NULL}, /*SMC 0xb6*/{NULL}, /*SMC 0xb7*/{NULL}, -/*SMC 0xb8*/{dissect_smc2_readelementstatus}, +/*SMC 0xb8*/{dissect_smc_readelementstatus}, /*SMC 0xb9*/{NULL}, /*SMC 0xba*/{NULL}, /*SMC 0xbb*/{NULL}, diff --git a/epan/dissectors/packet-scsi-smc.h b/epan/dissectors/packet-scsi-smc.h index 93bfefd343..839aec7476 100644 --- a/epan/dissectors/packet-scsi-smc.h +++ b/epan/dissectors/packet-scsi-smc.h @@ -30,22 +30,22 @@ #define __PACKET_SCSI_SMC_H_ /* SMC Commands */ -#define SCSI_SMC2_EXCHANGE_MEDIUM 0x40 -#define SCSI_SMC2_INITIALIZE_ELEMENT_STATUS 0x07 -#define SCSI_SMC2_INITIALIZE_ELEMENT_STATUS_RANGE 0x37 -#define SCSI_SMC2_MOVE_MEDIUM 0xA5 -#define SCSI_SMC2_MOVE_MEDIUM_ATTACHED 0xA7 -#define SCSI_SMC2_OPENCLOSE_ELEMENT 0x1B -#define SCSI_SMC2_POSITION_TO_ELEMENT 0x2B -#define SCSI_SMC2_READ_ATTRIBUTE 0x8C -#define SCSI_SMC2_READ_ELEMENT_STATUS 0xB8 -#define SCSI_SMC2_READ_ELEMENT_STATUS_ATTACHED 0xB4 -#define SCSI_SMC2_REPORT_VOLUME_TYPES_SUPPORTED 0x44 -#define SCSI_SMC2_REQUEST_VOLUME_ELEMENT_ADDRESS 0xB5 -#define SCSI_SMC2_SEND_VOLUME_TAG 0xB6 -#define SCSI_SMC2_WRITE_ATTRIBUTE 0x8D -void dissect_smc2_movemedium (tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, guint offset, gboolean isreq, gboolean iscdb, guint payload_len _U_, scsi_task_data_t *cdata _U_); -void dissect_smc2_readelementstatus (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, guint offset, gboolean isreq, gboolean iscdb, guint payload_len _U_, scsi_task_data_t *cdata _U_); +#define SCSI_SMC_EXCHANGE_MEDIUM 0x40 +#define SCSI_SMC_INITIALIZE_ELEMENT_STATUS 0x07 +#define SCSI_SMC_INITIALIZE_ELEMENT_STATUS_RANGE 0x37 +#define SCSI_SMC_MOVE_MEDIUM 0xA5 +#define SCSI_SMC_MOVE_MEDIUM_ATTACHED 0xA7 +#define SCSI_SMC_OPENCLOSE_ELEMENT 0x1B +#define SCSI_SMC_POSITION_TO_ELEMENT 0x2B +#define SCSI_SMC_READ_ATTRIBUTE 0x8C +#define SCSI_SMC_READ_ELEMENT_STATUS 0xB8 +#define SCSI_SMC_READ_ELEMENT_STATUS_ATTACHED 0xB4 +#define SCSI_SMC_REPORT_VOLUME_TYPES_SUPPORTED 0x44 +#define SCSI_SMC_REQUEST_VOLUME_ELEMENT_ADDRESS 0xB5 +#define SCSI_SMC_SEND_VOLUME_TAG 0xB6 +#define SCSI_SMC_WRITE_ATTRIBUTE 0x8D +void dissect_smc_movemedium (tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, guint offset, gboolean isreq, gboolean iscdb, guint payload_len _U_, scsi_task_data_t *cdata _U_); +void dissect_smc_readelementstatus (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, guint offset, gboolean isreq, gboolean iscdb, guint payload_len _U_, scsi_task_data_t *cdata _U_); extern int hf_scsi_smc_opcode; diff --git a/epan/dissectors/packet-scsi-ssc.c b/epan/dissectors/packet-scsi-ssc.c index 94ab79f7c5..46b70a0cde 100644 --- a/epan/dissectors/packet-scsi-ssc.c +++ b/epan/dissectors/packet-scsi-ssc.c @@ -1061,16 +1061,16 @@ const value_string scsi_ssc_vals[] = { {SCSI_SPC2_MODESELECT10 , "Mode Select(10)"}, {SCSI_SPC2_MODESENSE6 , "Mode Sense(6)"}, {SCSI_SPC2_MODESENSE10 , "Mode Sense(10)"}, - {SCSI_SMC2_MOVE_MEDIUM , "Move Medium"}, - {SCSI_SMC2_MOVE_MEDIUM_ATTACHED , "Move Medium Attached"}, + {SCSI_SMC_MOVE_MEDIUM , "Move Medium"}, + {SCSI_SMC_MOVE_MEDIUM_ATTACHED , "Move Medium Attached"}, {SCSI_SPC2_PERSRESVIN , "Persistent Reserve In"}, {SCSI_SPC2_PERSRESVOUT , "Persistent Reserve Out"}, {SCSI_SPC2_PREVMEDREMOVAL , "Prevent/Allow Medium Removal"}, {SCSI_SSC_READ6 , "Read(6)"}, {SCSI_SSC_READ_16 , "Read(16)"}, {SCSI_SSC_READ_BLOCK_LIMITS , "Read Block Limits"}, - {SCSI_SMC2_READ_ELEMENT_STATUS , "Read Element Status"}, - {SCSI_SMC2_READ_ELEMENT_STATUS_ATTACHED, "Read Element Status Attached"}, + {SCSI_SMC_READ_ELEMENT_STATUS , "Read Element Status"}, + {SCSI_SMC_READ_ELEMENT_STATUS_ATTACHED , "Read Element Status Attached"}, {SCSI_SSC_READ_POSITION , "Read Position"}, {SCSI_SSC_READ_REVERSE_6 , "Read Reverse(6)"}, {SCSI_SSC_READ_REVERSE_16 , "Read Reverse(16)"}, @@ -1261,9 +1261,9 @@ scsi_cdb_table_t scsi_ssc_table[256] = { /*SSC 0xa2*/{NULL}, /*SSC 0xa3*/{NULL}, /*SSC 0xa4*/{NULL}, -/*SSC 0xa5*/{dissect_smc2_movemedium}, +/*SSC 0xa5*/{dissect_smc_movemedium}, /*SSC 0xa6*/{NULL}, -/*SSC 0xa7*/{dissect_smc2_movemedium}, +/*SSC 0xa7*/{dissect_smc_movemedium}, /*SSC 0xa8*/{NULL}, /*SSC 0xa9*/{NULL}, /*SSC 0xaa*/{NULL}, @@ -1276,11 +1276,11 @@ scsi_cdb_table_t scsi_ssc_table[256] = { /*SSC 0xb1*/{NULL}, /*SSC 0xb2*/{NULL}, /*SSC 0xb3*/{NULL}, -/*SSC 0xb4*/{dissect_smc2_readelementstatus}, +/*SSC 0xb4*/{dissect_smc_readelementstatus}, /*SSC 0xb5*/{NULL}, /*SSC 0xb6*/{NULL}, /*SSC 0xb7*/{NULL}, -/*SSC 0xb8*/{dissect_smc2_readelementstatus}, +/*SSC 0xb8*/{dissect_smc_readelementstatus}, /*SSC 0xb9*/{NULL}, /*SSC 0xba*/{NULL}, /*SSC 0xbb*/{NULL}, diff --git a/epan/dissectors/packet-scsi.c b/epan/dissectors/packet-scsi.c index de6bc83d20..d7515a0a27 100644 --- a/epan/dissectors/packet-scsi.c +++ b/epan/dissectors/packet-scsi.c @@ -324,10 +324,10 @@ typedef guint32 scsi_cmnd_type; typedef guint32 scsi_device_type; /* Valid SCSI Command Types */ -#define SCSI_CMND_SPC2 1 +#define SCSI_CMND_SPC 1 #define SCSI_CMND_SBC 2 -#define SCSI_CMND_SSC2 3 -#define SCSI_CMND_SMC2 4 +#define SCSI_CMND_SSC 3 +#define SCSI_CMND_SMC 4 #define SCSI_CMND_MMC 5 /* SPC and SPC-2 Commands */ @@ -934,14 +934,14 @@ static const value_string scsi_ssc2_modepage_val[] = { {0, NULL}, }; -#define SCSI_SMC2_MODEPAGE_EAA 0x1D /* element address assignment */ -#define SCSI_SMC2_MODEPAGE_TRANGEOM 0x1E /* transport geometry parameters */ -#define SCSI_SMC2_MODEPAGE_DEVCAP 0x1F /* device capabilities */ +#define SCSI_SMC_MODEPAGE_EAA 0x1D /* element address assignment */ +#define SCSI_SMC_MODEPAGE_TRANGEOM 0x1E /* transport geometry parameters */ +#define SCSI_SMC_MODEPAGE_DEVCAP 0x1F /* device capabilities */ -static const value_string scsi_smc2_modepage_val[] = { - {SCSI_SMC2_MODEPAGE_EAA, "Element Address Assignment"}, - {SCSI_SMC2_MODEPAGE_TRANGEOM, "Transport Geometry Parameters"}, - {SCSI_SMC2_MODEPAGE_DEVCAP, "Device Capabilities"}, +static const value_string scsi_smc_modepage_val[] = { + {SCSI_SMC_MODEPAGE_EAA, "Element Address Assignment"}, + {SCSI_SMC_MODEPAGE_TRANGEOM, "Transport Geometry Parameters"}, + {SCSI_SMC_MODEPAGE_DEVCAP, "Device Capabilities"}, {0x3F, "Return All Mode Pages"}, {0, NULL}, }; @@ -2985,14 +2985,14 @@ dissect_scsi_mmc5_modepage (tvbuff_t *tvb _U_, packet_info *pinfo _U_, } static gboolean -dissect_scsi_smc2_modepage (tvbuff_t *tvb, packet_info *pinfo _U_, +dissect_scsi_smc_modepage (tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, guint offset, guint8 pcode) { guint8 flags; guint8 param_list_len; switch (pcode) { - case SCSI_SMC2_MODEPAGE_EAA: + case SCSI_SMC_MODEPAGE_EAA: param_list_len = tvb_get_guint8 (tvb, offset+2); proto_tree_add_text (tree, tvb, offset+2, 1, "Parameter List Length: %u", param_list_len); @@ -3036,9 +3036,9 @@ dissect_scsi_smc2_modepage (tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree_add_text (tree, tvb, offset+17, 2, "Number of Data Transfer Elements: %u", tvb_get_ntohs (tvb, offset+17)); break; - case SCSI_SMC2_MODEPAGE_TRANGEOM: + case SCSI_SMC_MODEPAGE_TRANGEOM: return FALSE; - case SCSI_SMC2_MODEPAGE_DEVCAP: + case SCSI_SMC_MODEPAGE_DEVCAP: flags = tvb_get_guint8 (tvb, offset+2); proto_tree_add_text (tree, tvb, offset+2, 1, "STORDT: %u, STORI/E: %u, STORST: %u, STORMT: %u", @@ -3128,9 +3128,9 @@ dissect_scsi_modepage (tvbuff_t *tvb, packet_info *pinfo, break; case SCSI_DEV_SMC: - modepage_val = scsi_smc2_modepage_val; + modepage_val = scsi_smc_modepage_val; hf_pagecode = hf_scsi_smcpagecode; - dissect_modepage = dissect_scsi_smc2_modepage; + dissect_modepage = dissect_scsi_smc_modepage; break; case SCSI_DEV_CDROM: @@ -4842,7 +4842,7 @@ proto_register_scsi (void) VALS (scsi_mmc5_modepage_val), 0x3F, "", HFILL}}, { &hf_scsi_smcpagecode, {"SMC-2 Page Code", "scsi.mode.smc.pagecode", FT_UINT8, BASE_HEX, - VALS (scsi_smc2_modepage_val), 0x3F, "", HFILL}}, + VALS (scsi_smc_modepage_val), 0x3F, "", HFILL}}, { &hf_scsi_modesns_flags, {"Flags", "scsi.mode.flags", FT_UINT8, BASE_HEX, NULL, 0x0, "", HFILL}}, |