forked from osmocom/wireshark
initial checkin of modified idl file for autogenerating the BUTC interface
svn path=/trunk/; revision=13281
This commit is contained in:
parent
975a76b44f
commit
4fead805d5
|
@ -0,0 +1,16 @@
|
||||||
|
# $Id: Makefile 13071 2005-01-16 10:19:21Z guy $
|
||||||
|
|
||||||
|
DISSECTOR_FILES=packet-dcerpc-butc.c packet-dcerpc-butc.h
|
||||||
|
|
||||||
|
all: generate_dissector
|
||||||
|
|
||||||
|
generate_dissector: $(DISSECTOR_FILES)
|
||||||
|
|
||||||
|
$(DISSECTOR_FILES): ../idl2eth butc.idl butc.cnf template.c template.h
|
||||||
|
../idl2eth butc
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -f ETH_* $(DISSECTOR_FILES)
|
||||||
|
|
||||||
|
copy_files: generate_dissector
|
||||||
|
cp $(DISSECTOR_FILES) ../..
|
|
@ -0,0 +1,6 @@
|
||||||
|
#
|
||||||
|
#
|
||||||
|
TYPE butcNameString_t butc_dissect_NameString_t FT_STRING BASE_NONE 0 NULL 4
|
||||||
|
#
|
||||||
|
UNION_TAG_SIZE tc_statusInfoSwitch 4
|
||||||
|
#
|
|
@ -0,0 +1,482 @@
|
||||||
|
/* This idl file originally came from the DCE project but has been
|
||||||
|
significantly refactored to pass through the idl2eth idl-lite
|
||||||
|
compiler.
|
||||||
|
|
||||||
|
DCE has been released as LGPL, hats off to TheOpenGroup
|
||||||
|
|
||||||
|
|
||||||
|
The original copyright of the IDL file follos below:
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* @OSF_COPYRIGHT@
|
||||||
|
* COPYRIGHT NOTICE
|
||||||
|
* Copyright (c) 1990, 1991, 1992, 1993, 1994 Open Software Foundation, Inc.
|
||||||
|
* ALL RIGHTS RESERVED (DCE). See the file named COPYRIGHT.DCE for
|
||||||
|
* the full copyright text.
|
||||||
|
*/
|
||||||
|
/*
|
||||||
|
* HISTORY
|
||||||
|
* $Log: butc.idl,v $
|
||||||
|
* Revision 1.1.41.1 1996/10/02 17:05:24 damon
|
||||||
|
* Newest DFS from Transarc
|
||||||
|
* [1996/10/01 18:05:16 damon]
|
||||||
|
*
|
||||||
|
* Revision 1.1.35.2 1994/06/09 13:52:46 annie
|
||||||
|
* fixed copyright in src/file
|
||||||
|
* [1994/06/08 21:26:40 annie]
|
||||||
|
*
|
||||||
|
* Revision 1.1.35.1 1994/02/04 20:06:46 devsrc
|
||||||
|
* Merged from 1.0.3a to 1.1
|
||||||
|
* [1994/02/04 15:06:52 devsrc]
|
||||||
|
*
|
||||||
|
* Revision 1.1.33.1 1993/12/07 17:13:22 jaffe
|
||||||
|
* 1.0.3a update from Transarc
|
||||||
|
* [1993/12/03 12:59:50 jaffe]
|
||||||
|
*
|
||||||
|
* Revision 1.1.2.5 1993/01/18 20:47:57 cjd
|
||||||
|
* embedded copyright notice
|
||||||
|
* [1993/01/18 17:33:13 cjd]
|
||||||
|
*
|
||||||
|
* Revision 1.1.2.4 1993/01/13 15:53:56 shl
|
||||||
|
* Transarc delta: cfe-ot6054-genl-and-i18n-spares 1.1
|
||||||
|
* Selected comments:
|
||||||
|
* Add spares to several RPC structures, with two goals:
|
||||||
|
* - general future usage
|
||||||
|
* - allow for at least some internationalization designs
|
||||||
|
* The only tricky part of this work is that the on-the-wire representation for
|
||||||
|
* directory contents is expanded.
|
||||||
|
* Transarc delta: vijay-ot6381-correct-handling-of-device-queue-lock 1.4
|
||||||
|
* Selected comments:
|
||||||
|
*
|
||||||
|
* The aim of this delta is to get bak restore to succeed. The problems in restore
|
||||||
|
* were some spurious thread exceptions and assertions that made bak dump core.
|
||||||
|
* Upon investigation it turned out that there were some locking problems in
|
||||||
|
* backup and butc. The delta cleans up locking in backup and butc.
|
||||||
|
* The delta is not ready for export. Much more needs to be done to get all the
|
||||||
|
* locking issues right. This is just a checkpoint.
|
||||||
|
* Second set of changes to get locking issues in order. This time the changes
|
||||||
|
* are mostly in bakserver. The changes introduced are
|
||||||
|
* 1. Establish a global lock so that two RPCs do not interfere with each other.
|
||||||
|
* This was introduced because there are some global data structures in
|
||||||
|
* backup that might get affected. These global structures now have
|
||||||
|
* individual locks to serialize changes. The global lock in temporary, and
|
||||||
|
* will go away once we have serialized all accesses to all global data
|
||||||
|
* structures.
|
||||||
|
* 2. Disable cancels in bakserver RPCs. Care is taken to not disable cancels in
|
||||||
|
* operations that can be cancelled. There is some more work that needs to be
|
||||||
|
* done in this area.
|
||||||
|
* 3. Accesses to the database are controlled by memoryDB.lock. The accesses are
|
||||||
|
* by means of dbread and dbwrite. The hash tables too are protected by this
|
||||||
|
* mechanism.
|
||||||
|
* 4. Changes to the backup database dump code to simplify the dump operation. In
|
||||||
|
* particular, the Unix pipe mechanism is used to synchronize reader and
|
||||||
|
* writer without need for condition variables.
|
||||||
|
* 5. Get rid of any pthread_mutex and pthread_cond operations. Use afslk and
|
||||||
|
* afsos routines instead.
|
||||||
|
* 6. Continue the work described by the previous revision of the delta in bak
|
||||||
|
* and butc. This should be it for changes in bak and butc.
|
||||||
|
* Fix compilation problems on the RIOS.
|
||||||
|
* This is hopefully the final revision of this delta. The fixes here are
|
||||||
|
* 1. Changes to the bakserver and butc RPC interfaces.
|
||||||
|
* The RPCs that handle variable size arrays now use conformant arrays.
|
||||||
|
* This avoids allocating lots of memory on the client thread stack which
|
||||||
|
* was the cause of the exceptions in restoreft. The server allocates
|
||||||
|
* memory which is freed by the server stub on the way out. The client thread
|
||||||
|
* frees the memory allocated by the client stub.
|
||||||
|
* 2. get database dump and restore to handle status correctly.
|
||||||
|
* 3. Get the locking hierarchy right in bakserver, bak and butc.
|
||||||
|
* 4. Other minor nits.
|
||||||
|
* There is still a problem with scantape -dbadd that has to be addressed. With
|
||||||
|
* this delta, all backup commands should work when used in a straightforward
|
||||||
|
* manner. Some error cases are still not handled properly though. Subsequent
|
||||||
|
* deltas would fix those.
|
||||||
|
* Transarc delta: vijay-ot6604-butc-add-spares 1.1
|
||||||
|
* Selected comments:
|
||||||
|
*
|
||||||
|
* Add spares to butc structures wherever necessary.
|
||||||
|
* [1993/01/12 18:39:46 shl]
|
||||||
|
*
|
||||||
|
* Revision 1.1.2.3 1992/11/24 15:42:03 bolinger
|
||||||
|
* Change include file install directory from .../afs to .../dcedfs.
|
||||||
|
* [1992/11/22 16:10:10 bolinger]
|
||||||
|
*
|
||||||
|
* Revision 1.1.2.2 1992/08/31 18:37:26 jaffe
|
||||||
|
* Transarc delta: cfe-ot4029-portable-rpc-data-types 1.2
|
||||||
|
* Selected comments:
|
||||||
|
* If ``long'' could possibly mean ``64 bits'' any time soon, we need to keep
|
||||||
|
* our RPC interfaces from breaking.
|
||||||
|
* More of the same. Forgot a couple of .idl files, and needed to change
|
||||||
|
* a couple of procedure signatures to match.
|
||||||
|
* forgot this one too
|
||||||
|
* [1992/08/28 20:59:01 jaffe]
|
||||||
|
*
|
||||||
|
* Revision 1.1 1992/01/19 02:57:17 devrcs
|
||||||
|
* Initial revision
|
||||||
|
*
|
||||||
|
* $EndLog$
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
/* changed to the following types:
|
||||||
|
time_t 4 bytes, aligned at 4 bytes holding a unix time_t
|
||||||
|
uint32 4 byte unsigned integer
|
||||||
|
int32 4 byte signed integer
|
||||||
|
|
||||||
|
renamed error_status_t WERROR a 32bit integer ststus code
|
||||||
|
removed handle_t it has no wire encoding
|
||||||
|
|
||||||
|
rewrote the unions so that idl2eth can parse them
|
||||||
|
|
||||||
|
changed all varying strings to the type butcNameString_t which is
|
||||||
|
implemented in the template
|
||||||
|
|
||||||
|
changed the structs so they are compatible with idl2eth
|
||||||
|
|
||||||
|
afshyper is called udlong in idl2eth 8 bytes, aligned at 4 bytes
|
||||||
|
|
||||||
|
added afsnetaddr definition
|
||||||
|
|
||||||
|
*/
|
||||||
|
[
|
||||||
|
uuid("1d193c08-000b-11ca-ba1d-02608c2ea96e"),
|
||||||
|
version(4.0),
|
||||||
|
/*provider_version(1)*/
|
||||||
|
pointer_default(ptr) /* All pointers are by default Full pointers */
|
||||||
|
] interface butc
|
||||||
|
{
|
||||||
|
|
||||||
|
const long TC_DEFAULT_STACK_SIZE = 153600; /* stack size for tc threads */
|
||||||
|
const long TC_MAXGENNAMELEN = 512; /* length of generic name */
|
||||||
|
const long TC_MAXDUMPPATH = 256; /* dump path names*/
|
||||||
|
const long TC_MAXNAMELEN = 128; /* name length */
|
||||||
|
const long TC_MAXFORMATLEN = 100; /*size of the format statement */
|
||||||
|
const long TC_MAXHOSTLEN = 128; /*for server/machine names */
|
||||||
|
const long TC_MAXTAPELEN = 256; /*max tape name allowed */
|
||||||
|
const long TC_STAT_DONE = 1; /* all done */
|
||||||
|
const long TC_STAT_OPRWAIT = 2; /* waiting for user interaction */
|
||||||
|
const long TC_STAT_DUMP = 4; /* true if dump, false if restore */
|
||||||
|
const long TC_STAT_ABORTED = 8; /* the operation was aborted */
|
||||||
|
const long TC_STAT_ERROR = 16; /* error ocuured in the operation */
|
||||||
|
const long TSK_STAT_FIRST = 0x1; /* get id of first task */
|
||||||
|
const long TSK_STAT_END = 0x2; /* no more tasks */
|
||||||
|
const long TSK_STAT_NOTFOUND= 0x4; /* couldn't find task id requested */
|
||||||
|
|
||||||
|
const long TCOP_NONE = 0;
|
||||||
|
const long TCOP_READLABEL = 1;
|
||||||
|
const long TCOP_LABELTAPE = 2;
|
||||||
|
const long TCOP_DUMP = 3;
|
||||||
|
const long TCOP_RESTORE = 4;
|
||||||
|
const long TCOP_SCANTAPE = 5;
|
||||||
|
const long TCOP_SAVEDB = 6;
|
||||||
|
const long TCOP_RESTOREDB = 7;
|
||||||
|
const long TCOP_STATUS = 8;
|
||||||
|
const long TCOP_SPARE = 9;
|
||||||
|
|
||||||
|
/*typedef [string] byte butcNameString_t[TC_MAXGENNAMELEN];*/
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
uint16 type;
|
||||||
|
uint8 data[14];
|
||||||
|
} afsNetAddr;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
udlong vid; /* volume to dump */
|
||||||
|
butcNameString_t name; /* name of volume whose clone is to
|
||||||
|
be dumped*/
|
||||||
|
int32 partition; /* partition at which to find the volume */
|
||||||
|
time_t date; /* date from which to do the dump */
|
||||||
|
time_t cloneDate; /* clone date of the volume */
|
||||||
|
afsNetAddr hostAddr; /* file server for this volume */
|
||||||
|
uint32 spare1;
|
||||||
|
uint32 spare2;
|
||||||
|
uint32 spare3;
|
||||||
|
uint32 spare4;
|
||||||
|
} tc_dumpDesc;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
int32 frag; /* fragment number, 1..n */
|
||||||
|
butcNameString_t tapeName; /*name of tape frag is on*/
|
||||||
|
int32 position; /*start position of frag on tape */
|
||||||
|
udlong origVid; /* original volume id */
|
||||||
|
udlong vid; /* 0 means allocate new volid */
|
||||||
|
int32 partition; /* where to restore the volume */
|
||||||
|
int32 flags; /* flags */
|
||||||
|
afsNetAddr hostAddr; /* file server to restore volume to */
|
||||||
|
uint32 realDumpId; /* dump id associated with this tape */
|
||||||
|
uint32 spare2;
|
||||||
|
uint32 spare3;
|
||||||
|
uint32 spare4;
|
||||||
|
butcNameString_t oldName; /* volume whose clone is to
|
||||||
|
be dumped */
|
||||||
|
butcNameString_t newName; /* new name suffix */
|
||||||
|
} tc_restoreDesc;
|
||||||
|
|
||||||
|
/*describes the current status of a dump */
|
||||||
|
typedef struct {
|
||||||
|
int32 dumpID; /* dump id we're returning */
|
||||||
|
int32 bytesDumped; /* bytes dumped so far */
|
||||||
|
udlong volumeBeingDumped; /* guess ?*/
|
||||||
|
int32 numVolErrs; /* # of volumes that had errors */
|
||||||
|
int32 flags; /* true if the dump is done */
|
||||||
|
uint32 spare1;
|
||||||
|
uint32 spare2;
|
||||||
|
uint32 spare3;
|
||||||
|
uint32 spare4;
|
||||||
|
} tc_dumpStat;
|
||||||
|
|
||||||
|
/*identifier for a tape */
|
||||||
|
typedef struct {
|
||||||
|
uint32 size; /* size of tape in bytes */
|
||||||
|
uint32 size_ext;
|
||||||
|
uint32 spare1;
|
||||||
|
uint32 spare2;
|
||||||
|
uint32 spare3;
|
||||||
|
uint32 spare4;
|
||||||
|
uint32 nameLen; /* length of tape name */
|
||||||
|
butcNameString_t name;
|
||||||
|
} tc_tapeLabel;
|
||||||
|
|
||||||
|
/* restore flags */
|
||||||
|
const long TC_RESTORE_CREATE = 1; /* create new volume; fail if there */
|
||||||
|
const long TC_RESTORE_INCR = 2; /* incremental, must already exist */
|
||||||
|
|
||||||
|
typedef struct { /* describes a tape sequence */
|
||||||
|
int32 id; /* unique id of tapeSet,
|
||||||
|
assigned by budb */
|
||||||
|
butcNameString_t tapeServer; /* name of server where
|
||||||
|
this tape is */
|
||||||
|
butcNameString_t format; /* using printf to make
|
||||||
|
tape name */
|
||||||
|
int32 maxTapes; /* maximum number of tapes in seq. */
|
||||||
|
int32 a; int32 b; /* linear transforms for tape */
|
||||||
|
int32 expDate; /* expiration date */
|
||||||
|
int32 expType; /* absolute or relative expiration */
|
||||||
|
uint32 spare1;
|
||||||
|
uint32 spare2;
|
||||||
|
uint32 spare3;
|
||||||
|
uint32 spare4;
|
||||||
|
} tc_tapeSet;
|
||||||
|
|
||||||
|
/* identifies the tape coordinator interface */
|
||||||
|
typedef struct {
|
||||||
|
int32 tcVersion; /* for the interface & this struct */
|
||||||
|
uint32 spare1;
|
||||||
|
uint32 spare2;
|
||||||
|
uint32 spare3;
|
||||||
|
uint32 spare4;
|
||||||
|
} tc_tcInfo;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
uint32 tc_restoreArray_len; /* count of restore descriptors */
|
||||||
|
[size_is(tc_restoreArray_len),ptr] tc_restoreDesc tc_restoreArray_val[*];
|
||||||
|
} tc_restoreArray;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
uint32 tc_dumpArray_len; /* count of dump descriptors */
|
||||||
|
[size_is(tc_dumpArray_len),ptr] tc_dumpDesc tc_dumpArray[*];
|
||||||
|
} tc_dumpArray;
|
||||||
|
|
||||||
|
/* interface structure */
|
||||||
|
typedef struct {
|
||||||
|
butcNameString_t dumpPath; /* full dump path */
|
||||||
|
butcNameString_t volumeSetName; /* volume set name */
|
||||||
|
butcNameString_t dumpName; /* volset.dump */
|
||||||
|
tc_tapeSet tapeSet;
|
||||||
|
int32 parentDumpId;
|
||||||
|
int32 dumpLevel;
|
||||||
|
uint32 spare1;
|
||||||
|
uint32 spare2;
|
||||||
|
uint32 spare3;
|
||||||
|
uint32 spare4;
|
||||||
|
} tc_dumpInterface;
|
||||||
|
|
||||||
|
/* The status structure returns information about the task running in butc.
|
||||||
|
It contains a union that returns the info about the particular operation
|
||||||
|
currently running in butc.
|
||||||
|
*/
|
||||||
|
typedef struct {
|
||||||
|
uint32 nKBytes; /* bytes xferred */
|
||||||
|
butcNameString_t volumeName; /* current volume (if any) */
|
||||||
|
int32 volsFailed; /* # operation failures */
|
||||||
|
uint32 spare1;
|
||||||
|
} tc_statusInfoSwitchVol;
|
||||||
|
typedef struct {
|
||||||
|
tc_tapeLabel tapeLabel;
|
||||||
|
uint32 spare1;
|
||||||
|
} tc_statusInfoSwitchLabel;
|
||||||
|
|
||||||
|
/* 32bit tag */
|
||||||
|
typedef union {
|
||||||
|
[case(TCOP_NONE)] uint32 none;
|
||||||
|
[case(TCOP_DUMP)] tc_statusInfoSwitchVol vol;
|
||||||
|
[case(TCOP_RESTORE)] tc_statusInfoSwitchVol vol;
|
||||||
|
[case(TCOP_LABELTAPE)] tc_statusInfoSwitchLabel label;
|
||||||
|
[case(TCOP_READLABEL)] tc_statusInfoSwitchLabel label;
|
||||||
|
[case(TCOP_SCANTAPE)] uint32 spare1;
|
||||||
|
[case(TCOP_STATUS)] uint32 spare2;
|
||||||
|
[case(TCOP_SAVEDB)] uint32 spare3;
|
||||||
|
[case(TCOP_RESTOREDB)] uint32 spare4;
|
||||||
|
[case(TCOP_SPARE)] uint32 spare5;
|
||||||
|
} tc_statusInfoSwitch;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
/* general info */
|
||||||
|
butcNameString_t taskName; /* task name */
|
||||||
|
uint32 flags; /* as above */
|
||||||
|
time_t lastPolled; /* last successful poll */
|
||||||
|
|
||||||
|
/* op specific info */
|
||||||
|
tc_statusInfoSwitch info;
|
||||||
|
uint32 taskId;
|
||||||
|
|
||||||
|
|
||||||
|
/* nominal spares */
|
||||||
|
uint32 spare2;
|
||||||
|
uint32 spare3;
|
||||||
|
uint32 spare4;
|
||||||
|
} tciStatusS;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Procedure Definitions
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Start a dump, given a dump set name, a tape set name and the volumes to
|
||||||
|
* dump.
|
||||||
|
*/
|
||||||
|
/*
|
||||||
|
* provider_version(1)
|
||||||
|
*/
|
||||||
|
WERROR BUTC_PerformDump
|
||||||
|
(
|
||||||
|
[ref, in] tc_dumpInterface *tcdiPtr,
|
||||||
|
[ref, in] tc_dumpArray *dumps,
|
||||||
|
[ref, out] int32 *dumpID
|
||||||
|
);
|
||||||
|
|
||||||
|
/* Start a restore, given a dump set name, a tape set name and the volumes to
|
||||||
|
* dump.
|
||||||
|
*/
|
||||||
|
/*
|
||||||
|
* provider_version(1)
|
||||||
|
*/
|
||||||
|
WERROR BUTC_PerformRestore
|
||||||
|
(
|
||||||
|
[in] butcNameString_t *dumpSetName,
|
||||||
|
[ref, in] tc_restoreArray *restores,
|
||||||
|
[ref, out] int32 *dumpID
|
||||||
|
);
|
||||||
|
|
||||||
|
/* abort a dump */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* provider_version(1)
|
||||||
|
*/
|
||||||
|
WERROR BUTC_AbortDump
|
||||||
|
(
|
||||||
|
[in] int32 dumpID
|
||||||
|
);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* provider_version(1)
|
||||||
|
*/
|
||||||
|
WERROR BUTC_LabelTape
|
||||||
|
(
|
||||||
|
[ref, in] tc_tapeLabel *label,
|
||||||
|
[ref, out] uint32 *taskId
|
||||||
|
);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* provider_version(1)
|
||||||
|
*/
|
||||||
|
WERROR BUTC_ReadLabel
|
||||||
|
(
|
||||||
|
[ref, out] uint32 *taskId /* unused */
|
||||||
|
);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* provider_version(1)
|
||||||
|
*/
|
||||||
|
WERROR BUTC_ScanDumps
|
||||||
|
(
|
||||||
|
[in] int32 addDbFlag,
|
||||||
|
[ref, out] uint32 *taskId
|
||||||
|
);
|
||||||
|
|
||||||
|
/* For returning information about the butc interface.
|
||||||
|
* Currently this is just the version number
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* provider_version(1)
|
||||||
|
*/
|
||||||
|
WERROR BUTC_TCInfo
|
||||||
|
(
|
||||||
|
[ref, out] tc_tcInfo *tciptr
|
||||||
|
);
|
||||||
|
|
||||||
|
/* for database dump/restores */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* provider_version(1)
|
||||||
|
*/
|
||||||
|
WERROR BUTC_SaveDb
|
||||||
|
(
|
||||||
|
[ref, out] uint32 *taskId
|
||||||
|
);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* provider_version(1)
|
||||||
|
*/
|
||||||
|
WERROR BUTC_RestoreDb
|
||||||
|
(
|
||||||
|
[ref, out] uint32 *taskId
|
||||||
|
);
|
||||||
|
|
||||||
|
/* new status management */
|
||||||
|
/*
|
||||||
|
* provider_version(1)
|
||||||
|
*/
|
||||||
|
WERROR BUTC_EndStatus
|
||||||
|
(
|
||||||
|
[in] uint32 taskId
|
||||||
|
);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* provider_version(1)
|
||||||
|
*/
|
||||||
|
WERROR BUTC_GetStatus
|
||||||
|
(
|
||||||
|
[in] uint32 taskId,
|
||||||
|
[ref, out] tciStatusS *statusPtr
|
||||||
|
);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* provider_version(1)
|
||||||
|
*/
|
||||||
|
WERROR BUTC_RequestAbort
|
||||||
|
(
|
||||||
|
[in] uint32 taskId
|
||||||
|
);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* provider_version(1)
|
||||||
|
*/
|
||||||
|
WERROR BUTC_ScanStatus
|
||||||
|
(
|
||||||
|
[ref, in, out] uint32 *taskId,
|
||||||
|
[ref, out] tciStatusS *statusPtr,
|
||||||
|
[ref, in, out] uint32 *flags
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* provider_version(1)
|
||||||
|
*/
|
||||||
|
|
||||||
|
WERROR BUTC_GetServerInterfaces
|
||||||
|
(
|
||||||
|
/* [ref, in, out] dfs_interfaceList *serverInterfacesP*/
|
||||||
|
);
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,84 @@
|
||||||
|
/* DO NOT EDIT
|
||||||
|
* This dissector is autogenerated
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* packet-dcerpc-butc.c
|
||||||
|
* Routines for BUTC packet disassembly
|
||||||
|
*
|
||||||
|
* $Id: packet-dcerpc-butc.c 11592 2004-08-03 02:28:49Z guy $
|
||||||
|
*
|
||||||
|
* Ethereal - Network traffic analyzer
|
||||||
|
* By Gerald Combs <gerald@ethereal.com>
|
||||||
|
* 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifdef HAVE_CONFIG_H
|
||||||
|
#include "config.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#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;
|
||||||
|
ETH_HF
|
||||||
|
|
||||||
|
ETH_ETT
|
||||||
|
|
||||||
|
static int
|
||||||
|
butc_dissect_NameString_t(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree, guint8 *drep, int hf_index, guint32 param _U_)
|
||||||
|
{
|
||||||
|
offset=dissect_ndr_vstring(tvb, offset, pinfo, tree, drep, 1, hf_index, FALSE, NULL);
|
||||||
|
return offset;
|
||||||
|
}
|
||||||
|
|
||||||
|
ETH_CODE
|
||||||
|
|
||||||
|
void
|
||||||
|
proto_register_butc(void)
|
||||||
|
{
|
||||||
|
static hf_register_info hf[] = {
|
||||||
|
|
||||||
|
ETH_HFARR
|
||||||
|
};
|
||||||
|
|
||||||
|
static gint *ett[] = {
|
||||||
|
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[] = {
|
||||||
|
ETH_FT
|
||||||
|
{ 0, NULL, NULL, NULL },
|
||||||
|
};
|
||||||
|
|
||||||
|
void
|
||||||
|
proto_reg_handoff_butc(void)
|
||||||
|
{
|
||||||
|
ETH_HANDOFF
|
||||||
|
}
|
|
@ -0,0 +1,33 @@
|
||||||
|
/* DO NOT EDIT
|
||||||
|
* This dissector is autogenerated
|
||||||
|
*/
|
||||||
|
/* packet-dcerpc-butc.h
|
||||||
|
* Routines for BUTC packet disassembly
|
||||||
|
*
|
||||||
|
* $Id: packet-dcerpc-butc.h 11410 2004-07-18 18:06:47Z gram $
|
||||||
|
*
|
||||||
|
* Ethereal - Network traffic analyzer
|
||||||
|
* By Gerald Combs <gerald@ethereal.com>
|
||||||
|
* 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __PACKET_DCERPC_BUTC_H
|
||||||
|
#define __PACKET_DCERPC_BUTC_H
|
||||||
|
|
||||||
|
ETH_HDR
|
||||||
|
|
||||||
|
#endif /* packet-dcerpc-butc.h */
|
Loading…
Reference in New Issue