![Michael Mann](/assets/img/avatar_default.png)
All "generated" source was manually modified (with the power of search/replace), but I believe the "source input" files have been adjusted (checked into revs 53098 and 53099) to reflect the necessary changes (with possible whitespace formatting differences). The Microsoft compiler doesn't flag "unused function parameters", so I apologize in advance if I may have missed a few. The "dcerpc_info* di" parameter is used in almost every function. svn path=/trunk/; revision=53100
2971 lines
99 KiB
C
2971 lines
99 KiB
C
/* DO NOT EDIT
|
|
* This dissector is autogenerated
|
|
*/
|
|
|
|
/* packet-dcerpc-butc.c
|
|
* Routines for BUTC packet disassembly
|
|
*
|
|
* $Id$
|
|
*
|
|
* Wireshark - Network traffic analyzer
|
|
* By Gerald Combs <gerald@wireshark.org>
|
|
* Copyright 1998 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
|
*/
|
|
|
|
#include "config.h"
|
|
|
|
#include <glib.h>
|
|
#include <string.h>
|
|
|
|
#include <epan/packet.h>
|
|
#include "packet-dcerpc.h"
|
|
#include "packet-dcerpc-nt.h"
|
|
#include "packet-windows-common.h"
|
|
#include "packet-dcerpc-butc.h"
|
|
|
|
static int proto_butc = -1;
|
|
|
|
|
|
/* INCLUDED FILE : ETH_HF */
|
|
static int hf_butc_opnum = -1;
|
|
static int hf_butc_rc = -1;
|
|
static int hf_butc_Restore_flags_TC_RESTORE_CREATE = -1;
|
|
static int hf_butc_Restore_flags_TC_RESTORE_INCR = -1;
|
|
static int hf_butc_afsNetAddr_type = -1;
|
|
static int hf_butc_afsNetAddr_data = -1;
|
|
static int hf_butc_tc_dumpDesc_vid = -1;
|
|
static int hf_butc_tc_dumpDesc_name = -1;
|
|
static int hf_butc_tc_dumpDesc_partition = -1;
|
|
static int hf_butc_tc_dumpDesc_date = -1;
|
|
static int hf_butc_tc_dumpDesc_cloneDate = -1;
|
|
static int hf_butc_tc_dumpDesc_hostAddr = -1;
|
|
static int hf_butc_tc_dumpDesc_spare1 = -1;
|
|
static int hf_butc_tc_dumpDesc_spare2 = -1;
|
|
static int hf_butc_tc_dumpDesc_spare3 = -1;
|
|
static int hf_butc_tc_dumpDesc_spare4 = -1;
|
|
static int hf_butc_tc_restoreDesc_frag = -1;
|
|
static int hf_butc_tc_restoreDesc_tapeName = -1;
|
|
static int hf_butc_tc_restoreDesc_position = -1;
|
|
static int hf_butc_tc_restoreDesc_origVid = -1;
|
|
static int hf_butc_tc_restoreDesc_vid = -1;
|
|
static int hf_butc_tc_restoreDesc_partition = -1;
|
|
static int hf_butc_tc_restoreDesc_flags = -1;
|
|
static int hf_butc_tc_restoreDesc_hostAddr = -1;
|
|
static int hf_butc_tc_restoreDesc_realDumpId = -1;
|
|
static int hf_butc_tc_restoreDesc_spare2 = -1;
|
|
static int hf_butc_tc_restoreDesc_spare3 = -1;
|
|
static int hf_butc_tc_restoreDesc_spare4 = -1;
|
|
static int hf_butc_tc_restoreDesc_oldName = -1;
|
|
static int hf_butc_tc_restoreDesc_newName = -1;
|
|
static int hf_butc_tc_dumpStat_dumpID = -1;
|
|
static int hf_butc_tc_dumpStat_bytesDumped = -1;
|
|
static int hf_butc_tc_dumpStat_volumeBeingDumped = -1;
|
|
static int hf_butc_tc_dumpStat_numVolErrs = -1;
|
|
static int hf_butc_tc_dumpStat_flags = -1;
|
|
static int hf_butc_tc_dumpStat_spare1 = -1;
|
|
static int hf_butc_tc_dumpStat_spare2 = -1;
|
|
static int hf_butc_tc_dumpStat_spare3 = -1;
|
|
static int hf_butc_tc_dumpStat_spare4 = -1;
|
|
static int hf_butc_tc_tapeLabel_size = -1;
|
|
static int hf_butc_tc_tapeLabel_size_ext = -1;
|
|
static int hf_butc_tc_tapeLabel_spare1 = -1;
|
|
static int hf_butc_tc_tapeLabel_spare2 = -1;
|
|
static int hf_butc_tc_tapeLabel_spare3 = -1;
|
|
static int hf_butc_tc_tapeLabel_spare4 = -1;
|
|
static int hf_butc_tc_tapeLabel_nameLen = -1;
|
|
static int hf_butc_tc_tapeLabel_name = -1;
|
|
static int hf_butc_tc_tapeSet_id = -1;
|
|
static int hf_butc_tc_tapeSet_tapeServer = -1;
|
|
static int hf_butc_tc_tapeSet_format = -1;
|
|
static int hf_butc_tc_tapeSet_maxTapes = -1;
|
|
static int hf_butc_tc_tapeSet_a = -1;
|
|
static int hf_butc_tc_tapeSet_b = -1;
|
|
static int hf_butc_tc_tapeSet_expDate = -1;
|
|
static int hf_butc_tc_tapeSet_expType = -1;
|
|
static int hf_butc_tc_tapeSet_spare1 = -1;
|
|
static int hf_butc_tc_tapeSet_spare2 = -1;
|
|
static int hf_butc_tc_tapeSet_spare3 = -1;
|
|
static int hf_butc_tc_tapeSet_spare4 = -1;
|
|
static int hf_butc_tc_tcInfo_tcVersion = -1;
|
|
static int hf_butc_tc_tcInfo_spare1 = -1;
|
|
static int hf_butc_tc_tcInfo_spare2 = -1;
|
|
static int hf_butc_tc_tcInfo_spare3 = -1;
|
|
static int hf_butc_tc_tcInfo_spare4 = -1;
|
|
static int hf_butc_tc_restoreArray_tc_restoreArray_len = -1;
|
|
static int hf_butc_tc_restoreArray_tc_restoreArray_val = -1;
|
|
static int hf_butc_tc_dumpArray_tc_dumpArray_len = -1;
|
|
static int hf_butc_tc_dumpArray_tc_dumpArray = -1;
|
|
static int hf_butc_tc_dumpInterface_dumpPath = -1;
|
|
static int hf_butc_tc_dumpInterface_volumeSetName = -1;
|
|
static int hf_butc_tc_dumpInterface_dumpName = -1;
|
|
static int hf_butc_tc_dumpInterface_tapeSet = -1;
|
|
static int hf_butc_tc_dumpInterface_parentDumpId = -1;
|
|
static int hf_butc_tc_dumpInterface_dumpLevel = -1;
|
|
static int hf_butc_tc_dumpInterface_spare1 = -1;
|
|
static int hf_butc_tc_dumpInterface_spare2 = -1;
|
|
static int hf_butc_tc_dumpInterface_spare3 = -1;
|
|
static int hf_butc_tc_dumpInterface_spare4 = -1;
|
|
static int hf_butc_tc_statusInfoSwitchVol_nKBytes = -1;
|
|
static int hf_butc_tc_statusInfoSwitchVol_volumeName = -1;
|
|
static int hf_butc_tc_statusInfoSwitchVol_volsFailed = -1;
|
|
static int hf_butc_tc_statusInfoSwitchVol_spare1 = -1;
|
|
static int hf_butc_tc_statusInfoSwitchLabel_tapeLabel = -1;
|
|
static int hf_butc_tc_statusInfoSwitchLabel_spare1 = -1;
|
|
static int hf_butc_tc_statusInfoSwitch_TCOP_NONE_none = -1;
|
|
static int hf_butc_tc_statusInfoSwitch_TCOP_DUMP_vol = -1;
|
|
static int hf_butc_tc_statusInfoSwitch_TCOP_RESTORE_vol = -1;
|
|
static int hf_butc_tc_statusInfoSwitch_TCOP_LABELTAPE_label = -1;
|
|
static int hf_butc_tc_statusInfoSwitch_TCOP_READLABEL_label = -1;
|
|
static int hf_butc_tc_statusInfoSwitch_TCOP_SCANTAPE_spare1 = -1;
|
|
static int hf_butc_tc_statusInfoSwitch_TCOP_STATUS_spare2 = -1;
|
|
static int hf_butc_tc_statusInfoSwitch_TCOP_SAVEDB_spare3 = -1;
|
|
static int hf_butc_tc_statusInfoSwitch_TCOP_RESTOREDB_spare4 = -1;
|
|
static int hf_butc_tc_statusInfoSwitch_TCOP_SPARE_spare5 = -1;
|
|
static int hf_butc_tciStatusS_taskName = -1;
|
|
static int hf_butc_tciStatusS_flags = -1;
|
|
static int hf_butc_tciStatusS_lastPolled = -1;
|
|
static int hf_butc_tciStatusS_info = -1;
|
|
static int hf_butc_tciStatusS_taskId = -1;
|
|
static int hf_butc_tciStatusS_spare2 = -1;
|
|
static int hf_butc_tciStatusS_spare3 = -1;
|
|
static int hf_butc_tciStatusS_spare4 = -1;
|
|
static int hf_butc_BUTC_PerformDump_tcdiPtr = -1;
|
|
static int hf_butc_BUTC_PerformDump_dumps = -1;
|
|
static int hf_butc_BUTC_PerformDump_dumpID = -1;
|
|
static int hf_butc_BUTC_PerformRestore_dumpSetName = -1;
|
|
static int hf_butc_BUTC_PerformRestore_restores = -1;
|
|
static int hf_butc_BUTC_PerformRestore_dumpID = -1;
|
|
static int hf_butc_BUTC_AbortDump_dumpID = -1;
|
|
static int hf_butc_BUTC_LabelTape_label = -1;
|
|
static int hf_butc_BUTC_LabelTape_taskId = -1;
|
|
static int hf_butc_BUTC_ReadLabel_taskId = -1;
|
|
static int hf_butc_BUTC_ScanDumps_addDbFlag = -1;
|
|
static int hf_butc_BUTC_ScanDumps_taskId = -1;
|
|
static int hf_butc_BUTC_TCInfo_tciptr = -1;
|
|
static int hf_butc_BUTC_SaveDb_taskId = -1;
|
|
static int hf_butc_BUTC_RestoreDb_taskId = -1;
|
|
static int hf_butc_BUTC_EndStatus_taskId = -1;
|
|
static int hf_butc_BUTC_GetStatus_taskId = -1;
|
|
static int hf_butc_BUTC_GetStatus_statusPtr = -1;
|
|
static int hf_butc_BUTC_RequestAbort_taskId = -1;
|
|
static int hf_butc_BUTC_ScanStatus_taskId = -1;
|
|
static int hf_butc_BUTC_ScanStatus_statusPtr = -1;
|
|
static int hf_butc_BUTC_ScanStatus_flags = -1;
|
|
/* END OF INCLUDED FILE : ETH_HF */
|
|
|
|
|
|
|
|
|
|
|
|
/* INCLUDED FILE : ETH_ETT */
|
|
static gint ett_butc = -1;
|
|
static gint ett_butc_Restore_flags = -1;
|
|
static gint ett_butc_afsNetAddr = -1;
|
|
static gint ett_butc_tc_dumpDesc = -1;
|
|
static gint ett_butc_tc_restoreDesc = -1;
|
|
static gint ett_butc_tc_dumpStat = -1;
|
|
static gint ett_butc_tc_tapeLabel = -1;
|
|
static gint ett_butc_tc_tapeSet = -1;
|
|
static gint ett_butc_tc_tcInfo = -1;
|
|
static gint ett_butc_tc_restoreArray = -1;
|
|
static gint ett_butc_tc_dumpArray = -1;
|
|
static gint ett_butc_tc_dumpInterface = -1;
|
|
static gint ett_butc_tc_statusInfoSwitchVol = -1;
|
|
static gint ett_butc_tc_statusInfoSwitchLabel = -1;
|
|
static gint ett_butc_tc_statusInfoSwitch = -1;
|
|
static gint ett_butc_tciStatusS = -1;
|
|
/* END OF INCLUDED FILE : ETH_ETT */
|
|
|
|
|
|
|
|
static int
|
|
butc_dissect_NameString_t(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di _U_, guint8 *drep, int hf_index, guint32 param _U_)
|
|
{
|
|
offset=dissect_ndr_vstring(tvb, offset, pinfo, tree, di, drep, 1, hf_index, FALSE, NULL);
|
|
return offset;
|
|
}
|
|
|
|
|
|
|
|
/* INCLUDED FILE : ETH_CODE */
|
|
static e_uuid_t uuid_dcerpc_butc = {
|
|
0x1d193c08, 0x000b, 0x11ca,
|
|
{ 0xba, 0x1d, 0x02, 0x60, 0x8c, 0x2e, 0xa9, 0x6e}
|
|
};
|
|
|
|
static guint16 ver_butc = 4;
|
|
|
|
static const true_false_string TC_RESTORE_CREATE_tfs = {
|
|
"TC_RESTORE_CREATE is SET",
|
|
"TC_RESTORE_CREATE is NOT set"
|
|
};
|
|
|
|
static const true_false_string TC_RESTORE_INCR_tfs = {
|
|
"TC_RESTORE_INCR is SET",
|
|
"TC_RESTORE_INCR is NOT set"
|
|
};
|
|
|
|
|
|
int
|
|
butc_dissect_Restore_flags(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, dcerpc_info* di, guint8 *drep, int hf_index, guint32 param _U_)
|
|
{
|
|
proto_item *item=NULL;
|
|
proto_tree *tree=NULL;
|
|
guint32 flags;
|
|
|
|
ALIGN_TO_4_BYTES;
|
|
|
|
if(parent_tree){
|
|
item=proto_tree_add_item(parent_tree, hf_index, tvb, offset, 4, ENC_LITTLE_ENDIAN);
|
|
tree=proto_item_add_subtree(item, ett_butc_Restore_flags);
|
|
}
|
|
|
|
offset=dissect_ndr_uint32(tvb, offset, pinfo, NULL, di, drep, -1, &flags);
|
|
|
|
|
|
proto_tree_add_boolean(tree, hf_butc_Restore_flags_TC_RESTORE_CREATE, tvb, offset-4, 4, flags);
|
|
if(flags&0x00000001){
|
|
proto_item_append_text(item, " TC_RESTORE_CREATE");
|
|
}
|
|
flags&=(~0x00000001);
|
|
|
|
proto_tree_add_boolean(tree, hf_butc_Restore_flags_TC_RESTORE_INCR, tvb, offset-4, 4, flags);
|
|
if(flags&0x00000002){
|
|
proto_item_append_text(item, " TC_RESTORE_INCR");
|
|
}
|
|
flags&=(~0x00000002);
|
|
|
|
if(flags){
|
|
proto_item_append_text(item, "UNKNOWN-FLAGS");
|
|
}
|
|
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_uint16(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di _U_, guint8 *drep, int hf_index, guint32 param _U_)
|
|
{
|
|
offset=dissect_ndr_uint16(tvb, offset, pinfo, tree, di, drep, hf_index, NULL);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_afsNetAddr_type(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint16(tvb, offset, pinfo, tree, di, drep, hf_butc_afsNetAddr_type, param);
|
|
return offset;
|
|
}
|
|
|
|
|
|
static int
|
|
butc_dissect_uint8(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di _U_, guint8 *drep, int hf_index, guint32 param _U_)
|
|
{
|
|
offset=dissect_ndr_uint8(tvb, offset, pinfo, tree, di, drep, hf_index, NULL);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_afsNetAddr_data(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint8(tvb, offset, pinfo, tree, di, drep, hf_butc_afsNetAddr_data, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
fixedarray_butc_dissect_afsNetAddr_data(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
int count=14;
|
|
while(count--){
|
|
offset=butc_dissect_afsNetAddr_data(tvb, offset, pinfo, tree, di, drep);
|
|
}
|
|
|
|
return offset;
|
|
}
|
|
|
|
|
|
int
|
|
butc_dissect_afsNetAddr(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, dcerpc_info* di, guint8 *drep, int hf_index, guint32 param _U_)
|
|
{
|
|
proto_item *item=NULL;
|
|
proto_tree *tree=NULL;
|
|
int old_offset;
|
|
|
|
ALIGN_TO_2_BYTES;
|
|
|
|
old_offset=offset;
|
|
if(parent_tree){
|
|
item=proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
|
|
tree=proto_item_add_subtree(item, ett_butc_afsNetAddr);
|
|
}
|
|
|
|
offset=butc_dissect_afsNetAddr_type(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=fixedarray_butc_dissect_afsNetAddr_data(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
proto_item_set_len(item, offset-old_offset);
|
|
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_udlong(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di _U_, guint8 *drep, int hf_index, guint32 param _U_)
|
|
{
|
|
|
|
offset=dissect_ndr_duint32(tvb, offset, pinfo, tree, di, drep, hf_index, NULL);
|
|
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpDesc_vid(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_udlong(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpDesc_vid, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpDesc_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_NameString_t(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpDesc_name, param);
|
|
return offset;
|
|
}
|
|
|
|
|
|
static int
|
|
butc_dissect_int32(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di _U_, guint8 *drep, int hf_index, guint32 param _U_)
|
|
{
|
|
offset=dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, NULL);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpDesc_partition(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_int32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpDesc_partition, param);
|
|
return offset;
|
|
}
|
|
|
|
|
|
static int
|
|
butc_dissect_time_t(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di _U_, guint8 *drep, int hf_index, guint32 param _U_)
|
|
{
|
|
|
|
offset=dissect_ndr_time_t(tvb, offset, pinfo, tree, di, drep, hf_index, NULL);
|
|
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpDesc_date(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_time_t(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpDesc_date, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpDesc_cloneDate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_time_t(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpDesc_cloneDate, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpDesc_hostAddr(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_afsNetAddr(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpDesc_hostAddr, param);
|
|
return offset;
|
|
}
|
|
|
|
|
|
static int
|
|
butc_dissect_uint32(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di _U_, guint8 *drep, int hf_index, guint32 param _U_)
|
|
{
|
|
offset=dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_index, NULL);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpDesc_spare1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpDesc_spare1, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpDesc_spare2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpDesc_spare2, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpDesc_spare3(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpDesc_spare3, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpDesc_spare4(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpDesc_spare4, param);
|
|
return offset;
|
|
}
|
|
|
|
|
|
int
|
|
butc_dissect_tc_dumpDesc(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, dcerpc_info* di, guint8 *drep, int hf_index, guint32 param _U_)
|
|
{
|
|
proto_item *item=NULL;
|
|
proto_tree *tree=NULL;
|
|
int old_offset;
|
|
|
|
ALIGN_TO_4_BYTES;
|
|
|
|
old_offset=offset;
|
|
if(parent_tree){
|
|
item=proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
|
|
tree=proto_item_add_subtree(item, ett_butc_tc_dumpDesc);
|
|
}
|
|
|
|
offset=butc_dissect_tc_dumpDesc_vid(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpDesc_name(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpDesc_partition(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpDesc_date(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpDesc_cloneDate(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpDesc_hostAddr(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpDesc_spare1(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpDesc_spare2(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpDesc_spare3(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpDesc_spare4(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
proto_item_set_len(item, offset-old_offset);
|
|
|
|
return offset;
|
|
}
|
|
static int
|
|
butc_dissect_tc_restoreDesc_frag(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_int32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_restoreDesc_frag, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_restoreDesc_tapeName(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_NameString_t(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_restoreDesc_tapeName, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_restoreDesc_position(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_int32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_restoreDesc_position, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_restoreDesc_origVid(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_udlong(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_restoreDesc_origVid, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_restoreDesc_vid(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_udlong(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_restoreDesc_vid, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_restoreDesc_partition(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_int32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_restoreDesc_partition, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_restoreDesc_flags(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_Restore_flags(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_restoreDesc_flags, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_restoreDesc_hostAddr(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_afsNetAddr(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_restoreDesc_hostAddr, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_restoreDesc_realDumpId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_restoreDesc_realDumpId, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_restoreDesc_spare2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_restoreDesc_spare2, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_restoreDesc_spare3(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_restoreDesc_spare3, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_restoreDesc_spare4(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_restoreDesc_spare4, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_restoreDesc_oldName(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_NameString_t(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_restoreDesc_oldName, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_restoreDesc_newName(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_NameString_t(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_restoreDesc_newName, param);
|
|
return offset;
|
|
}
|
|
|
|
|
|
int
|
|
butc_dissect_tc_restoreDesc(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, dcerpc_info* di, guint8 *drep, int hf_index, guint32 param _U_)
|
|
{
|
|
proto_item *item=NULL;
|
|
proto_tree *tree=NULL;
|
|
int old_offset;
|
|
|
|
ALIGN_TO_4_BYTES;
|
|
|
|
old_offset=offset;
|
|
if(parent_tree){
|
|
item=proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
|
|
tree=proto_item_add_subtree(item, ett_butc_tc_restoreDesc);
|
|
}
|
|
|
|
offset=butc_dissect_tc_restoreDesc_frag(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_restoreDesc_tapeName(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_restoreDesc_position(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_restoreDesc_origVid(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_restoreDesc_vid(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_restoreDesc_partition(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_restoreDesc_flags(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_restoreDesc_hostAddr(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_restoreDesc_realDumpId(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_restoreDesc_spare2(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_restoreDesc_spare3(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_restoreDesc_spare4(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_restoreDesc_oldName(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_restoreDesc_newName(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
proto_item_set_len(item, offset-old_offset);
|
|
|
|
return offset;
|
|
}
|
|
static int
|
|
butc_dissect_tc_dumpStat_dumpID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_int32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpStat_dumpID, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpStat_bytesDumped(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_int32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpStat_bytesDumped, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpStat_volumeBeingDumped(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_udlong(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpStat_volumeBeingDumped, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpStat_numVolErrs(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_int32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpStat_numVolErrs, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpStat_flags(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_int32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpStat_flags, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpStat_spare1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpStat_spare1, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpStat_spare2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpStat_spare2, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpStat_spare3(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpStat_spare3, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpStat_spare4(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpStat_spare4, param);
|
|
return offset;
|
|
}
|
|
|
|
|
|
int
|
|
butc_dissect_tc_dumpStat(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, dcerpc_info* di, guint8 *drep, int hf_index, guint32 param _U_)
|
|
{
|
|
proto_item *item=NULL;
|
|
proto_tree *tree=NULL;
|
|
int old_offset;
|
|
|
|
ALIGN_TO_4_BYTES;
|
|
|
|
old_offset=offset;
|
|
if(parent_tree){
|
|
item=proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
|
|
tree=proto_item_add_subtree(item, ett_butc_tc_dumpStat);
|
|
}
|
|
|
|
offset=butc_dissect_tc_dumpStat_dumpID(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpStat_bytesDumped(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpStat_volumeBeingDumped(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpStat_numVolErrs(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpStat_flags(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpStat_spare1(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpStat_spare2(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpStat_spare3(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpStat_spare4(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
proto_item_set_len(item, offset-old_offset);
|
|
|
|
return offset;
|
|
}
|
|
static int
|
|
butc_dissect_tc_tapeLabel_size(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_tapeLabel_size, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_tapeLabel_size_ext(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_tapeLabel_size_ext, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_tapeLabel_spare1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_tapeLabel_spare1, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_tapeLabel_spare2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_tapeLabel_spare2, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_tapeLabel_spare3(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_tapeLabel_spare3, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_tapeLabel_spare4(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_tapeLabel_spare4, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_tapeLabel_nameLen(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_tapeLabel_nameLen, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_tapeLabel_name(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_NameString_t(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_tapeLabel_name, param);
|
|
return offset;
|
|
}
|
|
|
|
|
|
int
|
|
butc_dissect_tc_tapeLabel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, dcerpc_info* di, guint8 *drep, int hf_index, guint32 param _U_)
|
|
{
|
|
proto_item *item=NULL;
|
|
proto_tree *tree=NULL;
|
|
int old_offset;
|
|
|
|
ALIGN_TO_4_BYTES;
|
|
|
|
old_offset=offset;
|
|
if(parent_tree){
|
|
item=proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
|
|
tree=proto_item_add_subtree(item, ett_butc_tc_tapeLabel);
|
|
}
|
|
|
|
offset=butc_dissect_tc_tapeLabel_size(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_tapeLabel_size_ext(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_tapeLabel_spare1(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_tapeLabel_spare2(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_tapeLabel_spare3(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_tapeLabel_spare4(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_tapeLabel_nameLen(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_tapeLabel_name(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
proto_item_set_len(item, offset-old_offset);
|
|
|
|
return offset;
|
|
}
|
|
static int
|
|
butc_dissect_tc_tapeSet_id(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_int32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_tapeSet_id, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_tapeSet_tapeServer(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_NameString_t(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_tapeSet_tapeServer, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_tapeSet_format(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_NameString_t(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_tapeSet_format, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_tapeSet_maxTapes(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_int32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_tapeSet_maxTapes, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_tapeSet_a(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_int32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_tapeSet_a, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_tapeSet_b(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_int32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_tapeSet_b, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_tapeSet_expDate(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_int32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_tapeSet_expDate, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_tapeSet_expType(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_int32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_tapeSet_expType, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_tapeSet_spare1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_tapeSet_spare1, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_tapeSet_spare2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_tapeSet_spare2, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_tapeSet_spare3(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_tapeSet_spare3, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_tapeSet_spare4(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_tapeSet_spare4, param);
|
|
return offset;
|
|
}
|
|
|
|
|
|
int
|
|
butc_dissect_tc_tapeSet(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, dcerpc_info* di, guint8 *drep, int hf_index, guint32 param _U_)
|
|
{
|
|
proto_item *item=NULL;
|
|
proto_tree *tree=NULL;
|
|
int old_offset;
|
|
|
|
ALIGN_TO_4_BYTES;
|
|
|
|
old_offset=offset;
|
|
if(parent_tree){
|
|
item=proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
|
|
tree=proto_item_add_subtree(item, ett_butc_tc_tapeSet);
|
|
}
|
|
|
|
offset=butc_dissect_tc_tapeSet_id(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_tapeSet_tapeServer(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_tapeSet_format(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_tapeSet_maxTapes(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_tapeSet_a(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_tapeSet_b(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_tapeSet_expDate(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_tapeSet_expType(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_tapeSet_spare1(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_tapeSet_spare2(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_tapeSet_spare3(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_tapeSet_spare4(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
proto_item_set_len(item, offset-old_offset);
|
|
|
|
return offset;
|
|
}
|
|
static int
|
|
butc_dissect_tc_tcInfo_tcVersion(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_int32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_tcInfo_tcVersion, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_tcInfo_spare1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_tcInfo_spare1, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_tcInfo_spare2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_tcInfo_spare2, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_tcInfo_spare3(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_tcInfo_spare3, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_tcInfo_spare4(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_tcInfo_spare4, param);
|
|
return offset;
|
|
}
|
|
|
|
|
|
int
|
|
butc_dissect_tc_tcInfo(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, dcerpc_info* di, guint8 *drep, int hf_index, guint32 param _U_)
|
|
{
|
|
proto_item *item=NULL;
|
|
proto_tree *tree=NULL;
|
|
int old_offset;
|
|
|
|
ALIGN_TO_4_BYTES;
|
|
|
|
old_offset=offset;
|
|
if(parent_tree){
|
|
item=proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
|
|
tree=proto_item_add_subtree(item, ett_butc_tc_tcInfo);
|
|
}
|
|
|
|
offset=butc_dissect_tc_tcInfo_tcVersion(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_tcInfo_spare1(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_tcInfo_spare2(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_tcInfo_spare3(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_tcInfo_spare4(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
proto_item_set_len(item, offset-old_offset);
|
|
|
|
return offset;
|
|
}
|
|
static int
|
|
butc_dissect_tc_restoreArray_tc_restoreArray_len(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_restoreArray_tc_restoreArray_len, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_restoreArray_tc_restoreArray_val(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_tc_restoreDesc(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_restoreArray_tc_restoreArray_val, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
ptr_butc_dissect_tc_restoreArray_tc_restoreArray_val(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
offset=dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, butc_dissect_tc_restoreArray_tc_restoreArray_val, NDR_POINTER_PTR, "tc_restoreArray_val", -1);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
ucarray_ptr_butc_dissect_tc_restoreArray_tc_restoreArray_val(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
offset=dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, ptr_butc_dissect_tc_restoreArray_tc_restoreArray_val);
|
|
return offset;
|
|
}
|
|
|
|
|
|
int
|
|
butc_dissect_tc_restoreArray(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, dcerpc_info* di, guint8 *drep, int hf_index, guint32 param _U_)
|
|
{
|
|
proto_item *item=NULL;
|
|
proto_tree *tree=NULL;
|
|
int old_offset;
|
|
|
|
ALIGN_TO_4_BYTES;
|
|
|
|
old_offset=offset;
|
|
if(parent_tree){
|
|
item=proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
|
|
tree=proto_item_add_subtree(item, ett_butc_tc_restoreArray);
|
|
}
|
|
|
|
offset=butc_dissect_tc_restoreArray_tc_restoreArray_len(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=ucarray_ptr_butc_dissect_tc_restoreArray_tc_restoreArray_val(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
proto_item_set_len(item, offset-old_offset);
|
|
|
|
return offset;
|
|
}
|
|
static int
|
|
butc_dissect_tc_dumpArray_tc_dumpArray_len(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpArray_tc_dumpArray_len, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpArray_tc_dumpArray(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_tc_dumpDesc(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpArray_tc_dumpArray, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
ptr_butc_dissect_tc_dumpArray_tc_dumpArray(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
offset=dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, di, drep, butc_dissect_tc_dumpArray_tc_dumpArray, NDR_POINTER_PTR, "tc_dumpArray", -1);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
ucarray_ptr_butc_dissect_tc_dumpArray_tc_dumpArray(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
offset=dissect_ndr_ucarray(tvb, offset, pinfo, tree, di, drep, ptr_butc_dissect_tc_dumpArray_tc_dumpArray);
|
|
return offset;
|
|
}
|
|
|
|
|
|
int
|
|
butc_dissect_tc_dumpArray(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, dcerpc_info* di, guint8 *drep, int hf_index, guint32 param _U_)
|
|
{
|
|
proto_item *item=NULL;
|
|
proto_tree *tree=NULL;
|
|
int old_offset;
|
|
|
|
ALIGN_TO_4_BYTES;
|
|
|
|
old_offset=offset;
|
|
if(parent_tree){
|
|
item=proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
|
|
tree=proto_item_add_subtree(item, ett_butc_tc_dumpArray);
|
|
}
|
|
|
|
offset=butc_dissect_tc_dumpArray_tc_dumpArray_len(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=ucarray_ptr_butc_dissect_tc_dumpArray_tc_dumpArray(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
proto_item_set_len(item, offset-old_offset);
|
|
|
|
return offset;
|
|
}
|
|
static int
|
|
butc_dissect_tc_dumpInterface_dumpPath(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_NameString_t(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpInterface_dumpPath, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpInterface_volumeSetName(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_NameString_t(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpInterface_volumeSetName, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpInterface_dumpName(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_NameString_t(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpInterface_dumpName, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpInterface_tapeSet(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_tc_tapeSet(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpInterface_tapeSet, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpInterface_parentDumpId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_int32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpInterface_parentDumpId, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpInterface_dumpLevel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_int32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpInterface_dumpLevel, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpInterface_spare1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpInterface_spare1, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpInterface_spare2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpInterface_spare2, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpInterface_spare3(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpInterface_spare3, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_dumpInterface_spare4(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_dumpInterface_spare4, param);
|
|
return offset;
|
|
}
|
|
|
|
|
|
int
|
|
butc_dissect_tc_dumpInterface(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, dcerpc_info* di, guint8 *drep, int hf_index, guint32 param _U_)
|
|
{
|
|
proto_item *item=NULL;
|
|
proto_tree *tree=NULL;
|
|
int old_offset;
|
|
|
|
ALIGN_TO_4_BYTES;
|
|
|
|
old_offset=offset;
|
|
if(parent_tree){
|
|
item=proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
|
|
tree=proto_item_add_subtree(item, ett_butc_tc_dumpInterface);
|
|
}
|
|
|
|
offset=butc_dissect_tc_dumpInterface_dumpPath(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpInterface_volumeSetName(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpInterface_dumpName(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpInterface_tapeSet(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpInterface_parentDumpId(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpInterface_dumpLevel(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpInterface_spare1(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpInterface_spare2(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpInterface_spare3(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_dumpInterface_spare4(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
proto_item_set_len(item, offset-old_offset);
|
|
|
|
return offset;
|
|
}
|
|
static int
|
|
butc_dissect_tc_statusInfoSwitchVol_nKBytes(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_statusInfoSwitchVol_nKBytes, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_statusInfoSwitchVol_volumeName(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_NameString_t(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_statusInfoSwitchVol_volumeName, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_statusInfoSwitchVol_volsFailed(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_int32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_statusInfoSwitchVol_volsFailed, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_statusInfoSwitchVol_spare1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_statusInfoSwitchVol_spare1, param);
|
|
return offset;
|
|
}
|
|
|
|
|
|
int
|
|
butc_dissect_tc_statusInfoSwitchVol(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, dcerpc_info* di, guint8 *drep, int hf_index, guint32 param _U_)
|
|
{
|
|
proto_item *item=NULL;
|
|
proto_tree *tree=NULL;
|
|
int old_offset;
|
|
|
|
ALIGN_TO_4_BYTES;
|
|
|
|
old_offset=offset;
|
|
if(parent_tree){
|
|
item=proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
|
|
tree=proto_item_add_subtree(item, ett_butc_tc_statusInfoSwitchVol);
|
|
}
|
|
|
|
offset=butc_dissect_tc_statusInfoSwitchVol_nKBytes(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_statusInfoSwitchVol_volumeName(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_statusInfoSwitchVol_volsFailed(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_statusInfoSwitchVol_spare1(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
proto_item_set_len(item, offset-old_offset);
|
|
|
|
return offset;
|
|
}
|
|
static int
|
|
butc_dissect_tc_statusInfoSwitchLabel_tapeLabel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_tc_tapeLabel(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_statusInfoSwitchLabel_tapeLabel, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tc_statusInfoSwitchLabel_spare1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_statusInfoSwitchLabel_spare1, param);
|
|
return offset;
|
|
}
|
|
|
|
|
|
int
|
|
butc_dissect_tc_statusInfoSwitchLabel(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, dcerpc_info* di, guint8 *drep, int hf_index, guint32 param _U_)
|
|
{
|
|
proto_item *item=NULL;
|
|
proto_tree *tree=NULL;
|
|
int old_offset;
|
|
|
|
ALIGN_TO_4_BYTES;
|
|
|
|
old_offset=offset;
|
|
if(parent_tree){
|
|
item=proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
|
|
tree=proto_item_add_subtree(item, ett_butc_tc_statusInfoSwitchLabel);
|
|
}
|
|
|
|
offset=butc_dissect_tc_statusInfoSwitchLabel_tapeLabel(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tc_statusInfoSwitchLabel_spare1(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
proto_item_set_len(item, offset-old_offset);
|
|
|
|
return offset;
|
|
}
|
|
static int
|
|
butc_dissect_union_tc_statusInfoSwitch_TCOP_NONE_none(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_statusInfoSwitch_TCOP_NONE_none, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_union_tc_statusInfoSwitch_TCOP_DUMP_vol(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_tc_statusInfoSwitchVol(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_statusInfoSwitch_TCOP_DUMP_vol, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_union_tc_statusInfoSwitch_TCOP_RESTORE_vol(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_tc_statusInfoSwitchVol(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_statusInfoSwitch_TCOP_RESTORE_vol, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_union_tc_statusInfoSwitch_TCOP_LABELTAPE_label(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_tc_statusInfoSwitchLabel(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_statusInfoSwitch_TCOP_LABELTAPE_label, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_union_tc_statusInfoSwitch_TCOP_READLABEL_label(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_tc_statusInfoSwitchLabel(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_statusInfoSwitch_TCOP_READLABEL_label, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_union_tc_statusInfoSwitch_TCOP_SCANTAPE_spare1(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_statusInfoSwitch_TCOP_SCANTAPE_spare1, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_union_tc_statusInfoSwitch_TCOP_STATUS_spare2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_statusInfoSwitch_TCOP_STATUS_spare2, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_union_tc_statusInfoSwitch_TCOP_SAVEDB_spare3(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_statusInfoSwitch_TCOP_SAVEDB_spare3, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_union_tc_statusInfoSwitch_TCOP_RESTOREDB_spare4(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_statusInfoSwitch_TCOP_RESTOREDB_spare4, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_union_tc_statusInfoSwitch_TCOP_SPARE_spare5(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tc_statusInfoSwitch_TCOP_SPARE_spare5, param);
|
|
return offset;
|
|
}
|
|
|
|
|
|
static int
|
|
butc_dissect_union_tc_statusInfoSwitch(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, dcerpc_info* di, guint8 *drep, int hf_index, guint32 param _U_)
|
|
{
|
|
proto_item *item=NULL;
|
|
proto_tree *tree=NULL;
|
|
int old_offset;
|
|
guint32 level = 0;
|
|
|
|
ALIGN_TO_4_BYTES;
|
|
|
|
old_offset=offset;
|
|
if(parent_tree){
|
|
item=proto_tree_add_text(parent_tree, tvb, offset, -1, "tc_statusInfoSwitch");
|
|
tree=proto_item_add_subtree(item, ett_butc_tc_statusInfoSwitch);
|
|
}
|
|
|
|
offset=dissect_ndr_uint32(tvb, offset, pinfo, tree,
|
|
di, drep, hf_index, &level);
|
|
|
|
switch(level){
|
|
case TCOP_NONE:
|
|
ALIGN_TO_4_BYTES;
|
|
offset=butc_dissect_union_tc_statusInfoSwitch_TCOP_NONE_none(tvb, offset, pinfo, tree, di, drep);
|
|
break;
|
|
|
|
case TCOP_DUMP:
|
|
ALIGN_TO_4_BYTES;
|
|
offset=butc_dissect_union_tc_statusInfoSwitch_TCOP_DUMP_vol(tvb, offset, pinfo, tree, di, drep);
|
|
break;
|
|
|
|
case TCOP_RESTORE:
|
|
ALIGN_TO_4_BYTES;
|
|
offset=butc_dissect_union_tc_statusInfoSwitch_TCOP_RESTORE_vol(tvb, offset, pinfo, tree, di, drep);
|
|
break;
|
|
|
|
case TCOP_LABELTAPE:
|
|
ALIGN_TO_4_BYTES;
|
|
offset=butc_dissect_union_tc_statusInfoSwitch_TCOP_LABELTAPE_label(tvb, offset, pinfo, tree, di, drep);
|
|
break;
|
|
|
|
case TCOP_READLABEL:
|
|
ALIGN_TO_4_BYTES;
|
|
offset=butc_dissect_union_tc_statusInfoSwitch_TCOP_READLABEL_label(tvb, offset, pinfo, tree, di, drep);
|
|
break;
|
|
|
|
case TCOP_SCANTAPE:
|
|
ALIGN_TO_4_BYTES;
|
|
offset=butc_dissect_union_tc_statusInfoSwitch_TCOP_SCANTAPE_spare1(tvb, offset, pinfo, tree, di, drep);
|
|
break;
|
|
|
|
case TCOP_STATUS:
|
|
ALIGN_TO_4_BYTES;
|
|
offset=butc_dissect_union_tc_statusInfoSwitch_TCOP_STATUS_spare2(tvb, offset, pinfo, tree, di, drep);
|
|
break;
|
|
|
|
case TCOP_SAVEDB:
|
|
ALIGN_TO_4_BYTES;
|
|
offset=butc_dissect_union_tc_statusInfoSwitch_TCOP_SAVEDB_spare3(tvb, offset, pinfo, tree, di, drep);
|
|
break;
|
|
|
|
case TCOP_RESTOREDB:
|
|
ALIGN_TO_4_BYTES;
|
|
offset=butc_dissect_union_tc_statusInfoSwitch_TCOP_RESTOREDB_spare4(tvb, offset, pinfo, tree, di, drep);
|
|
break;
|
|
|
|
case TCOP_SPARE:
|
|
ALIGN_TO_4_BYTES;
|
|
offset=butc_dissect_union_tc_statusInfoSwitch_TCOP_SPARE_spare5(tvb, offset, pinfo, tree, di, drep);
|
|
break;
|
|
|
|
}
|
|
|
|
proto_item_set_len(item, offset-old_offset);
|
|
|
|
return offset;
|
|
}
|
|
static int
|
|
butc_dissect_tciStatusS_taskName(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_NameString_t(tvb, offset, pinfo, tree, di, drep, hf_butc_tciStatusS_taskName, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tciStatusS_flags(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tciStatusS_flags, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tciStatusS_lastPolled(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_time_t(tvb, offset, pinfo, tree, di, drep, hf_butc_tciStatusS_lastPolled, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tciStatusS_info(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_union_tc_statusInfoSwitch(tvb, offset, pinfo, tree, di, drep, hf_butc_tciStatusS_info, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tciStatusS_taskId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tciStatusS_taskId, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tciStatusS_spare2(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tciStatusS_spare2, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tciStatusS_spare3(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tciStatusS_spare3, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_tciStatusS_spare4(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_tciStatusS_spare4, param);
|
|
return offset;
|
|
}
|
|
|
|
|
|
int
|
|
butc_dissect_tciStatusS(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, dcerpc_info* di, guint8 *drep, int hf_index, guint32 param _U_)
|
|
{
|
|
proto_item *item=NULL;
|
|
proto_tree *tree=NULL;
|
|
int old_offset;
|
|
|
|
ALIGN_TO_4_BYTES;
|
|
|
|
old_offset=offset;
|
|
if(parent_tree){
|
|
item=proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
|
|
tree=proto_item_add_subtree(item, ett_butc_tciStatusS);
|
|
}
|
|
|
|
offset=butc_dissect_tciStatusS_taskName(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tciStatusS_flags(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tciStatusS_lastPolled(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tciStatusS_info(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tciStatusS_taskId(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tciStatusS_spare2(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tciStatusS_spare3(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
offset=butc_dissect_tciStatusS_spare4(tvb, offset, pinfo, tree, di, drep);
|
|
|
|
proto_item_set_len(item, offset-old_offset);
|
|
|
|
return offset;
|
|
}
|
|
static int
|
|
butc_dissect_BUTC_PerformDump_tcdiPtr(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_tc_dumpInterface(tvb, offset, pinfo, tree, di, drep, hf_butc_BUTC_PerformDump_tcdiPtr, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
ref_butc_dissect_BUTC_PerformDump_tcdiPtr(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
offset=dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, butc_dissect_BUTC_PerformDump_tcdiPtr, NDR_POINTER_REF, "tcdiPtr", -1);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_BUTC_PerformDump_dumps(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_tc_dumpArray(tvb, offset, pinfo, tree, di, drep, hf_butc_BUTC_PerformDump_dumps, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
ref_butc_dissect_BUTC_PerformDump_dumps(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
offset=dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, butc_dissect_BUTC_PerformDump_dumps, NDR_POINTER_REF, "dumps", -1);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_BUTC_PerformDump_dumpID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_int32(tvb, offset, pinfo, tree, di, drep, hf_butc_BUTC_PerformDump_dumpID, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
ref_butc_dissect_BUTC_PerformDump_dumpID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
offset=dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, butc_dissect_BUTC_PerformDump_dumpID, NDR_POINTER_REF, "dumpID", -1);
|
|
return offset;
|
|
}
|
|
|
|
|
|
static int
|
|
butc_dissect_BUTC_PerformDump_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
offset=ref_butc_dissect_BUTC_PerformDump_tcdiPtr(tvb, offset, pinfo, tree, di, drep);
|
|
offset=dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
|
|
|
|
offset=ref_butc_dissect_BUTC_PerformDump_dumps(tvb, offset, pinfo, tree, di, drep);
|
|
offset=dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
|
|
|
|
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_BUTC_PerformDump_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
offset=ref_butc_dissect_BUTC_PerformDump_dumpID(tvb, offset, pinfo, tree, di, drep);
|
|
offset=dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
|
|
|
|
offset=dissect_ntstatus(tvb, offset, pinfo, tree, di, drep, hf_butc_rc, NULL);
|
|
|
|
|
|
return offset;
|
|
}
|
|
static int
|
|
butc_dissect_BUTC_PerformRestore_dumpSetName(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_NameString_t(tvb, offset, pinfo, tree, di, drep, hf_butc_BUTC_PerformRestore_dumpSetName, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
ptr_butc_dissect_BUTC_PerformRestore_dumpSetName(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
offset=dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, butc_dissect_BUTC_PerformRestore_dumpSetName, NDR_POINTER_PTR, "dumpSetName", -1);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_BUTC_PerformRestore_restores(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_tc_restoreArray(tvb, offset, pinfo, tree, di, drep, hf_butc_BUTC_PerformRestore_restores, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
ref_butc_dissect_BUTC_PerformRestore_restores(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
offset=dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, butc_dissect_BUTC_PerformRestore_restores, NDR_POINTER_REF, "restores", -1);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_BUTC_PerformRestore_dumpID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_int32(tvb, offset, pinfo, tree, di, drep, hf_butc_BUTC_PerformRestore_dumpID, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
ref_butc_dissect_BUTC_PerformRestore_dumpID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
offset=dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, butc_dissect_BUTC_PerformRestore_dumpID, NDR_POINTER_REF, "dumpID", -1);
|
|
return offset;
|
|
}
|
|
|
|
|
|
static int
|
|
butc_dissect_BUTC_PerformRestore_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
offset=ptr_butc_dissect_BUTC_PerformRestore_dumpSetName(tvb, offset, pinfo, tree, di, drep);
|
|
offset=dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
|
|
|
|
offset=ref_butc_dissect_BUTC_PerformRestore_restores(tvb, offset, pinfo, tree, di, drep);
|
|
offset=dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
|
|
|
|
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_BUTC_PerformRestore_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
offset=ref_butc_dissect_BUTC_PerformRestore_dumpID(tvb, offset, pinfo, tree, di, drep);
|
|
offset=dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
|
|
|
|
offset=dissect_ntstatus(tvb, offset, pinfo, tree, di, drep, hf_butc_rc, NULL);
|
|
|
|
|
|
return offset;
|
|
}
|
|
static int
|
|
butc_dissect_BUTC_AbortDump_dumpID(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_int32(tvb, offset, pinfo, tree, di, drep, hf_butc_BUTC_AbortDump_dumpID, param);
|
|
return offset;
|
|
}
|
|
|
|
|
|
static int
|
|
butc_dissect_BUTC_AbortDump_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
offset=butc_dissect_BUTC_AbortDump_dumpID(tvb, offset, pinfo, tree, di, drep);
|
|
offset=dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
|
|
|
|
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_BUTC_AbortDump_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
offset=dissect_ntstatus(tvb, offset, pinfo, tree, di, drep, hf_butc_rc, NULL);
|
|
|
|
|
|
return offset;
|
|
}
|
|
static int
|
|
butc_dissect_BUTC_LabelTape_label(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_tc_tapeLabel(tvb, offset, pinfo, tree, di, drep, hf_butc_BUTC_LabelTape_label, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
ref_butc_dissect_BUTC_LabelTape_label(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
offset=dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, butc_dissect_BUTC_LabelTape_label, NDR_POINTER_REF, "label", -1);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_BUTC_LabelTape_taskId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_BUTC_LabelTape_taskId, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
ref_butc_dissect_BUTC_LabelTape_taskId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
offset=dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, butc_dissect_BUTC_LabelTape_taskId, NDR_POINTER_REF, "taskId", -1);
|
|
return offset;
|
|
}
|
|
|
|
|
|
static int
|
|
butc_dissect_BUTC_LabelTape_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
offset=ref_butc_dissect_BUTC_LabelTape_label(tvb, offset, pinfo, tree, di, drep);
|
|
offset=dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
|
|
|
|
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_BUTC_LabelTape_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
offset=ref_butc_dissect_BUTC_LabelTape_taskId(tvb, offset, pinfo, tree, di, drep);
|
|
offset=dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
|
|
|
|
offset=dissect_ntstatus(tvb, offset, pinfo, tree, di, drep, hf_butc_rc, NULL);
|
|
|
|
|
|
return offset;
|
|
}
|
|
static int
|
|
butc_dissect_BUTC_ReadLabel_taskId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_BUTC_ReadLabel_taskId, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
ref_butc_dissect_BUTC_ReadLabel_taskId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
offset=dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, butc_dissect_BUTC_ReadLabel_taskId, NDR_POINTER_REF, "taskId", -1);
|
|
return offset;
|
|
}
|
|
|
|
|
|
static int
|
|
butc_dissect_BUTC_ReadLabel_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_BUTC_ReadLabel_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
offset=ref_butc_dissect_BUTC_ReadLabel_taskId(tvb, offset, pinfo, tree, di, drep);
|
|
offset=dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
|
|
|
|
offset=dissect_ntstatus(tvb, offset, pinfo, tree, di, drep, hf_butc_rc, NULL);
|
|
|
|
|
|
return offset;
|
|
}
|
|
static int
|
|
butc_dissect_BUTC_ScanDumps_addDbFlag(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_int32(tvb, offset, pinfo, tree, di, drep, hf_butc_BUTC_ScanDumps_addDbFlag, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_BUTC_ScanDumps_taskId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_BUTC_ScanDumps_taskId, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
ref_butc_dissect_BUTC_ScanDumps_taskId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
offset=dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, butc_dissect_BUTC_ScanDumps_taskId, NDR_POINTER_REF, "taskId", -1);
|
|
return offset;
|
|
}
|
|
|
|
|
|
static int
|
|
butc_dissect_BUTC_ScanDumps_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
offset=butc_dissect_BUTC_ScanDumps_addDbFlag(tvb, offset, pinfo, tree, di, drep);
|
|
offset=dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
|
|
|
|
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_BUTC_ScanDumps_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
offset=ref_butc_dissect_BUTC_ScanDumps_taskId(tvb, offset, pinfo, tree, di, drep);
|
|
offset=dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
|
|
|
|
offset=dissect_ntstatus(tvb, offset, pinfo, tree, di, drep, hf_butc_rc, NULL);
|
|
|
|
|
|
return offset;
|
|
}
|
|
static int
|
|
butc_dissect_BUTC_TCInfo_tciptr(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_tc_tcInfo(tvb, offset, pinfo, tree, di, drep, hf_butc_BUTC_TCInfo_tciptr, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
ref_butc_dissect_BUTC_TCInfo_tciptr(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
offset=dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, butc_dissect_BUTC_TCInfo_tciptr, NDR_POINTER_REF, "tciptr", -1);
|
|
return offset;
|
|
}
|
|
|
|
|
|
static int
|
|
butc_dissect_BUTC_TCInfo_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_BUTC_TCInfo_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
offset=ref_butc_dissect_BUTC_TCInfo_tciptr(tvb, offset, pinfo, tree, di, drep);
|
|
offset=dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
|
|
|
|
offset=dissect_ntstatus(tvb, offset, pinfo, tree, di, drep, hf_butc_rc, NULL);
|
|
|
|
|
|
return offset;
|
|
}
|
|
static int
|
|
butc_dissect_BUTC_SaveDb_taskId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_BUTC_SaveDb_taskId, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
ref_butc_dissect_BUTC_SaveDb_taskId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
offset=dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, butc_dissect_BUTC_SaveDb_taskId, NDR_POINTER_REF, "taskId", -1);
|
|
return offset;
|
|
}
|
|
|
|
|
|
static int
|
|
butc_dissect_BUTC_SaveDb_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_BUTC_SaveDb_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
offset=ref_butc_dissect_BUTC_SaveDb_taskId(tvb, offset, pinfo, tree, di, drep);
|
|
offset=dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
|
|
|
|
offset=dissect_ntstatus(tvb, offset, pinfo, tree, di, drep, hf_butc_rc, NULL);
|
|
|
|
|
|
return offset;
|
|
}
|
|
static int
|
|
butc_dissect_BUTC_RestoreDb_taskId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_BUTC_RestoreDb_taskId, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
ref_butc_dissect_BUTC_RestoreDb_taskId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
offset=dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, butc_dissect_BUTC_RestoreDb_taskId, NDR_POINTER_REF, "taskId", -1);
|
|
return offset;
|
|
}
|
|
|
|
|
|
static int
|
|
butc_dissect_BUTC_RestoreDb_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_BUTC_RestoreDb_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
offset=ref_butc_dissect_BUTC_RestoreDb_taskId(tvb, offset, pinfo, tree, di, drep);
|
|
offset=dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
|
|
|
|
offset=dissect_ntstatus(tvb, offset, pinfo, tree, di, drep, hf_butc_rc, NULL);
|
|
|
|
|
|
return offset;
|
|
}
|
|
static int
|
|
butc_dissect_BUTC_EndStatus_taskId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_BUTC_EndStatus_taskId, param);
|
|
return offset;
|
|
}
|
|
|
|
|
|
static int
|
|
butc_dissect_BUTC_EndStatus_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
offset=butc_dissect_BUTC_EndStatus_taskId(tvb, offset, pinfo, tree, di, drep);
|
|
offset=dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
|
|
|
|
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_BUTC_EndStatus_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
offset=dissect_ntstatus(tvb, offset, pinfo, tree, di, drep, hf_butc_rc, NULL);
|
|
|
|
|
|
return offset;
|
|
}
|
|
static int
|
|
butc_dissect_BUTC_GetStatus_taskId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_BUTC_GetStatus_taskId, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_BUTC_GetStatus_statusPtr(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_tciStatusS(tvb, offset, pinfo, tree, di, drep, hf_butc_BUTC_GetStatus_statusPtr, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
ref_butc_dissect_BUTC_GetStatus_statusPtr(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
offset=dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, butc_dissect_BUTC_GetStatus_statusPtr, NDR_POINTER_REF, "statusPtr", -1);
|
|
return offset;
|
|
}
|
|
|
|
|
|
static int
|
|
butc_dissect_BUTC_GetStatus_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
offset=butc_dissect_BUTC_GetStatus_taskId(tvb, offset, pinfo, tree, di, drep);
|
|
offset=dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
|
|
|
|
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_BUTC_GetStatus_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
offset=ref_butc_dissect_BUTC_GetStatus_statusPtr(tvb, offset, pinfo, tree, di, drep);
|
|
offset=dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
|
|
|
|
offset=dissect_ntstatus(tvb, offset, pinfo, tree, di, drep, hf_butc_rc, NULL);
|
|
|
|
|
|
return offset;
|
|
}
|
|
static int
|
|
butc_dissect_BUTC_RequestAbort_taskId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_BUTC_RequestAbort_taskId, param);
|
|
return offset;
|
|
}
|
|
|
|
|
|
static int
|
|
butc_dissect_BUTC_RequestAbort_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
offset=butc_dissect_BUTC_RequestAbort_taskId(tvb, offset, pinfo, tree, di, drep);
|
|
offset=dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
|
|
|
|
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_BUTC_RequestAbort_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
offset=dissect_ntstatus(tvb, offset, pinfo, tree, di, drep, hf_butc_rc, NULL);
|
|
|
|
|
|
return offset;
|
|
}
|
|
static int
|
|
butc_dissect_BUTC_ScanStatus_taskId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_BUTC_ScanStatus_taskId, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
ref_butc_dissect_BUTC_ScanStatus_taskId(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
offset=dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, butc_dissect_BUTC_ScanStatus_taskId, NDR_POINTER_REF, "taskId", -1);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_BUTC_ScanStatus_statusPtr(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_tciStatusS(tvb, offset, pinfo, tree, di, drep, hf_butc_BUTC_ScanStatus_statusPtr, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
ref_butc_dissect_BUTC_ScanStatus_statusPtr(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
offset=dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, butc_dissect_BUTC_ScanStatus_statusPtr, NDR_POINTER_REF, "statusPtr", -1);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_BUTC_ScanStatus_flags(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
guint32 param=0;
|
|
offset=butc_dissect_uint32(tvb, offset, pinfo, tree, di, drep, hf_butc_BUTC_ScanStatus_flags, param);
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
ref_butc_dissect_BUTC_ScanStatus_flags(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, dcerpc_info* di, guint8 *drep)
|
|
{
|
|
offset=dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, di, drep, butc_dissect_BUTC_ScanStatus_flags, NDR_POINTER_REF, "flags", -1);
|
|
return offset;
|
|
}
|
|
|
|
|
|
static int
|
|
butc_dissect_BUTC_ScanStatus_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
offset=ref_butc_dissect_BUTC_ScanStatus_taskId(tvb, offset, pinfo, tree, di, drep);
|
|
offset=dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
|
|
|
|
offset=ref_butc_dissect_BUTC_ScanStatus_flags(tvb, offset, pinfo, tree, di, drep);
|
|
offset=dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
|
|
|
|
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_BUTC_ScanStatus_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
offset=ref_butc_dissect_BUTC_ScanStatus_taskId(tvb, offset, pinfo, tree, di, drep);
|
|
offset=dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
|
|
|
|
offset=ref_butc_dissect_BUTC_ScanStatus_statusPtr(tvb, offset, pinfo, tree, di, drep);
|
|
offset=dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
|
|
|
|
offset=ref_butc_dissect_BUTC_ScanStatus_flags(tvb, offset, pinfo, tree, di, drep);
|
|
offset=dissect_deferred_pointers(pinfo, tvb, offset, di, drep);
|
|
|
|
offset=dissect_ntstatus(tvb, offset, pinfo, tree, di, drep, hf_butc_rc, NULL);
|
|
|
|
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_BUTC_GetServerInterfaces_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
|
|
return offset;
|
|
}
|
|
|
|
static int
|
|
butc_dissect_BUTC_GetServerInterfaces_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, dcerpc_info* di _U_, guint8 *drep _U_)
|
|
{
|
|
offset=dissect_ntstatus(tvb, offset, pinfo, tree, di, drep, hf_butc_rc, NULL);
|
|
|
|
|
|
return offset;
|
|
}
|
|
/* END OF INCLUDED FILE : ETH_CODE */
|
|
|
|
|
|
|
|
void
|
|
proto_register_butc(void)
|
|
{
|
|
static hf_register_info hf[] = {
|
|
|
|
|
|
|
|
/* INCLUDED FILE : ETH_HFARR */
|
|
{ &hf_butc_opnum,
|
|
{ "Operation", "butc.opnum", FT_UINT16, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_rc,
|
|
{ "Return code", "butc.rc", FT_UINT32, BASE_HEX,
|
|
VALS(NT_errors), 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_Restore_flags_TC_RESTORE_CREATE,
|
|
{ "TC_RESTORE_CREATE", "butc.Restore_flags.TC_RESTORE_CREATE", FT_BOOLEAN, 32,
|
|
TFS(&TC_RESTORE_CREATE_tfs), 0x00000001,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_Restore_flags_TC_RESTORE_INCR,
|
|
{ "TC_RESTORE_INCR", "butc.Restore_flags.TC_RESTORE_INCR", FT_BOOLEAN, 32,
|
|
TFS(&TC_RESTORE_INCR_tfs), 0x00000002,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_afsNetAddr_type,
|
|
{ "type", "butc.afsNetAddr.type", FT_UINT16, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_afsNetAddr_data,
|
|
{ "data", "butc.afsNetAddr.data", FT_UINT8, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpDesc_vid,
|
|
{ "vid", "butc.tc_dumpDesc.vid", FT_UINT64, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpDesc_name,
|
|
{ "name", "butc.tc_dumpDesc.name", FT_STRING, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpDesc_partition,
|
|
{ "partition", "butc.tc_dumpDesc.partition", FT_INT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpDesc_date,
|
|
{ "date", "butc.tc_dumpDesc.date", FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpDesc_cloneDate,
|
|
{ "cloneDate", "butc.tc_dumpDesc.cloneDate", FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpDesc_hostAddr,
|
|
{ "hostAddr", "butc.tc_dumpDesc.hostAddr", FT_NONE, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpDesc_spare1,
|
|
{ "spare1", "butc.tc_dumpDesc.spare1", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpDesc_spare2,
|
|
{ "spare2", "butc.tc_dumpDesc.spare2", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpDesc_spare3,
|
|
{ "spare3", "butc.tc_dumpDesc.spare3", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpDesc_spare4,
|
|
{ "spare4", "butc.tc_dumpDesc.spare4", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_restoreDesc_frag,
|
|
{ "frag", "butc.tc_restoreDesc.frag", FT_INT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_restoreDesc_tapeName,
|
|
{ "tapeName", "butc.tc_restoreDesc.tapeName", FT_STRING, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_restoreDesc_position,
|
|
{ "position", "butc.tc_restoreDesc.position", FT_INT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_restoreDesc_origVid,
|
|
{ "origVid", "butc.tc_restoreDesc.origVid", FT_UINT64, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_restoreDesc_vid,
|
|
{ "vid", "butc.tc_restoreDesc.vid", FT_UINT64, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_restoreDesc_partition,
|
|
{ "partition", "butc.tc_restoreDesc.partition", FT_INT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_restoreDesc_flags,
|
|
{ "flags", "butc.tc_restoreDesc.flags", FT_UINT32, BASE_HEX,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_restoreDesc_hostAddr,
|
|
{ "hostAddr", "butc.tc_restoreDesc.hostAddr", FT_NONE, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_restoreDesc_realDumpId,
|
|
{ "realDumpId", "butc.tc_restoreDesc.realDumpId", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_restoreDesc_spare2,
|
|
{ "spare2", "butc.tc_restoreDesc.spare2", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_restoreDesc_spare3,
|
|
{ "spare3", "butc.tc_restoreDesc.spare3", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_restoreDesc_spare4,
|
|
{ "spare4", "butc.tc_restoreDesc.spare4", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_restoreDesc_oldName,
|
|
{ "oldName", "butc.tc_restoreDesc.oldName", FT_STRING, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_restoreDesc_newName,
|
|
{ "newName", "butc.tc_restoreDesc.newName", FT_STRING, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpStat_dumpID,
|
|
{ "dumpID", "butc.tc_dumpStat.dumpID", FT_INT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpStat_bytesDumped,
|
|
{ "bytesDumped", "butc.tc_dumpStat.bytesDumped", FT_INT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpStat_volumeBeingDumped,
|
|
{ "volumeBeingDumped", "butc.tc_dumpStat.volumeBeingDumped", FT_UINT64, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpStat_numVolErrs,
|
|
{ "numVolErrs", "butc.tc_dumpStat.numVolErrs", FT_INT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpStat_flags,
|
|
{ "flags", "butc.tc_dumpStat.flags", FT_INT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpStat_spare1,
|
|
{ "spare1", "butc.tc_dumpStat.spare1", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpStat_spare2,
|
|
{ "spare2", "butc.tc_dumpStat.spare2", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpStat_spare3,
|
|
{ "spare3", "butc.tc_dumpStat.spare3", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpStat_spare4,
|
|
{ "spare4", "butc.tc_dumpStat.spare4", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_tapeLabel_size,
|
|
{ "size", "butc.tc_tapeLabel.size", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_tapeLabel_size_ext,
|
|
{ "size_ext", "butc.tc_tapeLabel.size_ext", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_tapeLabel_spare1,
|
|
{ "spare1", "butc.tc_tapeLabel.spare1", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_tapeLabel_spare2,
|
|
{ "spare2", "butc.tc_tapeLabel.spare2", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_tapeLabel_spare3,
|
|
{ "spare3", "butc.tc_tapeLabel.spare3", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_tapeLabel_spare4,
|
|
{ "spare4", "butc.tc_tapeLabel.spare4", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_tapeLabel_nameLen,
|
|
{ "nameLen", "butc.tc_tapeLabel.nameLen", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_tapeLabel_name,
|
|
{ "name", "butc.tc_tapeLabel.name", FT_STRING, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_tapeSet_id,
|
|
{ "id", "butc.tc_tapeSet.id", FT_INT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_tapeSet_tapeServer,
|
|
{ "tapeServer", "butc.tc_tapeSet.tapeServer", FT_STRING, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_tapeSet_format,
|
|
{ "format", "butc.tc_tapeSet.format", FT_STRING, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_tapeSet_maxTapes,
|
|
{ "maxTapes", "butc.tc_tapeSet.maxTapes", FT_INT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_tapeSet_a,
|
|
{ "a", "butc.tc_tapeSet.a", FT_INT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_tapeSet_b,
|
|
{ "b", "butc.tc_tapeSet.b", FT_INT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_tapeSet_expDate,
|
|
{ "expDate", "butc.tc_tapeSet.expDate", FT_INT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_tapeSet_expType,
|
|
{ "expType", "butc.tc_tapeSet.expType", FT_INT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_tapeSet_spare1,
|
|
{ "spare1", "butc.tc_tapeSet.spare1", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_tapeSet_spare2,
|
|
{ "spare2", "butc.tc_tapeSet.spare2", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_tapeSet_spare3,
|
|
{ "spare3", "butc.tc_tapeSet.spare3", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_tapeSet_spare4,
|
|
{ "spare4", "butc.tc_tapeSet.spare4", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_tcInfo_tcVersion,
|
|
{ "tcVersion", "butc.tc_tcInfo.tcVersion", FT_INT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_tcInfo_spare1,
|
|
{ "spare1", "butc.tc_tcInfo.spare1", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_tcInfo_spare2,
|
|
{ "spare2", "butc.tc_tcInfo.spare2", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_tcInfo_spare3,
|
|
{ "spare3", "butc.tc_tcInfo.spare3", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_tcInfo_spare4,
|
|
{ "spare4", "butc.tc_tcInfo.spare4", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_restoreArray_tc_restoreArray_len,
|
|
{ "tc_restoreArray_len", "butc.tc_restoreArray.tc_restoreArray_len", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_restoreArray_tc_restoreArray_val,
|
|
{ "tc_restoreArray_val", "butc.tc_restoreArray.tc_restoreArray_val", FT_NONE, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpArray_tc_dumpArray_len,
|
|
{ "tc_dumpArray_len", "butc.tc_dumpArray.tc_dumpArray_len", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpArray_tc_dumpArray,
|
|
{ "tc_dumpArray", "butc.tc_dumpArray.tc_dumpArray", FT_NONE, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpInterface_dumpPath,
|
|
{ "dumpPath", "butc.tc_dumpInterface.dumpPath", FT_STRING, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpInterface_volumeSetName,
|
|
{ "volumeSetName", "butc.tc_dumpInterface.volumeSetName", FT_STRING, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpInterface_dumpName,
|
|
{ "dumpName", "butc.tc_dumpInterface.dumpName", FT_STRING, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpInterface_tapeSet,
|
|
{ "tapeSet", "butc.tc_dumpInterface.tapeSet", FT_NONE, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpInterface_parentDumpId,
|
|
{ "parentDumpId", "butc.tc_dumpInterface.parentDumpId", FT_INT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpInterface_dumpLevel,
|
|
{ "dumpLevel", "butc.tc_dumpInterface.dumpLevel", FT_INT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpInterface_spare1,
|
|
{ "spare1", "butc.tc_dumpInterface.spare1", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpInterface_spare2,
|
|
{ "spare2", "butc.tc_dumpInterface.spare2", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpInterface_spare3,
|
|
{ "spare3", "butc.tc_dumpInterface.spare3", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_dumpInterface_spare4,
|
|
{ "spare4", "butc.tc_dumpInterface.spare4", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_statusInfoSwitchVol_nKBytes,
|
|
{ "nKBytes", "butc.tc_statusInfoSwitchVol.nKBytes", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_statusInfoSwitchVol_volumeName,
|
|
{ "volumeName", "butc.tc_statusInfoSwitchVol.volumeName", FT_STRING, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_statusInfoSwitchVol_volsFailed,
|
|
{ "volsFailed", "butc.tc_statusInfoSwitchVol.volsFailed", FT_INT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_statusInfoSwitchVol_spare1,
|
|
{ "spare1", "butc.tc_statusInfoSwitchVol.spare1", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_statusInfoSwitchLabel_tapeLabel,
|
|
{ "tapeLabel", "butc.tc_statusInfoSwitchLabel.tapeLabel", FT_NONE, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_statusInfoSwitchLabel_spare1,
|
|
{ "spare1", "butc.tc_statusInfoSwitchLabel.spare1", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_statusInfoSwitch_TCOP_NONE_none,
|
|
{ "none", "butc.tc_statusInfoSwitch.none", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_statusInfoSwitch_TCOP_DUMP_vol,
|
|
{ "vol", "butc.tc_statusInfoSwitch.vol", FT_NONE, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_statusInfoSwitch_TCOP_RESTORE_vol,
|
|
{ "vol", "butc.tc_statusInfoSwitch.vol", FT_NONE, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_statusInfoSwitch_TCOP_LABELTAPE_label,
|
|
{ "label", "butc.tc_statusInfoSwitch.label", FT_NONE, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_statusInfoSwitch_TCOP_READLABEL_label,
|
|
{ "label", "butc.tc_statusInfoSwitch.label", FT_NONE, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_statusInfoSwitch_TCOP_SCANTAPE_spare1,
|
|
{ "spare1", "butc.tc_statusInfoSwitch.spare1", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_statusInfoSwitch_TCOP_STATUS_spare2,
|
|
{ "spare2", "butc.tc_statusInfoSwitch.spare2", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_statusInfoSwitch_TCOP_SAVEDB_spare3,
|
|
{ "spare3", "butc.tc_statusInfoSwitch.spare3", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_statusInfoSwitch_TCOP_RESTOREDB_spare4,
|
|
{ "spare4", "butc.tc_statusInfoSwitch.spare4", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tc_statusInfoSwitch_TCOP_SPARE_spare5,
|
|
{ "spare5", "butc.tc_statusInfoSwitch.spare5", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tciStatusS_taskName,
|
|
{ "taskName", "butc.tciStatusS.taskName", FT_STRING, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tciStatusS_flags,
|
|
{ "flags", "butc.tciStatusS.flags", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tciStatusS_lastPolled,
|
|
{ "lastPolled", "butc.tciStatusS.lastPolled", FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tciStatusS_info,
|
|
{ "info", "butc.tciStatusS.info", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tciStatusS_taskId,
|
|
{ "taskId", "butc.tciStatusS.taskId", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tciStatusS_spare2,
|
|
{ "spare2", "butc.tciStatusS.spare2", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tciStatusS_spare3,
|
|
{ "spare3", "butc.tciStatusS.spare3", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_tciStatusS_spare4,
|
|
{ "spare4", "butc.tciStatusS.spare4", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_BUTC_PerformDump_tcdiPtr,
|
|
{ "tcdiPtr", "butc.BUTC_PerformDump.tcdiPtr", FT_NONE, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_BUTC_PerformDump_dumps,
|
|
{ "dumps", "butc.BUTC_PerformDump.dumps", FT_NONE, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_BUTC_PerformDump_dumpID,
|
|
{ "dumpID", "butc.BUTC_PerformDump.dumpID", FT_INT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_BUTC_PerformRestore_dumpSetName,
|
|
{ "dumpSetName", "butc.BUTC_PerformRestore.dumpSetName", FT_STRING, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_BUTC_PerformRestore_restores,
|
|
{ "restores", "butc.BUTC_PerformRestore.restores", FT_NONE, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_BUTC_PerformRestore_dumpID,
|
|
{ "dumpID", "butc.BUTC_PerformRestore.dumpID", FT_INT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_BUTC_AbortDump_dumpID,
|
|
{ "dumpID", "butc.BUTC_AbortDump.dumpID", FT_INT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_BUTC_LabelTape_label,
|
|
{ "label", "butc.BUTC_LabelTape.label", FT_NONE, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_BUTC_LabelTape_taskId,
|
|
{ "taskId", "butc.BUTC_LabelTape.taskId", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_BUTC_ReadLabel_taskId,
|
|
{ "taskId", "butc.BUTC_ReadLabel.taskId", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_BUTC_ScanDumps_addDbFlag,
|
|
{ "addDbFlag", "butc.BUTC_ScanDumps.addDbFlag", FT_INT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_BUTC_ScanDumps_taskId,
|
|
{ "taskId", "butc.BUTC_ScanDumps.taskId", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_BUTC_TCInfo_tciptr,
|
|
{ "tciptr", "butc.BUTC_TCInfo.tciptr", FT_NONE, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_BUTC_SaveDb_taskId,
|
|
{ "taskId", "butc.BUTC_SaveDb.taskId", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_BUTC_RestoreDb_taskId,
|
|
{ "taskId", "butc.BUTC_RestoreDb.taskId", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_BUTC_EndStatus_taskId,
|
|
{ "taskId", "butc.BUTC_EndStatus.taskId", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_BUTC_GetStatus_taskId,
|
|
{ "taskId", "butc.BUTC_GetStatus.taskId", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_BUTC_GetStatus_statusPtr,
|
|
{ "statusPtr", "butc.BUTC_GetStatus.statusPtr", FT_NONE, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_BUTC_RequestAbort_taskId,
|
|
{ "taskId", "butc.BUTC_RequestAbort.taskId", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_BUTC_ScanStatus_taskId,
|
|
{ "taskId", "butc.BUTC_ScanStatus.taskId", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_BUTC_ScanStatus_statusPtr,
|
|
{ "statusPtr", "butc.BUTC_ScanStatus.statusPtr", FT_NONE, BASE_NONE,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
{ &hf_butc_BUTC_ScanStatus_flags,
|
|
{ "flags", "butc.BUTC_ScanStatus.flags", FT_UINT32, BASE_DEC,
|
|
NULL, 0,
|
|
NULL, HFILL }},
|
|
|
|
/* END OF INCLUDED FILE : ETH_HFARR */
|
|
|
|
|
|
};
|
|
|
|
static gint *ett[] = {
|
|
|
|
|
|
/* INCLUDED FILE : ETH_ETTARR */
|
|
&ett_butc,
|
|
&ett_butc_Restore_flags,
|
|
&ett_butc_afsNetAddr,
|
|
&ett_butc_tc_dumpDesc,
|
|
&ett_butc_tc_restoreDesc,
|
|
&ett_butc_tc_dumpStat,
|
|
&ett_butc_tc_tapeLabel,
|
|
&ett_butc_tc_tapeSet,
|
|
&ett_butc_tc_tcInfo,
|
|
&ett_butc_tc_restoreArray,
|
|
&ett_butc_tc_dumpArray,
|
|
&ett_butc_tc_dumpInterface,
|
|
&ett_butc_tc_statusInfoSwitchVol,
|
|
&ett_butc_tc_statusInfoSwitchLabel,
|
|
&ett_butc_tc_statusInfoSwitch,
|
|
&ett_butc_tciStatusS,
|
|
/* END OF INCLUDED FILE : ETH_ETTARR */
|
|
|
|
|
|
};
|
|
|
|
proto_butc = proto_register_protocol(
|
|
"DCE/RPC BUTC",
|
|
"BUTC", "butc");
|
|
proto_register_field_array(proto_butc, hf, array_length(hf));
|
|
proto_register_subtree_array(ett, array_length(ett));
|
|
}
|
|
|
|
static dcerpc_sub_dissector function_dissectors[] = {
|
|
|
|
|
|
/* INCLUDED FILE : ETH_FT */
|
|
{ 0, "BUTC_PerformDump",
|
|
butc_dissect_BUTC_PerformDump_request,
|
|
butc_dissect_BUTC_PerformDump_response },
|
|
{ 1, "BUTC_PerformRestore",
|
|
butc_dissect_BUTC_PerformRestore_request,
|
|
butc_dissect_BUTC_PerformRestore_response },
|
|
{ 2, "BUTC_AbortDump",
|
|
butc_dissect_BUTC_AbortDump_request,
|
|
butc_dissect_BUTC_AbortDump_response },
|
|
{ 3, "BUTC_LabelTape",
|
|
butc_dissect_BUTC_LabelTape_request,
|
|
butc_dissect_BUTC_LabelTape_response },
|
|
{ 4, "BUTC_ReadLabel",
|
|
butc_dissect_BUTC_ReadLabel_request,
|
|
butc_dissect_BUTC_ReadLabel_response },
|
|
{ 5, "BUTC_ScanDumps",
|
|
butc_dissect_BUTC_ScanDumps_request,
|
|
butc_dissect_BUTC_ScanDumps_response },
|
|
{ 6, "BUTC_TCInfo",
|
|
butc_dissect_BUTC_TCInfo_request,
|
|
butc_dissect_BUTC_TCInfo_response },
|
|
{ 7, "BUTC_SaveDb",
|
|
butc_dissect_BUTC_SaveDb_request,
|
|
butc_dissect_BUTC_SaveDb_response },
|
|
{ 8, "BUTC_RestoreDb",
|
|
butc_dissect_BUTC_RestoreDb_request,
|
|
butc_dissect_BUTC_RestoreDb_response },
|
|
{ 9, "BUTC_EndStatus",
|
|
butc_dissect_BUTC_EndStatus_request,
|
|
butc_dissect_BUTC_EndStatus_response },
|
|
{ 10, "BUTC_GetStatus",
|
|
butc_dissect_BUTC_GetStatus_request,
|
|
butc_dissect_BUTC_GetStatus_response },
|
|
{ 11, "BUTC_RequestAbort",
|
|
butc_dissect_BUTC_RequestAbort_request,
|
|
butc_dissect_BUTC_RequestAbort_response },
|
|
{ 12, "BUTC_ScanStatus",
|
|
butc_dissect_BUTC_ScanStatus_request,
|
|
butc_dissect_BUTC_ScanStatus_response },
|
|
{ 13, "BUTC_GetServerInterfaces",
|
|
butc_dissect_BUTC_GetServerInterfaces_request,
|
|
butc_dissect_BUTC_GetServerInterfaces_response },
|
|
/* END OF INCLUDED FILE : ETH_FT */
|
|
|
|
|
|
{ 0, NULL, NULL, NULL },
|
|
};
|
|
|
|
void
|
|
proto_reg_handoff_butc(void)
|
|
{
|
|
|
|
|
|
/* INCLUDED FILE : ETH_HANDOFF */
|
|
dcerpc_init_uuid(proto_butc, ett_butc,
|
|
&uuid_dcerpc_butc, ver_butc,
|
|
function_dissectors, hf_butc_opnum);
|
|
/* END OF INCLUDED FILE : ETH_HANDOFF */
|
|
|
|
|
|
}
|