break the SCSI SBC commandset out into its own dissector
svn path=/trunk/; revision=20000
This commit is contained in:
parent
34cf894ed2
commit
3dca5cbed9
|
@ -594,6 +594,7 @@ DISSECTOR_SRC = \
|
|||
packet-scsi.c \
|
||||
packet-scsi-mmc.c \
|
||||
packet-scsi-osd.c \
|
||||
packet-scsi-sbc.c \
|
||||
packet-scsi-smc.c \
|
||||
packet-scsi-ssc.c \
|
||||
packet-sctp.c \
|
||||
|
@ -947,6 +948,7 @@ DISSECTOR_INCLUDES = \
|
|||
packet-scsi.h \
|
||||
packet-scsi-mmc.h \
|
||||
packet-scsi-osd.h \
|
||||
packet-scsi-sbc.h \
|
||||
packet-scsi-smc.h \
|
||||
packet-scsi-ssc.h \
|
||||
packet-sctp.h \
|
||||
|
|
|
@ -38,6 +38,7 @@
|
|||
#include "packet-scsi.h"
|
||||
#include "packet-fc.h"
|
||||
#include "packet-scsi-mmc.h"
|
||||
#include "packet-scsi-sbc.h"
|
||||
|
||||
|
||||
static int proto_scsi_mmc = -1;
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,94 @@
|
|||
/* packet-scsi-sbc.h
|
||||
* Dissector for the SCSI SBC commandset
|
||||
* Extracted from packet-scsi.h
|
||||
*
|
||||
* Dinesh G Dutt (ddutt@cisco.com)
|
||||
* Ronnie sahlberg 2006
|
||||
*
|
||||
* $Id$
|
||||
*
|
||||
* Wireshark - Network traffic analyzer
|
||||
* By Gerald Combs <gerald@wireshark.org>
|
||||
* Copyright 2002 Gerald Combs
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation; either version 2
|
||||
* of the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#ifndef __PACKET_SCSI_SBC_H_
|
||||
#define __PACKET_SCSI_SBC_H_
|
||||
|
||||
/* SBC Commands */
|
||||
#define SCSI_SBC2_FORMATUNIT 0x04
|
||||
#define SCSI_SBC2_LOCKUNLKCACHE10 0x36
|
||||
#define SCSI_SBC2_LOCKUNLKCACHE16 0x92
|
||||
#define SCSI_SBC2_PREFETCH10 0x34
|
||||
#define SCSI_SBC2_PREFETCH16 0x90
|
||||
#define SCSI_SBC2_READ6 0x08
|
||||
#define SCSI_SBC2_READ10 0x28
|
||||
#define SCSI_SBC2_READ12 0xA8
|
||||
#define SCSI_SBC2_READ16 0x88
|
||||
#define SCSI_SBC2_READCAPACITY10 0x25
|
||||
#define SCSI_SBC2_SERVICEACTIONIN16 0x9E
|
||||
#define SCSI_SBC2_READDEFDATA10 0x37
|
||||
#define SCSI_SBC2_READDEFDATA12 0xB7
|
||||
#define SCSI_SBC2_READLONG 0x3E
|
||||
#define SCSI_SBC2_REASSIGNBLKS 0x07
|
||||
#define SCSI_SBC2_REBUILD16 0x81
|
||||
#define SCSI_SBC2_REBUILD32 0x7F
|
||||
#define SCSI_SBC2_REGENERATE16 0x82
|
||||
#define SCSI_SBC2_REGENERATE32 0x7F
|
||||
#define SCSI_SBC2_SEEK10 0x2B
|
||||
#define SCSI_SBC2_SETLIMITS10 0x33
|
||||
#define SCSI_SBC2_SETLIMITS12 0xB3
|
||||
#define SCSI_SBC2_STARTSTOPUNIT 0x1B
|
||||
#define SCSI_SBC2_SYNCCACHE10 0x35
|
||||
#define SCSI_SBC2_SYNCCACHE16 0x91
|
||||
#define SCSI_SBC2_VERIFY10 0x2F
|
||||
#define SCSI_SBC2_VERIFY12 0xAF
|
||||
#define SCSI_SBC2_VERIFY16 0x8F
|
||||
#define SCSI_SBC2_WRITE6 0x0A
|
||||
#define SCSI_SBC2_WRITE10 0x2A
|
||||
#define SCSI_SBC2_WRITE12 0xAA
|
||||
#define SCSI_SBC2_WRITE16 0x8A
|
||||
#define SCSI_SBC2_WRITENVERIFY10 0x2E
|
||||
#define SCSI_SBC2_WRITENVERIFY12 0xAE
|
||||
#define SCSI_SBC2_WRITENVERIFY16 0x8E
|
||||
#define SCSI_SBC2_WRITELONG 0x3F
|
||||
#define SCSI_SBC2_WRITESAME10 0x41
|
||||
#define SCSI_SBC2_WRITESAME16 0x93
|
||||
#define SCSI_SBC2_XDREAD10 0x52
|
||||
#define SCSI_SBC2_XDREAD32 0x7F
|
||||
#define SCSI_SBC2_XDWRITE10 0x50
|
||||
#define SCSI_SBC2_XDWRITE32 0x7F
|
||||
#define SCSI_SBC2_XDWRITEREAD10 0x53
|
||||
#define SCSI_SBC2_XDWRITEREAD32 0x7F
|
||||
#define SCSI_SBC2_XDWRITEEXTD16 0x80
|
||||
#define SCSI_SBC2_XDWRITEEXTD32 0x7F
|
||||
#define SCSI_SBC2_XPWRITE10 0x51
|
||||
#define SCSI_SBC2_XPWRITE32 0x7F
|
||||
|
||||
|
||||
|
||||
void dissect_sbc2_startstopunit (tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, guint offset, gboolean isreq _U_, gboolean iscdb, guint payload_len _U_, scsi_task_data_t *cdata _U_);
|
||||
void dissect_sbc2_readwrite12 (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_sbc2_readwrite10 (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_sbc2_readcapacity10 (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_);
|
||||
|
||||
|
||||
extern int hf_scsi_sbc_opcode;
|
||||
extern scsi_cdb_table_t scsi_sbc_table[256];
|
||||
WS_VAR_IMPORT const value_string scsi_sbc_vals[];
|
||||
|
||||
#endif
|
File diff suppressed because it is too large
Load Diff
|
@ -134,7 +134,6 @@ typedef struct _scsi_cdb_table_t {
|
|||
#define SCSI_SPC2_RESERVE10 0x56
|
||||
#define SCSI_SPC2_SENDDIAG 0x1D
|
||||
#define SCSI_SPC2_SETDEVICEID 0xA4
|
||||
#define SCSI_SBC2_STARTSTOPUNIT 0x1B
|
||||
#define SCSI_SPC2_TESTUNITRDY 0x00
|
||||
#define SCSI_SPC2_WRITEBUFFER 0x3B
|
||||
#define SCSI_SPC2_VARLENCDB 0x7F
|
||||
|
@ -151,11 +150,7 @@ void dissect_spc3_persistentreserveout(tvbuff_t *tvb, packet_info *pinfo _U_, pr
|
|||
void dissect_spc3_reportluns(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_spc3_testunitready (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_spc3_requestsense (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_sbc2_startstopunit (tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, guint offset, gboolean isreq _U_, gboolean iscdb, guint payload_len _U_, scsi_task_data_t *cdata _U_);
|
||||
void dissect_spc3_preventallowmediaremoval (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_sbc2_readwrite12 (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_sbc2_readwrite10 (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_sbc2_readcapacity10 (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_spc3_writebuffer (tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, guint offset, gboolean isreq, gboolean iscdb _U_, guint payload_len _U_, scsi_task_data_t *cdata _U_);
|
||||
void dissect_spc2_reserve6 (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_spc2_release6 (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_);
|
||||
|
@ -213,7 +208,6 @@ void dissect_scsi_payload (tvbuff_t *, packet_info *, proto_tree *,
|
|||
guint32 relative_offset);
|
||||
void dissect_scsi_snsinfo (tvbuff_t *, packet_info *, proto_tree *, guint, guint, itlq_nexus_t *, itl_nexus_t *);
|
||||
|
||||
WS_VAR_IMPORT const value_string scsi_sbc2_vals[];
|
||||
WS_VAR_IMPORT const value_string scsi_mmc_vals[];
|
||||
|
||||
extern int hf_scsi_control;
|
||||
|
|
|
@ -650,7 +650,7 @@ rtp_payload_type_vals DATA
|
|||
rtp_payload_type_short_vals DATA
|
||||
scsi_mmc_vals DATA
|
||||
scsi_smc_vals DATA
|
||||
scsi_sbc2_vals DATA
|
||||
scsi_sbc_vals DATA
|
||||
scsi_ssc_vals DATA
|
||||
scsi_osd_vals DATA
|
||||
set_actual_length
|
||||
|
|
|
@ -52,6 +52,7 @@
|
|||
#include <epan/conversation.h>
|
||||
#include <epan/dissectors/packet-scsi.h>
|
||||
#include <epan/dissectors/packet-fc.h>
|
||||
#include <epan/dissectors/packet-scsi-sbc.h>
|
||||
#include <epan/dissectors/packet-scsi-ssc.h>
|
||||
#include <epan/dissectors/packet-scsi-smc.h>
|
||||
#include <epan/dissectors/packet-scsi-osd.h>
|
||||
|
@ -206,7 +207,7 @@ gtk_scsistat_init(const char *optarg, void* userdata _U_)
|
|||
switch(program){
|
||||
case SCSI_DEV_SBC:
|
||||
rs->prog="SBC (disk)";
|
||||
rs->cdbnames=scsi_sbc2_vals;
|
||||
rs->cdbnames=scsi_sbc_vals;
|
||||
hf_name="scsi.sbc.opcode";
|
||||
break;
|
||||
case SCSI_DEV_SSC:
|
||||
|
|
Loading…
Reference in New Issue