diff options
author | Tim Potter <tpot@samba.org> | 2002-03-25 05:42:02 +0000 |
---|---|---|
committer | Tim Potter <tpot@samba.org> | 2002-03-25 05:42:02 +0000 |
commit | c9360c715fa0e87b02d74b336b8b9b1cff7d1628 (patch) | |
tree | 3b91e05606925016e64152cc62580cf36bf662e4 /packet-dcerpc-nt.h | |
parent | a2364e52b8b6f2ec601787841312b0539c6e1940 (diff) | |
download | wireshark-c9360c715fa0e87b02d74b336b8b9b1cff7d1628.tar.gz wireshark-c9360c715fa0e87b02d74b336b8b9b1cff7d1628.tar.bz2 wireshark-c9360c715fa0e87b02d74b336b8b9b1cff7d1628.zip |
Some refactoring of the spoolss dissector:
- rewrote request/response hashing code and moved it into
packet-dcerpc-nt.c for use by other dcerpc/smb dissectors
- rewrote policy handle hashing code as above, with nifty improvements
- moved check for unparsed data and end of frame into a function
- fixed matching of printername to handle in addprinterex
svn path=/trunk/; revision=5014
Diffstat (limited to 'packet-dcerpc-nt.h')
-rw-r--r-- | packet-dcerpc-nt.h | 42 |
1 files changed, 41 insertions, 1 deletions
diff --git a/packet-dcerpc-nt.h b/packet-dcerpc-nt.h index fa1b431e8c..78ede999ca 100644 --- a/packet-dcerpc-nt.h +++ b/packet-dcerpc-nt.h @@ -2,7 +2,7 @@ * Routines for DCERPC over SMB packet disassembly * Copyright 2001, Tim Potter <tpot@samba.org> * - * $Id: packet-dcerpc-nt.h,v 1.14 2002/03/19 22:09:23 guy Exp $ + * $Id: packet-dcerpc-nt.h,v 1.15 2002/03/25 05:42:01 tpot Exp $ * * Ethereal - Network traffic analyzer * By Gerald Combs <gerald@ethereal.com> @@ -126,6 +126,46 @@ dissect_ndr_nt_SID_AND_ATTRIBUTES(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *parent_tree, char *drep); +/* + * Request/response matching functions. We also hang private data here. + */ + +void +dcerpc_smb_init(void); + +guint32 +dcerpc_smb_fetch_q(dcerpc_info *di, guint16 opnum); + +void +dcerpc_smb_store_q(dcerpc_info *di, guint16 opnum, int frame_num); + +guint32 +dcerpc_smb_fetch_r(dcerpc_info *di, guint16 opnum); + +void +dcerpc_smb_store_r(dcerpc_info *di, guint16 opnum, int frame_num); + +void +dcerpc_smb_store_priv(dcerpc_info *di, guint16 opnum, void *data, int len); + +void * +dcerpc_smb_fetch_priv(dcerpc_info *di, guint16 opnum, int *len); + +/* + * Policy handle hashing + */ + +gboolean +dcerpc_smb_fetch_pol(const guint8 *policy_hnd, char **name, + int *open_frame, int *close_frame); +void +dcerpc_smb_store_pol(const guint8 *policy_hnd, char *name, int open_frame, + int close_frame); + +/* Check for unparsed data at the end of a frame */ +void +dcerpc_smb_check_long_frame(tvbuff_t *tvb, int offset, + packet_info *pinfo, proto_tree *tree); #endif /* packet-dcerpc-nt.h */ |