2 This filter was automatically generated
3 from /home/metze/devel/samba/4.0/master4-franky/librpc/idl/dcerpc.idl and /home/metze/devel/samba/4.0/master4-franky/librpc/idl/dcerpc.cnf.
5 Pidl is a perl based IDL compiler for DCE/RPC idl files.
6 It is maintained by the Samba team, not the Wireshark team.
7 Instructions on how to download and install Pidl can be
8 found at http://wiki.wireshark.org/Pidl
16 #pragma warning(disable:4005)
17 #pragma warning(disable:4013)
18 #pragma warning(disable:4018)
19 #pragma warning(disable:4101)
24 #include <epan/packet.h>
26 #include "packet-dcerpc.h"
27 #include "packet-dcerpc-nt.h"
28 #include "packet-windows-common.h"
29 #include "packet-dcerpc-dcerpc.h"
31 /* Ett declarations */
32 static gint ett_dcerpc_dcerpc = -1;
33 static gint ett_dcerpc_dcerpc_ctx_list = -1;
34 static gint ett_dcerpc_dcerpc_bind = -1;
35 static gint ett_dcerpc_dcerpc_empty = -1;
36 static gint ett_dcerpc_dcerpc_object = -1;
37 static gint ett_dcerpc_dcerpc_request = -1;
38 static gint ett_dcerpc_dcerpc_ack_ctx = -1;
39 static gint ett_dcerpc_dcerpc_bind_ack = -1;
40 static gint ett_dcerpc_dcerpc_bind_nak_versions = -1;
41 static gint ett_dcerpc_dcerpc_bind_nak_versions_ctr = -1;
42 static gint ett_dcerpc_dcerpc_bind_nak = -1;
43 static gint ett_dcerpc_dcerpc_response = -1;
44 static gint ett_dcerpc_dcerpc_fault = -1;
45 static gint ett_dcerpc_dcerpc_auth = -1;
46 static gint ett_dcerpc_dcerpc_auth3 = -1;
47 static gint ett_dcerpc_dcerpc_orphaned = -1;
48 static gint ett_dcerpc_dcerpc_co_cancel = -1;
49 static gint ett_dcerpc_dcerpc_cl_cancel = -1;
50 static gint ett_dcerpc_dcerpc_cancel_ack = -1;
51 static gint ett_dcerpc_dcerpc_fack = -1;
52 static gint ett_dcerpc_dcerpc_ack = -1;
53 static gint ett_dcerpc_dcerpc_ping = -1;
54 static gint ett_dcerpc_dcerpc_shutdown = -1;
55 static gint ett_dcerpc_dcerpc_working = -1;
56 static gint ett_dcerpc_RTSCookie = -1;
57 static gint ett_dcerpc_ClientAddressType = -1;
58 static gint ett_dcerpc_ClientAddress = -1;
59 static gint ett_dcerpc_FlowControlAcknowledgment = -1;
60 static gint ett_dcerpc_dcerpc_rts_cmd_ReceiveWindowSize = -1;
61 static gint ett_dcerpc_dcerpc_rts_cmd_FlowControlAck = -1;
62 static gint ett_dcerpc_dcerpc_rts_cmd_ConnectionTimeout = -1;
63 static gint ett_dcerpc_dcerpc_rts_cmd_Cookie = -1;
64 static gint ett_dcerpc_dcerpc_rts_cmd_ChannelLifetime = -1;
65 static gint ett_dcerpc_dcerpc_rts_cmd_ClientKeepalive = -1;
66 static gint ett_dcerpc_dcerpc_rts_cmd_Version = -1;
67 static gint ett_dcerpc_dcerpc_rts_cmd_Empty = -1;
68 static gint ett_dcerpc_dcerpc_rts_cmd_Padding = -1;
69 static gint ett_dcerpc_dcerpc_rts_cmd_NegativeANCE = -1;
70 static gint ett_dcerpc_dcerpc_rts_cmd_ANCE = -1;
71 static gint ett_dcerpc_dcerpc_rts_cmd_ClientAddress = -1;
72 static gint ett_dcerpc_dcerpc_rts_cmd_AssociationGroupId = -1;
73 static gint ett_dcerpc_dcerpc_rts_cmd_Destination = -1;
74 static gint ett_dcerpc_dcerpc_rts_cmd_PingTrafficSentNotify = -1;
75 static gint ett_dcerpc_dcerpc_rts_cmds = -1;
76 static gint ett_dcerpc_dcerpc_rts_cmd = -1;
77 static gint ett_dcerpc_dcerpc_rts_flags = -1;
78 static gint ett_dcerpc_dcerpc_rts = -1;
79 static gint ett_dcerpc_dcerpc_payload = -1;
80 static gint ett_dcerpc_ncacn_packet = -1;
81 static gint ett_dcerpc_ncadg_packet = -1;
84 /* Header field declarations */
85 static gint hf_dcerpc_dcerpc_rts_cmds_val0xE_PingTrafficSentNotify = -1;
86 static gint hf_dcerpc_dcerpc_auth_auth_reserved = -1;
87 static gint hf_dcerpc_dcerpc_bind_ack_secondary_address_size = -1;
88 static gint hf_dcerpc_dcerpc_request_stub_and_verifier = -1;
89 static gint hf_dcerpc_dcerpc_rts_flags_RTS_FLAG_PING = -1;
90 static gint hf_dcerpc_ncadg_packet_u = -1;
91 static gint hf_dcerpc_dcerpc_rts_cmds_val0x2_ConnectionTimeout = -1;
92 static gint hf_dcerpc_dcerpc_fack_serial_no = -1;
93 static gint hf_dcerpc_dcerpc_cl_cancel_version = -1;
94 static gint hf_dcerpc_dcerpc_rts_cmds_val0x1_FlowControlAck = -1;
95 static gint hf_dcerpc_dcerpc_orphaned_auth_info = -1;
96 static gint hf_dcerpc_dcerpc_ack_ctx_result = -1;
97 static gint hf_dcerpc_dcerpc_co_cancel_auth_info = -1;
98 static gint hf_dcerpc_dcerpc_auth_auth_context_id = -1;
99 static gint hf_dcerpc_dcerpc_rts_cmd_Command = -1;
100 static gint hf_dcerpc_dcerpc_rts_cmds_val0x8_Padding = -1;
101 static gint hf_dcerpc_ncadg_packet_fragnum = -1;
102 static gint hf_dcerpc_ncadg_packet_pfc_flags = -1;
103 static gint hf_dcerpc_ncacn_packet_u = -1;
104 static gint hf_dcerpc_dcerpc_rts_cmds_val0x4_ChannelLifetime = -1;
105 static gint hf_dcerpc_dcerpc_payload_valDCERPC_PKT_REQUEST_request = -1;
106 static gint hf_dcerpc_dcerpc_bind_nak_versions_num_versions = -1;
107 static gint hf_dcerpc_dcerpc_rts_cmds_val0xB_ClientAddress = -1;
108 static gint hf_dcerpc_ncacn_packet_auth_length = -1;
109 static gint hf_dcerpc_ncadg_packet_ihint = -1;
110 static gint hf_dcerpc_ncadg_packet_iface = -1;
111 static gint hf_dcerpc_dcerpc_rts_cmd_Padding_ConformanceCount = -1;
112 static gint hf_dcerpc_dcerpc_request_object = -1;
113 static gint hf_dcerpc_dcerpc_payload_valDCERPC_PKT_AUTH3_auth3 = -1;
114 static gint hf_dcerpc_ncacn_packet_call_id = -1;
115 static gint hf_dcerpc_dcerpc_payload_valDCERPC_PKT_BIND_ACK_bind_ack = -1;
116 static gint hf_dcerpc_dcerpc_request_alloc_hint = -1;
117 static gint hf_dcerpc_dcerpc_bind_ctx_list = -1;
118 static gint hf_dcerpc_dcerpc_ack_ctx_reason = -1;
119 static gint hf_dcerpc_dcerpc_bind_max_xmit_frag = -1;
120 static gint hf_dcerpc_dcerpc_bind_num_contexts = -1;
121 static gint hf_dcerpc_dcerpc_cl_cancel_id = -1;
122 static gint hf_dcerpc_dcerpc_ack_ctx_syntax = -1;
123 static gint hf_dcerpc_ClientAddressType_valRTS_IPV4_ClientAddressIPV4 = -1;
124 static gint hf_dcerpc_dcerpc_bind_ack_max_xmit_frag = -1;
125 static gint hf_dcerpc_dcerpc_rts_cmds_val0x6_Version = -1;
126 static gint hf_dcerpc_dcerpc_fack_max_frag_size = -1;
127 static gint hf_dcerpc_dcerpc_orphaned__pad = -1;
128 static gint hf_dcerpc_dcerpc_bind_ack_max_recv_frag = -1;
129 static gint hf_dcerpc_dcerpc_rts_cmds_val0x0_ReceiveWindowSize = -1;
130 static gint hf_dcerpc_dcerpc_payload_valDCERPC_PKT_CANCEL_ACK_cancel_ack = -1;
131 static gint hf_dcerpc_ClientAddressType_valRTS_IPV6_ClientAddressIPV6 = -1;
132 static gint hf_dcerpc_dcerpc_payload_valDCERPC_PKT_SHUTDOWN_shutdown = -1;
133 static gint hf_dcerpc_ncadg_packet_ncadg_flags = -1;
134 static gint hf_dcerpc_dcerpc_ctx_list_context_id = -1;
135 static gint hf_dcerpc_dcerpc_rts_cmds_val0x5_ClientKeepalive = -1;
136 static gint hf_dcerpc_dcerpc_rts_cmd_FlowControlAck_Ack = -1;
137 static gint hf_dcerpc_dcerpc_rts_cmds_val0x7_Empty = -1;
138 static gint hf_dcerpc_dcerpc_bind_max_recv_frag = -1;
139 static gint hf_dcerpc_dcerpc_fack_selack_size = -1;
140 static gint hf_dcerpc_dcerpc_bind_ack_secondary_address = -1;
141 static gint hf_dcerpc_dcerpc_response__pad = -1;
142 static gint hf_dcerpc_dcerpc_rts_cmd_PingTrafficSentNotify_PingTrafficSent = -1;
143 static gint hf_dcerpc_dcerpc_payload_valDCERPC_PKT_FAULT_fault = -1;
144 static gint hf_dcerpc_dcerpc_rts_NumberOfCommands = -1;
145 static gint hf_dcerpc_dcerpc_rts_cmd_ClientKeepalive_ClientKeepalive = -1;
146 static gint hf_dcerpc_ncadg_packet_server_boot = -1;
147 static gint hf_dcerpc_ncacn_packet_rpc_vers_minor = -1;
148 static gint hf_dcerpc_dcerpc_rts_Commands = -1;
149 static gint hf_dcerpc_dcerpc_fault__pad = -1;
150 static gint hf_dcerpc_dcerpc_cancel_ack_id = -1;
151 static gint hf_dcerpc_dcerpc_rts_cmd_Destination_ForwardDestination = -1;
152 static gint hf_dcerpc_dcerpc_fack_selack = -1;
153 static gint hf_dcerpc_dcerpc_payload_valDCERPC_PKT_PING_ping = -1;
154 static gint hf_dcerpc_dcerpc_payload_valDCERPC_PKT_RESPONSE_response = -1;
155 static gint hf_dcerpc_dcerpc_rts_flags_RTS_FLAG_EOF = -1;
156 static gint hf_dcerpc_dcerpc_rts_cmds_val0xD_Destination = -1;
157 static gint hf_dcerpc_ClientAddress_Padding = -1;
158 static gint hf_dcerpc_dcerpc_bind_assoc_group_id = -1;
159 static gint hf_dcerpc_dcerpc_fault_cancel_count = -1;
160 static gint hf_dcerpc_dcerpc_response_alloc_hint = -1;
161 static gint hf_dcerpc_dcerpc_fack_window_size = -1;
162 static gint hf_dcerpc_dcerpc_auth_auth_pad_length = -1;
163 static gint hf_dcerpc_ncadg_packet_serial_low = -1;
164 static gint hf_dcerpc_dcerpc_payload_valDCERPC_PKT_NOCALL_nocall = -1;
165 static gint hf_dcerpc_ncadg_packet_opnum = -1;
166 static gint hf_dcerpc_dcerpc_response_stub_and_verifier = -1;
167 static gint hf_dcerpc_FlowControlAcknowledgment_BytesReceived = -1;
168 static gint hf_dcerpc_dcerpc_auth_auth_type = -1;
169 static gint hf_dcerpc_dcerpc_payload_valDCERPC_PKT_ACK_ack = -1;
170 static gint hf_dcerpc_dcerpc_request_opnum = -1;
171 static gint hf_dcerpc_ncadg_packet_seq_num = -1;
172 static gint hf_dcerpc_dcerpc_cancel_ack_version = -1;
173 static gint hf_dcerpc_dcerpc_rts_cmds_val0x9_NegativeANCE = -1;
174 static gint hf_dcerpc_dcerpc_rts_flags_RTS_FLAG_IN_CHANNEL = -1;
175 static gint hf_dcerpc_dcerpc_bind_ack_num_results = -1;
176 static gint hf_dcerpc_FlowControlAcknowledgment_ChannelCookie = -1;
177 static gint hf_dcerpc_dcerpc_rts_cmd_AssociationGroupId_AssociationGroupId = -1;
178 static gint hf_dcerpc_dcerpc_payload_valDCERPC_PKT_RTS_rts = -1;
179 static gint hf_dcerpc_dcerpc_co_cancel__pad = -1;
180 static gint hf_dcerpc_dcerpc_request__pad = -1;
181 static gint hf_dcerpc_dcerpc_auth_credentials = -1;
182 static gint hf_dcerpc_dcerpc_rts_flags_RTS_FLAG_OTHER_CMD = -1;
183 static gint hf_dcerpc_dcerpc_bind_nak_versions_versions = -1;
184 static gint hf_dcerpc_ncadg_packet_activity = -1;
185 static gint hf_dcerpc_dcerpc_payload_valDCERPC_PKT_CL_CANCEL_cl_cancel = -1;
186 static gint hf_dcerpc_dcerpc_rts_cmd_ChannelLifetime_ChannelLifetime = -1;
187 static gint hf_dcerpc_ncadg_packet_auth_proto = -1;
188 static gint hf_dcerpc_dcerpc_bind_ack_assoc_group_id = -1;
189 static gint hf_dcerpc_dcerpc_payload_valDCERPC_PKT_ALTER_RESP_alter_resp = -1;
190 static gint hf_dcerpc_dcerpc_fault_context_id = -1;
191 static gint hf_dcerpc_ncacn_packet_drep = -1;
192 static gint hf_dcerpc_dcerpc_bind_nak_reject_reason = -1;
193 static gint hf_dcerpc_dcerpc_cancel_ack_server_is_accepting = -1;
194 static gint hf_dcerpc_dcerpc_rts_cmd_ClientAddress_ClientAddress = -1;
195 static gint hf_dcerpc_dcerpc_auth3_auth_info = -1;
196 static gint hf_dcerpc_dcerpc_object_valLIBNDR_FLAG_OBJECT_PRESENT_object = -1;
197 static gint hf_dcerpc_FlowControlAcknowledgment_AvailableWindow = -1;
198 static gint hf_dcerpc_ncacn_packet_frag_length = -1;
199 static gint hf_dcerpc_dcerpc_bind_ack__pad1 = -1;
200 static gint hf_dcerpc_dcerpc_ctx_list_num_transfer_syntaxes = -1;
201 static gint hf_dcerpc_dcerpc_bind_auth_info = -1;
202 static gint hf_dcerpc_dcerpc_auth_auth_level = -1;
203 static gint hf_dcerpc_dcerpc_payload_valDCERPC_PKT_WORKING_working = -1;
204 static gint hf_dcerpc_ncadg_packet_ptype = -1;
205 static gint hf_dcerpc_dcerpc_payload_valDCERPC_PKT_CO_CANCEL_co_cancel = -1;
206 static gint hf_dcerpc_ncacn_packet_ptype = -1;
207 static gint hf_dcerpc_dcerpc_fault_status = -1;
208 static gint hf_dcerpc_dcerpc_rts_cmds_val0xA_ANCE = -1;
209 static gint hf_dcerpc_ncadg_packet_serial_high = -1;
210 static gint hf_dcerpc_dcerpc_auth3__pad = -1;
211 static gint hf_dcerpc_dcerpc_rts_cmd_Padding_Padding = -1;
212 static gint hf_dcerpc_ClientAddress_ClientAddress = -1;
213 static gint hf_dcerpc_dcerpc_rts_cmd_Cookie_Cookie = -1;
214 static gint hf_dcerpc_dcerpc_payload_valDCERPC_PKT_FACK_fack = -1;
215 static gint hf_dcerpc_dcerpc_payload_valDCERPC_PKT_REJECT_reject = -1;
216 static gint hf_dcerpc_dcerpc_rts_cmd_ConnectionTimeout_ConnectionTimeout = -1;
217 static gint hf_dcerpc_ncadg_packet_iface_version = -1;
218 static gint hf_dcerpc_dcerpc_rts_flags_RTS_FLAG_ECHO = -1;
219 static gint hf_dcerpc_dcerpc_rts_cmds_val0x3_Cookie = -1;
220 static gint hf_dcerpc_dcerpc_bind_nak_versions_ctr_valDECRPC_BIND_PROTOCOL_VERSION_NOT_SUPPORTED_v = -1;
221 static gint hf_dcerpc_dcerpc_fack_max_tdsu = -1;
222 static gint hf_dcerpc_dcerpc_payload_valDCERPC_PKT_BIND_NAK_bind_nak = -1;
223 static gint hf_dcerpc_dcerpc_rts_cmd_CommandType = -1;
224 static gint hf_dcerpc_ncacn_packet_rpc_vers = -1;
225 static gint hf_dcerpc_dcerpc_bind_nak_versions = -1;
226 static gint hf_dcerpc_dcerpc_request_context_id = -1;
227 static gint hf_dcerpc_ncadg_packet_ahint = -1;
228 static gint hf_dcerpc_dcerpc_rts_flags_RTS_FLAG_OUT_CHANNEL = -1;
229 static gint hf_dcerpc_dcerpc_bind_ack_ctx_list = -1;
230 static gint hf_dcerpc_dcerpc_fack_version = -1;
231 static gint hf_dcerpc_dcerpc_rts_cmd_Version_Version = -1;
232 static gint hf_dcerpc_dcerpc_rts_cmds_val0xC_AssociationGroupId = -1;
233 static gint hf_dcerpc_dcerpc_rts_cmd_ReceiveWindowSize_ReceiveWindowSize = -1;
234 static gint hf_dcerpc_ncadg_packet_rpc_vers = -1;
235 static gint hf_dcerpc_RTSCookie_Cookie = -1;
236 static gint hf_dcerpc_dcerpc_rts_Flags = -1;
237 static gint hf_dcerpc_dcerpc_payload_valDCERPC_PKT_ALTER_alter = -1;
238 static gint hf_dcerpc_ClientAddress_AddressType = -1;
239 static gint hf_dcerpc_dcerpc_response_context_id = -1;
240 static gint hf_dcerpc_dcerpc_payload_valDCERPC_PKT_BIND_bind = -1;
241 static gint hf_dcerpc_ncadg_packet_drep = -1;
242 static gint hf_dcerpc_ncadg_packet_len = -1;
243 static gint hf_dcerpc_opnum = -1;
244 static gint hf_dcerpc_dcerpc_fault_alloc_hint = -1;
245 static gint hf_dcerpc_dcerpc_rts_flags_RTS_FLAG_NONE = -1;
246 static gint hf_dcerpc_ncadg_packet_object = -1;
247 static gint hf_dcerpc_dcerpc_response_cancel_count = -1;
248 static gint hf_dcerpc_dcerpc_fack__pad1 = -1;
249 static gint hf_dcerpc_dcerpc_ctx_list_abstract_syntax = -1;
250 static gint hf_dcerpc_dcerpc_rts_flags_RTS_FLAG_RECYCLE_CHANNEL = -1;
251 static gint hf_dcerpc_ncacn_packet_pfc_flags = -1;
252 static gint hf_dcerpc_dcerpc_object_valdefault_empty = -1;
253 static gint hf_dcerpc_dcerpc_payload_valDCERPC_PKT_ORPHANED_orphaned = -1;
254 static gint hf_dcerpc_dcerpc_ctx_list_transfer_syntaxes = -1;
255 static gint hf_dcerpc_dcerpc_bind_ack_auth_info = -1;
257 static gint proto_dcerpc_dcerpc = -1;
258 /* Version information */
261 static e_uuid_t uuid_dcerpc_dcerpc = {
263 { 0x, 0x, 0x, 0x, 0x, 0x, 0x, 0x }
265 static guint16 ver_dcerpc_dcerpc = 0;
267 static int dcerpc_dissect_element_ctx_list_context_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
268 static int dcerpc_dissect_element_ctx_list_num_transfer_syntaxes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
269 static int dcerpc_dissect_element_ctx_list_abstract_syntax(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
270 static int dcerpc_dissect_element_ctx_list_transfer_syntaxes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
271 static int dcerpc_dissect_element_ctx_list_transfer_syntaxes_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
272 static int dcerpc_dissect_element_bind_max_xmit_frag(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
273 static int dcerpc_dissect_element_bind_max_recv_frag(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
274 static int dcerpc_dissect_element_bind_assoc_group_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
275 static int dcerpc_dissect_element_bind_num_contexts(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
276 static int dcerpc_dissect_element_bind_ctx_list(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
277 static int dcerpc_dissect_element_bind_ctx_list_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
278 static int dcerpc_dissect_element_bind_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
279 static int dcerpc_dissect_element_object_valdefault_empty(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
280 static int dcerpc_dissect_element_object_valLIBNDR_FLAG_OBJECT_PRESENT_object(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
281 static int dcerpc_dissect_element_request_alloc_hint(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
282 static int dcerpc_dissect_element_request_context_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
283 static int dcerpc_dissect_element_request_opnum(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
284 static int dcerpc_dissect_element_request_object(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint32 *);
285 static int dcerpc_dissect_element_request__pad(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
286 static int dcerpc_dissect_element_request_stub_and_verifier(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
287 static int dcerpc_dissect_element_ack_ctx_result(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
288 static int dcerpc_dissect_element_ack_ctx_reason(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
289 static int dcerpc_dissect_element_ack_ctx_syntax(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
290 static int dcerpc_dissect_element_bind_ack_max_xmit_frag(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
291 static int dcerpc_dissect_element_bind_ack_max_recv_frag(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
292 static int dcerpc_dissect_element_bind_ack_assoc_group_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
293 static int dcerpc_dissect_element_bind_ack_secondary_address_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
294 static int dcerpc_dissect_element_bind_ack_secondary_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
295 static int dcerpc_dissect_element_bind_ack_secondary_address_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
296 static int dcerpc_dissect_element_bind_ack__pad1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
297 static int dcerpc_dissect_element_bind_ack_num_results(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
298 static int dcerpc_dissect_element_bind_ack_ctx_list(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
299 static int dcerpc_dissect_element_bind_ack_ctx_list_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
300 static int dcerpc_dissect_element_bind_ack_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
301 static int dcerpc_dissect_element_bind_nak_versions_num_versions(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
302 static int dcerpc_dissect_element_bind_nak_versions_versions(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
303 static int dcerpc_dissect_element_bind_nak_versions_versions_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
304 static int dcerpc_dissect_element_bind_nak_versions_ctr_valDECRPC_BIND_PROTOCOL_VERSION_NOT_SUPPORTED_v(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
305 static int dcerpc_dissect_element_bind_nak_reject_reason(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint16 *reject_reason);
306 static int dcerpc_dissect_element_bind_nak_versions(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint16 *reject_reason);
307 static int dcerpc_dissect_element_response_alloc_hint(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
308 static int dcerpc_dissect_element_response_context_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
309 static int dcerpc_dissect_element_response_cancel_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
310 static int dcerpc_dissect_element_response__pad(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
311 static int dcerpc_dissect_element_response_stub_and_verifier(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
312 const value_string dcerpc_dcerpc_nca_status_vals[] = {
313 { DCERPC_NCA_S_COMM_FAILURE, "DCERPC_NCA_S_COMM_FAILURE" },
314 { DCERPC_NCA_S_OP_RNG_ERROR, "DCERPC_NCA_S_OP_RNG_ERROR" },
315 { DCERPC_NCA_S_UNKNOWN_IF, "DCERPC_NCA_S_UNKNOWN_IF" },
316 { DCERPC_NCA_S_WRONG_BOOT_TIME, "DCERPC_NCA_S_WRONG_BOOT_TIME" },
317 { DCERPC_NCA_S_YOU_CRASHED, "DCERPC_NCA_S_YOU_CRASHED" },
318 { DCERPC_NCA_S_PROTO_ERROR, "DCERPC_NCA_S_PROTO_ERROR" },
319 { DCERPC_NCA_S_OUT_ARGS_TOO_BIG, "DCERPC_NCA_S_OUT_ARGS_TOO_BIG" },
320 { DCERPC_NCA_S_SERVER_TOO_BUSY, "DCERPC_NCA_S_SERVER_TOO_BUSY" },
321 { DCERPC_NCA_S_FAULT_STRING_TOO_LARGE, "DCERPC_NCA_S_FAULT_STRING_TOO_LARGE" },
322 { DCERPC_NCA_S_UNSUPPORTED_TYPE, "DCERPC_NCA_S_UNSUPPORTED_TYPE" },
323 { DCERPC_NCA_S_FAULT_INT_DIV_BY_ZERO, "DCERPC_NCA_S_FAULT_INT_DIV_BY_ZERO" },
324 { DCERPC_NCA_S_FAULT_ADDR_ERROR, "DCERPC_NCA_S_FAULT_ADDR_ERROR" },
325 { DCERPC_NCA_S_FAULT_FP_DIV_BY_ZERO, "DCERPC_NCA_S_FAULT_FP_DIV_BY_ZERO" },
326 { DCERPC_NCA_S_FAULT_FP_UNDERFLOW, "DCERPC_NCA_S_FAULT_FP_UNDERFLOW" },
327 { DCERPC_NCA_S_FAULT_FP_OVERRFLOW, "DCERPC_NCA_S_FAULT_FP_OVERRFLOW" },
328 { DCERPC_NCA_S_FAULT_INVALID_TAG, "DCERPC_NCA_S_FAULT_INVALID_TAG" },
329 { DCERPC_NCA_S_FAULT_INVALID_BOUND, "DCERPC_NCA_S_FAULT_INVALID_BOUND" },
330 { DCERPC_NCA_S_FAULT_RPC_VERSION_MISMATCH, "DCERPC_NCA_S_FAULT_RPC_VERSION_MISMATCH" },
331 { DCERPC_NCA_S_FAULT_UNSPEC_REJECT, "DCERPC_NCA_S_FAULT_UNSPEC_REJECT" },
332 { DCERPC_NCA_S_FAULT_BAD_ACTID, "DCERPC_NCA_S_FAULT_BAD_ACTID" },
333 { DCERPC_NCA_S_FAULT_WHO_ARE_YOU_FAILED, "DCERPC_NCA_S_FAULT_WHO_ARE_YOU_FAILED" },
334 { DCERPC_NCA_S_FAULT_MANAGER_NOT_ENTERED, "DCERPC_NCA_S_FAULT_MANAGER_NOT_ENTERED" },
335 { DCERPC_NCA_S_FAULT_CANCEL, "DCERPC_NCA_S_FAULT_CANCEL" },
336 { DCERPC_NCA_S_FAULT_ILL_INST, "DCERPC_NCA_S_FAULT_ILL_INST" },
337 { DCERPC_NCA_S_FAULT_FP_ERROR, "DCERPC_NCA_S_FAULT_FP_ERROR" },
338 { DCERPC_NCA_S_FAULT_INT_OVERFLOW, "DCERPC_NCA_S_FAULT_INT_OVERFLOW" },
339 { DCERPC_NCA_S_UNUSED_1C000011, "DCERPC_NCA_S_UNUSED_1C000011" },
340 { DCERPC_NCA_S_FAULT_UNSPEC, "DCERPC_NCA_S_FAULT_UNSPEC" },
341 { DCERPC_NCA_S_FAULT_REMOTE_COMM_FAILURE, "DCERPC_NCA_S_FAULT_REMOTE_COMM_FAILURE" },
342 { DCERPC_NCA_S_FAULT_PIPE_EMPTY, "DCERPC_NCA_S_FAULT_PIPE_EMPTY" },
343 { DCERPC_NCA_S_FAULT_PIPE_CLOSED, "DCERPC_NCA_S_FAULT_PIPE_CLOSED" },
344 { DCERPC_NCA_S_FAULT_PIPE_ORDER, "DCERPC_NCA_S_FAULT_PIPE_ORDER" },
345 { DCERPC_NCA_S_FAULT_PIPE_DISCIPLINE, "DCERPC_NCA_S_FAULT_PIPE_DISCIPLINE" },
346 { DCERPC_NCA_S_FAULT_PIPE_COMM_ERROR, "DCERPC_NCA_S_FAULT_PIPE_COMM_ERROR" },
347 { DCERPC_NCA_S_FAULT_PIPE_MEMORY, "DCERPC_NCA_S_FAULT_PIPE_MEMORY" },
348 { DCERPC_NCA_S_FAULT_CONTEXT_MISMATCH, "DCERPC_NCA_S_FAULT_CONTEXT_MISMATCH" },
349 { DCERPC_NCA_S_FAULT_REMOTE_NO_MEMORY, "DCERPC_NCA_S_FAULT_REMOTE_NO_MEMORY" },
350 { DCERPC_NCA_S_INVALID_PRES_CONTEXT_ID, "DCERPC_NCA_S_INVALID_PRES_CONTEXT_ID" },
351 { DCERPC_NCA_S_UNSUPPORTED_AUTHN_LEVEL, "DCERPC_NCA_S_UNSUPPORTED_AUTHN_LEVEL" },
352 { DCERPC_NCA_S_UNUSED_1C00001E, "DCERPC_NCA_S_UNUSED_1C00001E" },
353 { DCERPC_NCA_S_INVALID_CHECKSUM, "DCERPC_NCA_S_INVALID_CHECKSUM" },
354 { DCERPC_NCA_S_INVALID_CRC, "DCERPC_NCA_S_INVALID_CRC" },
355 { DCERPC_NCA_S_FAULT_USER_DEFINED, "DCERPC_NCA_S_FAULT_USER_DEFINED" },
356 { DCERPC_NCA_S_FAULT_TX_OPEN_FAILED, "DCERPC_NCA_S_FAULT_TX_OPEN_FAILED" },
357 { DCERPC_NCA_S_FAULT_CODESET_CONV_ERROR, "DCERPC_NCA_S_FAULT_CODESET_CONV_ERROR" },
358 { DCERPC_NCA_S_FAULT_OBJECT_NOT_FOUND, "DCERPC_NCA_S_FAULT_OBJECT_NOT_FOUND" },
359 { DCERPC_NCA_S_FAULT_NO_CLIENT_STUB, "DCERPC_NCA_S_FAULT_NO_CLIENT_STUB" },
362 static int dcerpc_dissect_element_fault_alloc_hint(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
363 static int dcerpc_dissect_element_fault_context_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
364 static int dcerpc_dissect_element_fault_cancel_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
365 static int dcerpc_dissect_element_fault_status(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
366 static int dcerpc_dissect_element_fault__pad(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
367 const value_string dcerpc_dcerpc_AuthType_vals[] = {
368 { DCERPC_AUTH_TYPE_NONE, "DCERPC_AUTH_TYPE_NONE" },
369 { DCERPC_AUTH_TYPE_KRB5_1, "DCERPC_AUTH_TYPE_KRB5_1" },
370 { DCERPC_AUTH_TYPE_SPNEGO, "DCERPC_AUTH_TYPE_SPNEGO" },
371 { DCERPC_AUTH_TYPE_NTLMSSP, "DCERPC_AUTH_TYPE_NTLMSSP" },
372 { DCERPC_AUTH_TYPE_KRB5, "DCERPC_AUTH_TYPE_KRB5" },
373 { DCERPC_AUTH_TYPE_DPA, "DCERPC_AUTH_TYPE_DPA" },
374 { DCERPC_AUTH_TYPE_MSN, "DCERPC_AUTH_TYPE_MSN" },
375 { DCERPC_AUTH_TYPE_DIGEST, "DCERPC_AUTH_TYPE_DIGEST" },
376 { DCERPC_AUTH_TYPE_SCHANNEL, "DCERPC_AUTH_TYPE_SCHANNEL" },
377 { DCERPC_AUTH_TYPE_MSMQ, "DCERPC_AUTH_TYPE_MSMQ" },
378 { DCERPC_AUTH_TYPE_NCALRPC_AS_SYSTEM, "DCERPC_AUTH_TYPE_NCALRPC_AS_SYSTEM" },
381 const value_string dcerpc_dcerpc_AuthLevel_vals[] = {
382 { DCERPC_AUTH_LEVEL_NONE, "DCERPC_AUTH_LEVEL_NONE" },
383 { DCERPC_AUTH_LEVEL_CONNECT, "DCERPC_AUTH_LEVEL_CONNECT" },
384 { DCERPC_AUTH_LEVEL_CALL, "DCERPC_AUTH_LEVEL_CALL" },
385 { DCERPC_AUTH_LEVEL_PACKET, "DCERPC_AUTH_LEVEL_PACKET" },
386 { DCERPC_AUTH_LEVEL_INTEGRITY, "DCERPC_AUTH_LEVEL_INTEGRITY" },
387 { DCERPC_AUTH_LEVEL_PRIVACY, "DCERPC_AUTH_LEVEL_PRIVACY" },
390 static int dcerpc_dissect_element_auth_auth_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
391 static int dcerpc_dissect_element_auth_auth_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
392 static int dcerpc_dissect_element_auth_auth_pad_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
393 static int dcerpc_dissect_element_auth_auth_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
394 static int dcerpc_dissect_element_auth_auth_context_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
395 static int dcerpc_dissect_element_auth_credentials(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
396 static int dcerpc_dissect_element_auth3__pad(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
397 static int dcerpc_dissect_element_auth3_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
398 static int dcerpc_dissect_element_orphaned__pad(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
399 static int dcerpc_dissect_element_orphaned_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
400 static int dcerpc_dissect_element_co_cancel__pad(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
401 static int dcerpc_dissect_element_co_cancel_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
402 static int dcerpc_dissect_element_cl_cancel_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
403 static int dcerpc_dissect_element_cl_cancel_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
404 static int dcerpc_dissect_element_cancel_ack_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
405 static int dcerpc_dissect_element_cancel_ack_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
406 static int dcerpc_dissect_element_cancel_ack_server_is_accepting(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
407 static int dcerpc_dissect_element_fack_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
408 static int dcerpc_dissect_element_fack__pad1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
409 static int dcerpc_dissect_element_fack_window_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
410 static int dcerpc_dissect_element_fack_max_tdsu(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
411 static int dcerpc_dissect_element_fack_max_frag_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
412 static int dcerpc_dissect_element_fack_serial_no(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
413 static int dcerpc_dissect_element_fack_selack_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
414 static int dcerpc_dissect_element_fack_selack(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
415 static int dcerpc_dissect_element_fack_selack_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
416 static int dcerpc_dissect_element_RTSCookie_Cookie(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
417 const value_string dcerpc_AddressType_vals[] = {
418 { RTS_IPV4, "RTS_IPV4" },
419 { RTS_IPV6, "RTS_IPV6" },
422 static int dcerpc_dissect_element_ClientAddressType_valRTS_IPV4_ClientAddressIPV4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
423 static int dcerpc_dissect_element_ClientAddressType_valRTS_IPV6_ClientAddressIPV6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
424 static int dcerpc_dissect_element_ClientAddress_AddressType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint32 *AddressType);
425 static int dcerpc_dissect_element_ClientAddress_ClientAddress(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint32 *AddressType);
426 static int dcerpc_dissect_element_ClientAddress_Padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
427 static int dcerpc_dissect_element_ClientAddress_Padding_(tvbuff_t *tvb _U_, int offset _U_,int length _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
428 const value_string dcerpc_ForwardDestination_vals[] = {
429 { FDClient, "FDClient" },
430 { FDInProxy, "FDInProxy" },
431 { FDServer, "FDServer" },
432 { FDOutProxy, "FDOutProxy" },
435 static int dcerpc_dissect_element_FlowControlAcknowledgment_BytesReceived(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
436 static int dcerpc_dissect_element_FlowControlAcknowledgment_AvailableWindow(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
437 static int dcerpc_dissect_element_FlowControlAcknowledgment_ChannelCookie(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
438 static int dcerpc_dissect_element_rts_cmd_ReceiveWindowSize_ReceiveWindowSize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
439 static int dcerpc_dissect_element_rts_cmd_FlowControlAck_Ack(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
440 static int dcerpc_dissect_element_rts_cmd_ConnectionTimeout_ConnectionTimeout(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
441 static int dcerpc_dissect_element_rts_cmd_Cookie_Cookie(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
442 static int dcerpc_dissect_element_rts_cmd_ChannelLifetime_ChannelLifetime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
443 static int dcerpc_dissect_element_rts_cmd_ClientKeepalive_ClientKeepalive(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
444 static int dcerpc_dissect_element_rts_cmd_Version_Version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
445 static int dcerpc_dissect_element_rts_cmd_Padding_ConformanceCount(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
446 static int dcerpc_dissect_element_rts_cmd_Padding_Padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
447 static int dcerpc_dissect_element_rts_cmd_Padding_Padding_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
448 static int dcerpc_dissect_element_rts_cmd_ClientAddress_ClientAddress(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
449 static int dcerpc_dissect_element_rts_cmd_AssociationGroupId_AssociationGroupId(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
450 static int dcerpc_dissect_element_rts_cmd_Destination_ForwardDestination(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
451 static int dcerpc_dissect_element_rts_cmd_PingTrafficSentNotify_PingTrafficSent(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
452 static int dcerpc_dissect_element_rts_cmds_val0x0_ReceiveWindowSize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
453 static int dcerpc_dissect_element_rts_cmds_val0x1_FlowControlAck(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
454 static int dcerpc_dissect_element_rts_cmds_val0x2_ConnectionTimeout(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
455 static int dcerpc_dissect_element_rts_cmds_val0x3_Cookie(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
456 static int dcerpc_dissect_element_rts_cmds_val0x4_ChannelLifetime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
457 static int dcerpc_dissect_element_rts_cmds_val0x5_ClientKeepalive(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
458 static int dcerpc_dissect_element_rts_cmds_val0x6_Version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
459 static int dcerpc_dissect_element_rts_cmds_val0x7_Empty(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
460 static int dcerpc_dissect_element_rts_cmds_val0x8_Padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
461 static int dcerpc_dissect_element_rts_cmds_val0x9_NegativeANCE(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
462 static int dcerpc_dissect_element_rts_cmds_val0xA_ANCE(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
463 static int dcerpc_dissect_element_rts_cmds_val0xB_ClientAddress(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
464 static int dcerpc_dissect_element_rts_cmds_val0xC_AssociationGroupId(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
465 static int dcerpc_dissect_element_rts_cmds_val0xD_Destination(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
466 static int dcerpc_dissect_element_rts_cmds_val0xE_PingTrafficSentNotify(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
467 static int dcerpc_dissect_element_rts_cmd_CommandType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint32 *CommandType);
468 static int dcerpc_dissect_element_rts_cmd_Command(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint32 *CommandType);
469 static const true_false_string dcerpc_rts_flags_RTS_FLAG_NONE_tfs = {
470 "RTS_FLAG_NONE is SET",
471 "RTS_FLAG_NONE is NOT SET",
473 static const true_false_string dcerpc_rts_flags_RTS_FLAG_PING_tfs = {
474 "RTS_FLAG_PING is SET",
475 "RTS_FLAG_PING is NOT SET",
477 static const true_false_string dcerpc_rts_flags_RTS_FLAG_OTHER_CMD_tfs = {
478 "RTS_FLAG_OTHER_CMD is SET",
479 "RTS_FLAG_OTHER_CMD is NOT SET",
481 static const true_false_string dcerpc_rts_flags_RTS_FLAG_RECYCLE_CHANNEL_tfs = {
482 "RTS_FLAG_RECYCLE_CHANNEL is SET",
483 "RTS_FLAG_RECYCLE_CHANNEL is NOT SET",
485 static const true_false_string dcerpc_rts_flags_RTS_FLAG_IN_CHANNEL_tfs = {
486 "RTS_FLAG_IN_CHANNEL is SET",
487 "RTS_FLAG_IN_CHANNEL is NOT SET",
489 static const true_false_string dcerpc_rts_flags_RTS_FLAG_OUT_CHANNEL_tfs = {
490 "RTS_FLAG_OUT_CHANNEL is SET",
491 "RTS_FLAG_OUT_CHANNEL is NOT SET",
493 static const true_false_string dcerpc_rts_flags_RTS_FLAG_EOF_tfs = {
494 "RTS_FLAG_EOF is SET",
495 "RTS_FLAG_EOF is NOT SET",
497 static const true_false_string dcerpc_rts_flags_RTS_FLAG_ECHO_tfs = {
498 "RTS_FLAG_ECHO is SET",
499 "RTS_FLAG_ECHO is NOT SET",
501 static int dcerpc_dissect_element_rts_Flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
502 static int dcerpc_dissect_element_rts_NumberOfCommands(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
503 static int dcerpc_dissect_element_rts_Commands(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
504 static int dcerpc_dissect_element_rts_Commands_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
505 const value_string dcerpc_dcerpc_pkt_type_vals[] = {
506 { DCERPC_PKT_REQUEST, "DCERPC_PKT_REQUEST" },
507 { DCERPC_PKT_PING, "DCERPC_PKT_PING" },
508 { DCERPC_PKT_RESPONSE, "DCERPC_PKT_RESPONSE" },
509 { DCERPC_PKT_FAULT, "DCERPC_PKT_FAULT" },
510 { DCERPC_PKT_WORKING, "DCERPC_PKT_WORKING" },
511 { DCERPC_PKT_NOCALL, "DCERPC_PKT_NOCALL" },
512 { DCERPC_PKT_REJECT, "DCERPC_PKT_REJECT" },
513 { DCERPC_PKT_ACK, "DCERPC_PKT_ACK" },
514 { DCERPC_PKT_CL_CANCEL, "DCERPC_PKT_CL_CANCEL" },
515 { DCERPC_PKT_FACK, "DCERPC_PKT_FACK" },
516 { DCERPC_PKT_CANCEL_ACK, "DCERPC_PKT_CANCEL_ACK" },
517 { DCERPC_PKT_BIND, "DCERPC_PKT_BIND" },
518 { DCERPC_PKT_BIND_ACK, "DCERPC_PKT_BIND_ACK" },
519 { DCERPC_PKT_BIND_NAK, "DCERPC_PKT_BIND_NAK" },
520 { DCERPC_PKT_ALTER, "DCERPC_PKT_ALTER" },
521 { DCERPC_PKT_ALTER_RESP, "DCERPC_PKT_ALTER_RESP" },
522 { DCERPC_PKT_AUTH3, "DCERPC_PKT_AUTH3" },
523 { DCERPC_PKT_SHUTDOWN, "DCERPC_PKT_SHUTDOWN" },
524 { DCERPC_PKT_CO_CANCEL, "DCERPC_PKT_CO_CANCEL" },
525 { DCERPC_PKT_ORPHANED, "DCERPC_PKT_ORPHANED" },
526 { DCERPC_PKT_RTS, "DCERPC_PKT_RTS" },
529 static int dcerpc_dissect_element_payload_valDCERPC_PKT_REQUEST_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
530 static int dcerpc_dissect_element_payload_valDCERPC_PKT_PING_ping(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
531 static int dcerpc_dissect_element_payload_valDCERPC_PKT_RESPONSE_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
532 static int dcerpc_dissect_element_payload_valDCERPC_PKT_FAULT_fault(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
533 static int dcerpc_dissect_element_payload_valDCERPC_PKT_WORKING_working(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
534 static int dcerpc_dissect_element_payload_valDCERPC_PKT_NOCALL_nocall(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
535 static int dcerpc_dissect_element_payload_valDCERPC_PKT_REJECT_reject(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
536 static int dcerpc_dissect_element_payload_valDCERPC_PKT_ACK_ack(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
537 static int dcerpc_dissect_element_payload_valDCERPC_PKT_CL_CANCEL_cl_cancel(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
538 static int dcerpc_dissect_element_payload_valDCERPC_PKT_FACK_fack(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
539 static int dcerpc_dissect_element_payload_valDCERPC_PKT_CANCEL_ACK_cancel_ack(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
540 static int dcerpc_dissect_element_payload_valDCERPC_PKT_BIND_bind(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
541 static int dcerpc_dissect_element_payload_valDCERPC_PKT_BIND_ACK_bind_ack(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
542 static int dcerpc_dissect_element_payload_valDCERPC_PKT_BIND_NAK_bind_nak(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
543 static int dcerpc_dissect_element_payload_valDCERPC_PKT_ALTER_alter(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
544 static int dcerpc_dissect_element_payload_valDCERPC_PKT_ALTER_RESP_alter_resp(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
545 static int dcerpc_dissect_element_payload_valDCERPC_PKT_SHUTDOWN_shutdown(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
546 static int dcerpc_dissect_element_payload_valDCERPC_PKT_CO_CANCEL_co_cancel(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
547 static int dcerpc_dissect_element_payload_valDCERPC_PKT_ORPHANED_orphaned(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
548 static int dcerpc_dissect_element_payload_valDCERPC_PKT_AUTH3_auth3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
549 static int dcerpc_dissect_element_payload_valDCERPC_PKT_RTS_rts(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
550 static int dcerpc_dissect_element_ncacn_packet_rpc_vers(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
551 static int dcerpc_dissect_element_ncacn_packet_rpc_vers_minor(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
552 static int dcerpc_dissect_element_ncacn_packet_ptype(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint8 *ptype);
553 static int dcerpc_dissect_element_ncacn_packet_pfc_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
554 static int dcerpc_dissect_element_ncacn_packet_drep(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
555 static int dcerpc_dissect_element_ncacn_packet_drep_(tvbuff_t *tvb _U_, int offset _U_,int length _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
556 static int dcerpc_dissect_element_ncacn_packet_frag_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
557 static int dcerpc_dissect_element_ncacn_packet_auth_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
558 static int dcerpc_dissect_element_ncacn_packet_call_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
559 static int dcerpc_dissect_element_ncacn_packet_u(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint8 *ptype);
560 static int dcerpc_dissect_element_ncadg_packet_rpc_vers(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
561 static int dcerpc_dissect_element_ncadg_packet_ptype(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint8 *ptype);
562 static int dcerpc_dissect_element_ncadg_packet_pfc_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
563 static int dcerpc_dissect_element_ncadg_packet_ncadg_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
564 static int dcerpc_dissect_element_ncadg_packet_drep(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
565 static int dcerpc_dissect_element_ncadg_packet_drep_(tvbuff_t *tvb _U_, int offset _U_,int length _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
566 static int dcerpc_dissect_element_ncadg_packet_serial_high(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
567 static int dcerpc_dissect_element_ncadg_packet_object(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
568 static int dcerpc_dissect_element_ncadg_packet_iface(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
569 static int dcerpc_dissect_element_ncadg_packet_activity(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
570 static int dcerpc_dissect_element_ncadg_packet_server_boot(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
571 static int dcerpc_dissect_element_ncadg_packet_iface_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
572 static int dcerpc_dissect_element_ncadg_packet_seq_num(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
573 static int dcerpc_dissect_element_ncadg_packet_opnum(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
574 static int dcerpc_dissect_element_ncadg_packet_ihint(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
575 static int dcerpc_dissect_element_ncadg_packet_ahint(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
576 static int dcerpc_dissect_element_ncadg_packet_len(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
577 static int dcerpc_dissect_element_ncadg_packet_fragnum(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
578 static int dcerpc_dissect_element_ncadg_packet_auth_proto(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
579 static int dcerpc_dissect_element_ncadg_packet_serial_low(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
580 static int dcerpc_dissect_element_ncadg_packet_u(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint8 *ptype);
584 /* IDL: uint16 context_id; */
585 /* IDL: uint8 num_transfer_syntaxes; */
586 /* IDL: ndr_syntax_id abstract_syntax; */
587 /* IDL: ndr_syntax_id transfer_syntaxes[num_transfer_syntaxes]; */
591 dcerpc_dissect_element_ctx_list_context_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
593 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_ctx_list_context_id, 0);
599 dcerpc_dissect_element_ctx_list_num_transfer_syntaxes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
601 offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_ctx_list_num_transfer_syntaxes, 0);
607 dcerpc_dissect_element_ctx_list_abstract_syntax(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
609 offset = dcerpc_dissect_struct_ndr_syntax_id(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_ctx_list_abstract_syntax,0);
615 dcerpc_dissect_element_ctx_list_transfer_syntaxes(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
622 dcerpc_dissect_element_ctx_list_transfer_syntaxes_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
624 offset = dcerpc_dissect_struct_ndr_syntax_id(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_ctx_list_transfer_syntaxes,0);
630 dcerpc_dissect_struct_ctx_list(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
632 proto_item *item = NULL;
633 proto_tree *tree = NULL;
634 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
642 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
643 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_ctx_list);
646 offset = dcerpc_dissect_element_ctx_list_context_id(tvb, offset, pinfo, tree, drep);
648 offset = dcerpc_dissect_element_ctx_list_num_transfer_syntaxes(tvb, offset, pinfo, tree, drep);
650 offset = dcerpc_dissect_element_ctx_list_abstract_syntax(tvb, offset, pinfo, tree, drep);
652 offset = dcerpc_dissect_element_ctx_list_transfer_syntaxes(tvb, offset, pinfo, tree, drep);
655 proto_item_set_len(item, offset-old_offset);
658 if (di->call_data->flags & DCERPC_IS_NDR64) {
667 /* IDL: uint16 max_xmit_frag; */
668 /* IDL: uint16 max_recv_frag; */
669 /* IDL: uint32 assoc_group_id; */
670 /* IDL: uint8 num_contexts; */
671 /* IDL: dcerpc_ctx_list ctx_list[num_contexts]; */
672 /* IDL: [flag(LIBNDR_FLAG_REMAINING)] DATA_BLOB auth_info; */
676 dcerpc_dissect_element_bind_max_xmit_frag(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
678 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_bind_max_xmit_frag, 0);
684 dcerpc_dissect_element_bind_max_recv_frag(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
686 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_bind_max_recv_frag, 0);
692 dcerpc_dissect_element_bind_assoc_group_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
694 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_bind_assoc_group_id, 0);
700 dcerpc_dissect_element_bind_num_contexts(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
702 offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_bind_num_contexts, 0);
708 dcerpc_dissect_element_bind_ctx_list(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
715 dcerpc_dissect_element_bind_ctx_list_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
717 offset = dcerpc_dissect_struct_ctx_list(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_bind_ctx_list,0);
723 dcerpc_dissect_element_bind_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
725 offset = dissect_ndr_datablob(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_bind_auth_info, 1);
731 dcerpc_dissect_struct_bind(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
733 proto_item *item = NULL;
734 proto_tree *tree = NULL;
735 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
743 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
744 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_bind);
747 offset = dcerpc_dissect_element_bind_max_xmit_frag(tvb, offset, pinfo, tree, drep);
749 offset = dcerpc_dissect_element_bind_max_recv_frag(tvb, offset, pinfo, tree, drep);
751 offset = dcerpc_dissect_element_bind_assoc_group_id(tvb, offset, pinfo, tree, drep);
753 offset = dcerpc_dissect_element_bind_num_contexts(tvb, offset, pinfo, tree, drep);
755 offset = dcerpc_dissect_element_bind_ctx_list(tvb, offset, pinfo, tree, drep);
757 offset = dcerpc_dissect_element_bind_auth_info(tvb, offset, pinfo, tree, drep);
760 proto_item_set_len(item, offset-old_offset);
763 if (di->call_data->flags & DCERPC_IS_NDR64) {
775 dcerpc_dissect_struct_empty(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
777 proto_item *item = NULL;
778 proto_tree *tree = NULL;
785 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
786 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_empty);
790 proto_item_set_len(item, offset-old_offset);
797 /* IDL: [nodiscriminant(1)] union { */
798 /* IDL: [default] ; */
799 /* IDL: [case(LIBNDR_FLAG_OBJECT_PRESENT)] [case(LIBNDR_FLAG_OBJECT_PRESENT)] GUID object; */
803 dcerpc_dissect_element_object_valdefault_empty(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
805 offset = dcerpc_dissect_struct_empty(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_object_valdefault_empty,0);
811 dcerpc_dissect_element_object_valLIBNDR_FLAG_OBJECT_PRESENT_object(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
813 offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_object_valLIBNDR_FLAG_OBJECT_PRESENT_object, NULL);
819 dcerpc_dissect_object(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
821 proto_item *item = NULL;
822 proto_tree *tree = NULL;
824 guint32 level = param;
828 item = proto_tree_add_text(parent_tree, tvb, offset, -1, "dcerpc_object");
829 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_object);
834 offset = dcerpc_dissect_element_object_valdefault_empty(tvb, offset, pinfo, tree, drep);
837 case LIBNDR_FLAG_OBJECT_PRESENT:
838 offset = dcerpc_dissect_element_object_valLIBNDR_FLAG_OBJECT_PRESENT_object(tvb, offset, pinfo, tree, drep);
841 proto_item_set_len(item, offset-old_offset);
848 /* IDL: uint32 alloc_hint; */
849 /* IDL: uint16 context_id; */
850 /* IDL: uint16 opnum; */
851 /* IDL: [switch_is(ndr->flags&LIBNDR_FLAG_OBJECT_PRESENT)] dcerpc_object object; */
852 /* IDL: [flag(LIBNDR_FLAG_ALIGN8)] DATA_BLOB _pad; */
853 /* IDL: [flag(LIBNDR_FLAG_REMAINING)] DATA_BLOB stub_and_verifier; */
857 dcerpc_dissect_element_request_alloc_hint(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
859 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_request_alloc_hint, 0);
865 dcerpc_dissect_element_request_context_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
867 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_request_context_id, 0);
873 dcerpc_dissect_element_request_opnum(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
875 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_request_opnum, 0);
881 dcerpc_dissect_element_request_object(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint32 *)
883 offset = dcerpc_dissect_object(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_request_object, *);
889 dcerpc_dissect_element_request__pad(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
891 offset = dissect_ndr_datablob(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_request__pad, 0);
897 dcerpc_dissect_element_request_stub_and_verifier(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
899 offset = dissect_ndr_datablob(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_request_stub_and_verifier, 1);
905 dcerpc_dissect_struct_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
907 proto_item *item = NULL;
908 proto_tree *tree = NULL;
909 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
917 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
918 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_request);
921 offset = dcerpc_dissect_element_request_alloc_hint(tvb, offset, pinfo, tree, drep);
923 offset = dcerpc_dissect_element_request_context_id(tvb, offset, pinfo, tree, drep);
925 offset = dcerpc_dissect_element_request_opnum(tvb, offset, pinfo, tree, drep);
927 offset = dcerpc_dissect_element_request_object(tvb, offset, pinfo, tree, drep, &);
929 offset = dcerpc_dissect_element_request__pad(tvb, offset, pinfo, tree, drep);
931 offset = dcerpc_dissect_element_request_stub_and_verifier(tvb, offset, pinfo, tree, drep);
934 proto_item_set_len(item, offset-old_offset);
937 if (di->call_data->flags & DCERPC_IS_NDR64) {
946 /* IDL: uint16 result; */
947 /* IDL: uint16 reason; */
948 /* IDL: ndr_syntax_id syntax; */
952 dcerpc_dissect_element_ack_ctx_result(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
954 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_ack_ctx_result, 0);
960 dcerpc_dissect_element_ack_ctx_reason(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
962 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_ack_ctx_reason, 0);
968 dcerpc_dissect_element_ack_ctx_syntax(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
970 offset = dcerpc_dissect_struct_ndr_syntax_id(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_ack_ctx_syntax,0);
976 dcerpc_dissect_struct_ack_ctx(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
978 proto_item *item = NULL;
979 proto_tree *tree = NULL;
980 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
988 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
989 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_ack_ctx);
992 offset = dcerpc_dissect_element_ack_ctx_result(tvb, offset, pinfo, tree, drep);
994 offset = dcerpc_dissect_element_ack_ctx_reason(tvb, offset, pinfo, tree, drep);
996 offset = dcerpc_dissect_element_ack_ctx_syntax(tvb, offset, pinfo, tree, drep);
999 proto_item_set_len(item, offset-old_offset);
1002 if (di->call_data->flags & DCERPC_IS_NDR64) {
1011 /* IDL: uint16 max_xmit_frag; */
1012 /* IDL: uint16 max_recv_frag; */
1013 /* IDL: uint32 assoc_group_id; */
1014 /* IDL: [value(strlen(secondary_address)+1)] uint16 secondary_address_size; */
1015 /* IDL: [charset(DOS)] uint8 secondary_address[secondary_address_size]; */
1016 /* IDL: [flag(LIBNDR_FLAG_ALIGN4)] DATA_BLOB _pad1; */
1017 /* IDL: uint8 num_results; */
1018 /* IDL: dcerpc_ack_ctx ctx_list[num_results]; */
1019 /* IDL: [flag(LIBNDR_FLAG_REMAINING)] DATA_BLOB auth_info; */
1023 dcerpc_dissect_element_bind_ack_max_xmit_frag(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1025 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_bind_ack_max_xmit_frag, 0);
1031 dcerpc_dissect_element_bind_ack_max_recv_frag(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1033 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_bind_ack_max_recv_frag, 0);
1039 dcerpc_dissect_element_bind_ack_assoc_group_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1041 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_bind_ack_assoc_group_id, 0);
1047 dcerpc_dissect_element_bind_ack_secondary_address_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1049 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_bind_ack_secondary_address_size, 0);
1055 dcerpc_dissect_element_bind_ack_secondary_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1062 dcerpc_dissect_element_bind_ack_secondary_address_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1064 offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_bind_ack_secondary_address, 0);
1070 dcerpc_dissect_element_bind_ack__pad1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1072 offset = dissect_ndr_datablob(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_bind_ack__pad1, 0);
1078 dcerpc_dissect_element_bind_ack_num_results(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1080 offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_bind_ack_num_results, 0);
1086 dcerpc_dissect_element_bind_ack_ctx_list(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1093 dcerpc_dissect_element_bind_ack_ctx_list_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1095 offset = dcerpc_dissect_struct_ack_ctx(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_bind_ack_ctx_list,0);
1101 dcerpc_dissect_element_bind_ack_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1103 offset = dissect_ndr_datablob(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_bind_ack_auth_info, 1);
1109 dcerpc_dissect_struct_bind_ack(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
1111 proto_item *item = NULL;
1112 proto_tree *tree = NULL;
1113 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
1118 old_offset = offset;
1121 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
1122 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_bind_ack);
1125 offset = dcerpc_dissect_element_bind_ack_max_xmit_frag(tvb, offset, pinfo, tree, drep);
1127 offset = dcerpc_dissect_element_bind_ack_max_recv_frag(tvb, offset, pinfo, tree, drep);
1129 offset = dcerpc_dissect_element_bind_ack_assoc_group_id(tvb, offset, pinfo, tree, drep);
1131 offset = dcerpc_dissect_element_bind_ack_secondary_address_size(tvb, offset, pinfo, tree, drep);
1133 offset = dcerpc_dissect_element_bind_ack_secondary_address(tvb, offset, pinfo, tree, drep);
1135 offset = dcerpc_dissect_element_bind_ack__pad1(tvb, offset, pinfo, tree, drep);
1137 offset = dcerpc_dissect_element_bind_ack_num_results(tvb, offset, pinfo, tree, drep);
1139 offset = dcerpc_dissect_element_bind_ack_ctx_list(tvb, offset, pinfo, tree, drep);
1141 offset = dcerpc_dissect_element_bind_ack_auth_info(tvb, offset, pinfo, tree, drep);
1144 proto_item_set_len(item, offset-old_offset);
1147 if (di->call_data->flags & DCERPC_IS_NDR64) {
1156 /* IDL: uint32 num_versions; */
1157 /* IDL: uint32 versions[num_versions]; */
1161 dcerpc_dissect_element_bind_nak_versions_num_versions(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1163 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_bind_nak_versions_num_versions, 0);
1169 dcerpc_dissect_element_bind_nak_versions_versions(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1176 dcerpc_dissect_element_bind_nak_versions_versions_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1178 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_bind_nak_versions_versions, 0);
1184 dcerpc_dissect_struct_bind_nak_versions(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
1186 proto_item *item = NULL;
1187 proto_tree *tree = NULL;
1188 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
1193 old_offset = offset;
1196 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
1197 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_bind_nak_versions);
1200 offset = dcerpc_dissect_element_bind_nak_versions_num_versions(tvb, offset, pinfo, tree, drep);
1202 offset = dcerpc_dissect_element_bind_nak_versions_versions(tvb, offset, pinfo, tree, drep);
1205 proto_item_set_len(item, offset-old_offset);
1208 if (di->call_data->flags & DCERPC_IS_NDR64) {
1216 /* IDL: [nodiscriminant(1)] union { */
1217 /* IDL: [case(DECRPC_BIND_PROTOCOL_VERSION_NOT_SUPPORTED)] [case(DECRPC_BIND_PROTOCOL_VERSION_NOT_SUPPORTED)] dcerpc_bind_nak_versions v; */
1218 /* IDL: [default] ; */
1222 dcerpc_dissect_element_bind_nak_versions_ctr_valDECRPC_BIND_PROTOCOL_VERSION_NOT_SUPPORTED_v(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1224 offset = dcerpc_dissect_struct_bind_nak_versions(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_bind_nak_versions_ctr_valDECRPC_BIND_PROTOCOL_VERSION_NOT_SUPPORTED_v,0);
1230 dcerpc_dissect_bind_nak_versions_ctr(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
1232 proto_item *item = NULL;
1233 proto_tree *tree = NULL;
1235 guint32 level = param;
1237 old_offset = offset;
1239 item = proto_tree_add_text(parent_tree, tvb, offset, -1, "dcerpc_bind_nak_versions_ctr");
1240 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_bind_nak_versions_ctr);
1244 case DECRPC_BIND_PROTOCOL_VERSION_NOT_SUPPORTED:
1245 offset = dcerpc_dissect_element_bind_nak_versions_ctr_valDECRPC_BIND_PROTOCOL_VERSION_NOT_SUPPORTED_v(tvb, offset, pinfo, tree, drep);
1251 proto_item_set_len(item, offset-old_offset);
1258 /* IDL: uint16 reject_reason; */
1259 /* IDL: [switch_is(reject_reason)] dcerpc_bind_nak_versions_ctr versions; */
1263 dcerpc_dissect_element_bind_nak_reject_reason(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint16 *reject_reason)
1265 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_bind_nak_reject_reason, reject_reason);
1271 dcerpc_dissect_element_bind_nak_versions(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint16 *reject_reason)
1273 offset = dcerpc_dissect_bind_nak_versions_ctr(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_bind_nak_versions, *reject_reason);
1279 dcerpc_dissect_struct_bind_nak(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
1281 guint16 reject_reason;
1282 proto_item *item = NULL;
1283 proto_tree *tree = NULL;
1284 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
1289 old_offset = offset;
1292 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
1293 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_bind_nak);
1296 offset = dcerpc_dissect_element_bind_nak_reject_reason(tvb, offset, pinfo, tree, drep, &reject_reason);
1298 offset = dcerpc_dissect_element_bind_nak_versions(tvb, offset, pinfo, tree, drep, &reject_reason);
1301 proto_item_set_len(item, offset-old_offset);
1304 if (di->call_data->flags & DCERPC_IS_NDR64) {
1313 /* IDL: uint32 alloc_hint; */
1314 /* IDL: uint16 context_id; */
1315 /* IDL: uint8 cancel_count; */
1316 /* IDL: [flag(LIBNDR_FLAG_ALIGN8)] DATA_BLOB _pad; */
1317 /* IDL: [flag(LIBNDR_FLAG_REMAINING)] DATA_BLOB stub_and_verifier; */
1321 dcerpc_dissect_element_response_alloc_hint(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1323 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_response_alloc_hint, 0);
1329 dcerpc_dissect_element_response_context_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1331 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_response_context_id, 0);
1337 dcerpc_dissect_element_response_cancel_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1339 offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_response_cancel_count, 0);
1345 dcerpc_dissect_element_response__pad(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1347 offset = dissect_ndr_datablob(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_response__pad, 0);
1353 dcerpc_dissect_element_response_stub_and_verifier(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1355 offset = dissect_ndr_datablob(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_response_stub_and_verifier, 1);
1361 dcerpc_dissect_struct_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
1363 proto_item *item = NULL;
1364 proto_tree *tree = NULL;
1365 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
1370 old_offset = offset;
1373 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
1374 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_response);
1377 offset = dcerpc_dissect_element_response_alloc_hint(tvb, offset, pinfo, tree, drep);
1379 offset = dcerpc_dissect_element_response_context_id(tvb, offset, pinfo, tree, drep);
1381 offset = dcerpc_dissect_element_response_cancel_count(tvb, offset, pinfo, tree, drep);
1383 offset = dcerpc_dissect_element_response__pad(tvb, offset, pinfo, tree, drep);
1385 offset = dcerpc_dissect_element_response_stub_and_verifier(tvb, offset, pinfo, tree, drep);
1388 proto_item_set_len(item, offset-old_offset);
1391 if (di->call_data->flags & DCERPC_IS_NDR64) {
1400 /* IDL: DCERPC_NCA_S_COMM_FAILURE=0x1C010001, */
1401 /* IDL: DCERPC_NCA_S_OP_RNG_ERROR=0x1C010002, */
1402 /* IDL: DCERPC_NCA_S_UNKNOWN_IF=0x1C010003, */
1403 /* IDL: DCERPC_NCA_S_WRONG_BOOT_TIME=0x1C010006, */
1404 /* IDL: DCERPC_NCA_S_YOU_CRASHED=0x1C010009, */
1405 /* IDL: DCERPC_NCA_S_PROTO_ERROR=0x1C01000B, */
1406 /* IDL: DCERPC_NCA_S_OUT_ARGS_TOO_BIG=0x1C010013, */
1407 /* IDL: DCERPC_NCA_S_SERVER_TOO_BUSY=0x1C010014, */
1408 /* IDL: DCERPC_NCA_S_FAULT_STRING_TOO_LARGE=0x1C010015, */
1409 /* IDL: DCERPC_NCA_S_UNSUPPORTED_TYPE=0x1C010017, */
1410 /* IDL: DCERPC_NCA_S_FAULT_INT_DIV_BY_ZERO=0x1C000001, */
1411 /* IDL: DCERPC_NCA_S_FAULT_ADDR_ERROR=0x1C000002, */
1412 /* IDL: DCERPC_NCA_S_FAULT_FP_DIV_BY_ZERO=0x1C000003, */
1413 /* IDL: DCERPC_NCA_S_FAULT_FP_UNDERFLOW=0x1C000004, */
1414 /* IDL: DCERPC_NCA_S_FAULT_FP_OVERRFLOW=0x1C000005, */
1415 /* IDL: DCERPC_NCA_S_FAULT_INVALID_TAG=0x1C000006, */
1416 /* IDL: DCERPC_NCA_S_FAULT_INVALID_BOUND=0x1C000007, */
1417 /* IDL: DCERPC_NCA_S_FAULT_RPC_VERSION_MISMATCH=0x1C000008, */
1418 /* IDL: DCERPC_NCA_S_FAULT_UNSPEC_REJECT=0x1C000009, */
1419 /* IDL: DCERPC_NCA_S_FAULT_BAD_ACTID=0x1C00000A, */
1420 /* IDL: DCERPC_NCA_S_FAULT_WHO_ARE_YOU_FAILED=0x1C00000B, */
1421 /* IDL: DCERPC_NCA_S_FAULT_MANAGER_NOT_ENTERED=0x1C00000C, */
1422 /* IDL: DCERPC_NCA_S_FAULT_CANCEL=0x1C00000D, */
1423 /* IDL: DCERPC_NCA_S_FAULT_ILL_INST=0x1C00000E, */
1424 /* IDL: DCERPC_NCA_S_FAULT_FP_ERROR=0x1C00000F, */
1425 /* IDL: DCERPC_NCA_S_FAULT_INT_OVERFLOW=0x1C000010, */
1426 /* IDL: DCERPC_NCA_S_UNUSED_1C000011=0x1C000011, */
1427 /* IDL: DCERPC_NCA_S_FAULT_UNSPEC=0x1C000012, */
1428 /* IDL: DCERPC_NCA_S_FAULT_REMOTE_COMM_FAILURE=0x1C000013, */
1429 /* IDL: DCERPC_NCA_S_FAULT_PIPE_EMPTY=0x1C000014, */
1430 /* IDL: DCERPC_NCA_S_FAULT_PIPE_CLOSED=0x1C000015, */
1431 /* IDL: DCERPC_NCA_S_FAULT_PIPE_ORDER=0x1C000016, */
1432 /* IDL: DCERPC_NCA_S_FAULT_PIPE_DISCIPLINE=0x1C000017, */
1433 /* IDL: DCERPC_NCA_S_FAULT_PIPE_COMM_ERROR=0x1C000018, */
1434 /* IDL: DCERPC_NCA_S_FAULT_PIPE_MEMORY=0x1C000019, */
1435 /* IDL: DCERPC_NCA_S_FAULT_CONTEXT_MISMATCH=0x1C00001A, */
1436 /* IDL: DCERPC_NCA_S_FAULT_REMOTE_NO_MEMORY=0x1C00001B, */
1437 /* IDL: DCERPC_NCA_S_INVALID_PRES_CONTEXT_ID=0x1C00001C, */
1438 /* IDL: DCERPC_NCA_S_UNSUPPORTED_AUTHN_LEVEL=0x1C00001D, */
1439 /* IDL: DCERPC_NCA_S_UNUSED_1C00001E=0x1C00001E, */
1440 /* IDL: DCERPC_NCA_S_INVALID_CHECKSUM=0x1C00001F, */
1441 /* IDL: DCERPC_NCA_S_INVALID_CRC=0x1C000020, */
1442 /* IDL: DCERPC_NCA_S_FAULT_USER_DEFINED=0x1C000021, */
1443 /* IDL: DCERPC_NCA_S_FAULT_TX_OPEN_FAILED=0x1C000022, */
1444 /* IDL: DCERPC_NCA_S_FAULT_CODESET_CONV_ERROR=0x1C000023, */
1445 /* IDL: DCERPC_NCA_S_FAULT_OBJECT_NOT_FOUND=0x1C000024, */
1446 /* IDL: DCERPC_NCA_S_FAULT_NO_CLIENT_STUB=0x1C000025, */
1450 dcerpc_dissect_enum_nca_status(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
1452 guint32 parameter=0;
1454 parameter=(guint32)*param;
1456 offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_index, ¶meter);
1458 *param=(guint32)parameter;
1465 /* IDL: uint32 alloc_hint; */
1466 /* IDL: uint16 context_id; */
1467 /* IDL: uint8 cancel_count; */
1468 /* IDL: dcerpc_nca_status status; */
1469 /* IDL: [flag(LIBNDR_FLAG_REMAINING)] DATA_BLOB _pad; */
1473 dcerpc_dissect_element_fault_alloc_hint(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1475 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_fault_alloc_hint, 0);
1481 dcerpc_dissect_element_fault_context_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1483 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_fault_context_id, 0);
1489 dcerpc_dissect_element_fault_cancel_count(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1491 offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_fault_cancel_count, 0);
1497 dcerpc_dissect_element_fault_status(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1499 offset = dcerpc_dissect_enum_nca_status(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_fault_status, 0);
1505 dcerpc_dissect_element_fault__pad(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1507 offset = dissect_ndr_datablob(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_fault__pad, 1);
1513 dcerpc_dissect_struct_fault(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
1515 proto_item *item = NULL;
1516 proto_tree *tree = NULL;
1517 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
1522 old_offset = offset;
1525 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
1526 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_fault);
1529 offset = dcerpc_dissect_element_fault_alloc_hint(tvb, offset, pinfo, tree, drep);
1531 offset = dcerpc_dissect_element_fault_context_id(tvb, offset, pinfo, tree, drep);
1533 offset = dcerpc_dissect_element_fault_cancel_count(tvb, offset, pinfo, tree, drep);
1535 offset = dcerpc_dissect_element_fault_status(tvb, offset, pinfo, tree, drep);
1537 offset = dcerpc_dissect_element_fault__pad(tvb, offset, pinfo, tree, drep);
1540 proto_item_set_len(item, offset-old_offset);
1543 if (di->call_data->flags & DCERPC_IS_NDR64) {
1552 /* IDL: DCERPC_AUTH_TYPE_NONE=0, */
1553 /* IDL: DCERPC_AUTH_TYPE_KRB5_1=1, */
1554 /* IDL: DCERPC_AUTH_TYPE_SPNEGO=9, */
1555 /* IDL: DCERPC_AUTH_TYPE_NTLMSSP=10, */
1556 /* IDL: DCERPC_AUTH_TYPE_KRB5=16, */
1557 /* IDL: DCERPC_AUTH_TYPE_DPA=17, */
1558 /* IDL: DCERPC_AUTH_TYPE_MSN=18, */
1559 /* IDL: DCERPC_AUTH_TYPE_DIGEST=21, */
1560 /* IDL: DCERPC_AUTH_TYPE_SCHANNEL=68, */
1561 /* IDL: DCERPC_AUTH_TYPE_MSMQ=100, */
1562 /* IDL: DCERPC_AUTH_TYPE_NCALRPC_AS_SYSTEM=200, */
1566 dcerpc_dissect_enum_AuthType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
1570 parameter=(guint8)*param;
1572 offset = dissect_ndr_uint8(tvb, offset, pinfo, tree, drep, hf_index, ¶meter);
1574 *param=(guint32)parameter;
1581 /* IDL: DCERPC_AUTH_LEVEL_NONE=1, */
1582 /* IDL: DCERPC_AUTH_LEVEL_CONNECT=2, */
1583 /* IDL: DCERPC_AUTH_LEVEL_CALL=3, */
1584 /* IDL: DCERPC_AUTH_LEVEL_PACKET=4, */
1585 /* IDL: DCERPC_AUTH_LEVEL_INTEGRITY=5, */
1586 /* IDL: DCERPC_AUTH_LEVEL_PRIVACY=6, */
1590 dcerpc_dissect_enum_AuthLevel(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
1594 parameter=(guint8)*param;
1596 offset = dissect_ndr_uint8(tvb, offset, pinfo, tree, drep, hf_index, ¶meter);
1598 *param=(guint32)parameter;
1605 /* IDL: dcerpc_AuthType auth_type; */
1606 /* IDL: dcerpc_AuthLevel auth_level; */
1607 /* IDL: uint8 auth_pad_length; */
1608 /* IDL: uint8 auth_reserved; */
1609 /* IDL: uint32 auth_context_id; */
1610 /* IDL: [flag(LIBNDR_FLAG_REMAINING)] DATA_BLOB credentials; */
1614 dcerpc_dissect_element_auth_auth_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1616 offset = dcerpc_dissect_enum_AuthType(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_auth_auth_type, 0);
1622 dcerpc_dissect_element_auth_auth_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1624 offset = dcerpc_dissect_enum_AuthLevel(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_auth_auth_level, 0);
1630 dcerpc_dissect_element_auth_auth_pad_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1632 offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_auth_auth_pad_length, 0);
1638 dcerpc_dissect_element_auth_auth_reserved(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1640 offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_auth_auth_reserved, 0);
1646 dcerpc_dissect_element_auth_auth_context_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1648 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_auth_auth_context_id, 0);
1654 dcerpc_dissect_element_auth_credentials(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1656 offset = dissect_ndr_datablob(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_auth_credentials, 1);
1662 dcerpc_dissect_struct_auth(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
1664 proto_item *item = NULL;
1665 proto_tree *tree = NULL;
1666 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
1671 old_offset = offset;
1674 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
1675 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_auth);
1678 offset = dcerpc_dissect_element_auth_auth_type(tvb, offset, pinfo, tree, drep);
1680 offset = dcerpc_dissect_element_auth_auth_level(tvb, offset, pinfo, tree, drep);
1682 offset = dcerpc_dissect_element_auth_auth_pad_length(tvb, offset, pinfo, tree, drep);
1684 offset = dcerpc_dissect_element_auth_auth_reserved(tvb, offset, pinfo, tree, drep);
1686 offset = dcerpc_dissect_element_auth_auth_context_id(tvb, offset, pinfo, tree, drep);
1688 offset = dcerpc_dissect_element_auth_credentials(tvb, offset, pinfo, tree, drep);
1691 proto_item_set_len(item, offset-old_offset);
1694 if (di->call_data->flags & DCERPC_IS_NDR64) {
1703 /* IDL: [value(0)] uint32 _pad; */
1704 /* IDL: [flag(LIBNDR_FLAG_REMAINING)] DATA_BLOB auth_info; */
1708 dcerpc_dissect_element_auth3__pad(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1710 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_auth3__pad, 0);
1716 dcerpc_dissect_element_auth3_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1718 offset = dissect_ndr_datablob(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_auth3_auth_info, 1);
1724 dcerpc_dissect_struct_auth3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
1726 proto_item *item = NULL;
1727 proto_tree *tree = NULL;
1728 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
1733 old_offset = offset;
1736 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
1737 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_auth3);
1740 offset = dcerpc_dissect_element_auth3__pad(tvb, offset, pinfo, tree, drep);
1742 offset = dcerpc_dissect_element_auth3_auth_info(tvb, offset, pinfo, tree, drep);
1745 proto_item_set_len(item, offset-old_offset);
1748 if (di->call_data->flags & DCERPC_IS_NDR64) {
1757 /* IDL: [value(0)] uint32 _pad; */
1758 /* IDL: [flag(LIBNDR_FLAG_REMAINING)] DATA_BLOB auth_info; */
1762 dcerpc_dissect_element_orphaned__pad(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1764 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_orphaned__pad, 0);
1770 dcerpc_dissect_element_orphaned_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1772 offset = dissect_ndr_datablob(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_orphaned_auth_info, 1);
1778 dcerpc_dissect_struct_orphaned(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
1780 proto_item *item = NULL;
1781 proto_tree *tree = NULL;
1782 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
1787 old_offset = offset;
1790 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
1791 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_orphaned);
1794 offset = dcerpc_dissect_element_orphaned__pad(tvb, offset, pinfo, tree, drep);
1796 offset = dcerpc_dissect_element_orphaned_auth_info(tvb, offset, pinfo, tree, drep);
1799 proto_item_set_len(item, offset-old_offset);
1802 if (di->call_data->flags & DCERPC_IS_NDR64) {
1811 /* IDL: [value(0)] uint32 _pad; */
1812 /* IDL: [flag(LIBNDR_FLAG_REMAINING)] DATA_BLOB auth_info; */
1816 dcerpc_dissect_element_co_cancel__pad(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1818 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_co_cancel__pad, 0);
1824 dcerpc_dissect_element_co_cancel_auth_info(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1826 offset = dissect_ndr_datablob(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_co_cancel_auth_info, 1);
1832 dcerpc_dissect_struct_co_cancel(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
1834 proto_item *item = NULL;
1835 proto_tree *tree = NULL;
1836 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
1841 old_offset = offset;
1844 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
1845 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_co_cancel);
1848 offset = dcerpc_dissect_element_co_cancel__pad(tvb, offset, pinfo, tree, drep);
1850 offset = dcerpc_dissect_element_co_cancel_auth_info(tvb, offset, pinfo, tree, drep);
1853 proto_item_set_len(item, offset-old_offset);
1856 if (di->call_data->flags & DCERPC_IS_NDR64) {
1865 /* IDL: uint32 version; */
1866 /* IDL: uint32 id; */
1870 dcerpc_dissect_element_cl_cancel_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1872 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_cl_cancel_version, 0);
1878 dcerpc_dissect_element_cl_cancel_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1880 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_cl_cancel_id, 0);
1886 dcerpc_dissect_struct_cl_cancel(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
1888 proto_item *item = NULL;
1889 proto_tree *tree = NULL;
1890 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
1895 old_offset = offset;
1898 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
1899 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_cl_cancel);
1902 offset = dcerpc_dissect_element_cl_cancel_version(tvb, offset, pinfo, tree, drep);
1904 offset = dcerpc_dissect_element_cl_cancel_id(tvb, offset, pinfo, tree, drep);
1907 proto_item_set_len(item, offset-old_offset);
1910 if (di->call_data->flags & DCERPC_IS_NDR64) {
1919 /* IDL: uint32 version; */
1920 /* IDL: uint32 id; */
1921 /* IDL: uint32 server_is_accepting; */
1925 dcerpc_dissect_element_cancel_ack_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1927 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_cancel_ack_version, 0);
1933 dcerpc_dissect_element_cancel_ack_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1935 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_cancel_ack_id, 0);
1941 dcerpc_dissect_element_cancel_ack_server_is_accepting(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1943 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_cancel_ack_server_is_accepting, 0);
1949 dcerpc_dissect_struct_cancel_ack(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
1951 proto_item *item = NULL;
1952 proto_tree *tree = NULL;
1953 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
1958 old_offset = offset;
1961 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
1962 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_cancel_ack);
1965 offset = dcerpc_dissect_element_cancel_ack_version(tvb, offset, pinfo, tree, drep);
1967 offset = dcerpc_dissect_element_cancel_ack_id(tvb, offset, pinfo, tree, drep);
1969 offset = dcerpc_dissect_element_cancel_ack_server_is_accepting(tvb, offset, pinfo, tree, drep);
1972 proto_item_set_len(item, offset-old_offset);
1975 if (di->call_data->flags & DCERPC_IS_NDR64) {
1984 /* IDL: uint32 version; */
1985 /* IDL: uint8 _pad1; */
1986 /* IDL: uint16 window_size; */
1987 /* IDL: uint32 max_tdsu; */
1988 /* IDL: uint32 max_frag_size; */
1989 /* IDL: uint16 serial_no; */
1990 /* IDL: uint16 selack_size; */
1991 /* IDL: uint32 selack[selack_size]; */
1995 dcerpc_dissect_element_fack_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1997 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_fack_version, 0);
2003 dcerpc_dissect_element_fack__pad1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2005 offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_fack__pad1, 0);
2011 dcerpc_dissect_element_fack_window_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2013 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_fack_window_size, 0);
2019 dcerpc_dissect_element_fack_max_tdsu(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2021 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_fack_max_tdsu, 0);
2027 dcerpc_dissect_element_fack_max_frag_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2029 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_fack_max_frag_size, 0);
2035 dcerpc_dissect_element_fack_serial_no(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2037 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_fack_serial_no, 0);
2043 dcerpc_dissect_element_fack_selack_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2045 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_fack_selack_size, 0);
2051 dcerpc_dissect_element_fack_selack(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2058 dcerpc_dissect_element_fack_selack_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2060 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_fack_selack, 0);
2066 dcerpc_dissect_struct_fack(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2068 proto_item *item = NULL;
2069 proto_tree *tree = NULL;
2070 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
2075 old_offset = offset;
2078 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2079 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_fack);
2082 offset = dcerpc_dissect_element_fack_version(tvb, offset, pinfo, tree, drep);
2084 offset = dcerpc_dissect_element_fack__pad1(tvb, offset, pinfo, tree, drep);
2086 offset = dcerpc_dissect_element_fack_window_size(tvb, offset, pinfo, tree, drep);
2088 offset = dcerpc_dissect_element_fack_max_tdsu(tvb, offset, pinfo, tree, drep);
2090 offset = dcerpc_dissect_element_fack_max_frag_size(tvb, offset, pinfo, tree, drep);
2092 offset = dcerpc_dissect_element_fack_serial_no(tvb, offset, pinfo, tree, drep);
2094 offset = dcerpc_dissect_element_fack_selack_size(tvb, offset, pinfo, tree, drep);
2096 offset = dcerpc_dissect_element_fack_selack(tvb, offset, pinfo, tree, drep);
2099 proto_item_set_len(item, offset-old_offset);
2102 if (di->call_data->flags & DCERPC_IS_NDR64) {
2114 dcerpc_dissect_struct_ack(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2116 proto_item *item = NULL;
2117 proto_tree *tree = NULL;
2121 old_offset = offset;
2124 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2125 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_ack);
2129 proto_item_set_len(item, offset-old_offset);
2140 dcerpc_dissect_struct_ping(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2142 proto_item *item = NULL;
2143 proto_tree *tree = NULL;
2147 old_offset = offset;
2150 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2151 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_ping);
2155 proto_item_set_len(item, offset-old_offset);
2166 dcerpc_dissect_struct_shutdown(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2168 proto_item *item = NULL;
2169 proto_tree *tree = NULL;
2173 old_offset = offset;
2176 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2177 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_shutdown);
2181 proto_item_set_len(item, offset-old_offset);
2192 dcerpc_dissect_struct_working(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2194 proto_item *item = NULL;
2195 proto_tree *tree = NULL;
2199 old_offset = offset;
2202 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2203 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_working);
2207 proto_item_set_len(item, offset-old_offset);
2215 /* IDL: GUID Cookie; */
2219 dcerpc_dissect_element_RTSCookie_Cookie(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2221 offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, drep, hf_dcerpc_RTSCookie_Cookie, NULL);
2227 dcerpc_dissect_struct_RTSCookie(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2229 proto_item *item = NULL;
2230 proto_tree *tree = NULL;
2231 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
2236 old_offset = offset;
2239 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2240 tree = proto_item_add_subtree(item, ett_dcerpc_RTSCookie);
2243 offset = dcerpc_dissect_element_RTSCookie_Cookie(tvb, offset, pinfo, tree, drep);
2246 proto_item_set_len(item, offset-old_offset);
2249 if (di->call_data->flags & DCERPC_IS_NDR64) {
2258 /* IDL: RTS_IPV4=0, */
2259 /* IDL: RTS_IPV6=1, */
2263 dcerpc_dissect_enum_AddressType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
2265 guint32 parameter=0;
2267 parameter=(guint32)*param;
2269 offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_index, ¶meter);
2271 *param=(guint32)parameter;
2277 /* IDL: [nodiscriminant(1)] union { */
2278 /* IDL: [case(RTS_IPV4)] [case(RTS_IPV4)] ipv4address ClientAddressIPV4; */
2279 /* IDL: [case(RTS_IPV6)] [case(RTS_IPV6)] ipv6address ClientAddressIPV6; */
2283 dcerpc_dissect_element_ClientAddressType_valRTS_IPV4_ClientAddressIPV4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2285 offset = dcerpc_dissect_struct_ipv4address(tvb,offset,pinfo,tree,drep,hf_dcerpc_ClientAddressType_valRTS_IPV4_ClientAddressIPV4,0);
2291 dcerpc_dissect_element_ClientAddressType_valRTS_IPV6_ClientAddressIPV6(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2293 offset = dcerpc_dissect_struct_ipv6address(tvb,offset,pinfo,tree,drep,hf_dcerpc_ClientAddressType_valRTS_IPV6_ClientAddressIPV6,0);
2299 dcerpc_dissect_ClientAddressType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2301 proto_item *item = NULL;
2302 proto_tree *tree = NULL;
2304 guint32 level = param;
2306 old_offset = offset;
2308 item = proto_tree_add_text(parent_tree, tvb, offset, -1, "ClientAddressType");
2309 tree = proto_item_add_subtree(item, ett_dcerpc_ClientAddressType);
2314 offset = dcerpc_dissect_element_ClientAddressType_valRTS_IPV4_ClientAddressIPV4(tvb, offset, pinfo, tree, drep);
2318 offset = dcerpc_dissect_element_ClientAddressType_valRTS_IPV6_ClientAddressIPV6(tvb, offset, pinfo, tree, drep);
2321 proto_item_set_len(item, offset-old_offset);
2328 /* IDL: AddressType AddressType; */
2329 /* IDL: [switch_is(AddressType)] ClientAddressType ClientAddress; */
2330 /* IDL: uint8 Padding[12]; */
2334 dcerpc_dissect_element_ClientAddress_AddressType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint32 *AddressType)
2336 offset = dcerpc_dissect_enum_AddressType(tvb, offset, pinfo, tree, drep, hf_dcerpc_ClientAddress_AddressType, AddressType);
2342 dcerpc_dissect_element_ClientAddress_ClientAddress(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint32 *AddressType)
2344 offset = dcerpc_dissect_ClientAddressType(tvb, offset, pinfo, tree, drep, hf_dcerpc_ClientAddress_ClientAddress, *AddressType);
2350 dcerpc_dissect_element_ClientAddress_Padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2352 dcerpc_info *di = (dcerpc_info*)pinfo->private_data;
2353 int conformant = di->conformant_run;
2355 offset = dcerpc_dissect_element_ClientAddress_Padding_(tvb, offset, 12, pinfo, tree, drep);
2362 dcerpc_dissect_element_ClientAddress_Padding_(tvbuff_t *tvb _U_, int offset _U_,int length _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2364 proto_tree_add_bytes(tree, hf_dcerpc_ClientAddress_Padding, tvb, offset, length, tvb_get_ptr(tvb, offset,length)); offset += length;
2370 dcerpc_dissect_struct_ClientAddress(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2372 guint32 AddressType;
2373 proto_item *item = NULL;
2374 proto_tree *tree = NULL;
2375 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
2380 old_offset = offset;
2383 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2384 tree = proto_item_add_subtree(item, ett_dcerpc_ClientAddress);
2387 offset = dcerpc_dissect_element_ClientAddress_AddressType(tvb, offset, pinfo, tree, drep, &AddressType);
2389 offset = dcerpc_dissect_element_ClientAddress_ClientAddress(tvb, offset, pinfo, tree, drep, &AddressType);
2391 offset = dcerpc_dissect_element_ClientAddress_Padding(tvb, offset, pinfo, tree, drep);
2394 proto_item_set_len(item, offset-old_offset);
2397 if (di->call_data->flags & DCERPC_IS_NDR64) {
2406 /* IDL: FDClient=0, */
2407 /* IDL: FDInProxy=1, */
2408 /* IDL: FDServer=2, */
2409 /* IDL: FDOutProxy=3, */
2413 dcerpc_dissect_enum_ForwardDestination(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
2415 guint32 parameter=0;
2417 parameter=(guint32)*param;
2419 offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep, hf_index, ¶meter);
2421 *param=(guint32)parameter;
2428 /* IDL: uint32 BytesReceived; */
2429 /* IDL: uint32 AvailableWindow; */
2430 /* IDL: RTSCookie ChannelCookie; */
2434 dcerpc_dissect_element_FlowControlAcknowledgment_BytesReceived(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2436 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_FlowControlAcknowledgment_BytesReceived, 0);
2442 dcerpc_dissect_element_FlowControlAcknowledgment_AvailableWindow(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2444 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_FlowControlAcknowledgment_AvailableWindow, 0);
2450 dcerpc_dissect_element_FlowControlAcknowledgment_ChannelCookie(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2452 offset = dcerpc_dissect_struct_RTSCookie(tvb,offset,pinfo,tree,drep,hf_dcerpc_FlowControlAcknowledgment_ChannelCookie,0);
2458 dcerpc_dissect_struct_FlowControlAcknowledgment(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2460 proto_item *item = NULL;
2461 proto_tree *tree = NULL;
2462 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
2467 old_offset = offset;
2470 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2471 tree = proto_item_add_subtree(item, ett_dcerpc_FlowControlAcknowledgment);
2474 offset = dcerpc_dissect_element_FlowControlAcknowledgment_BytesReceived(tvb, offset, pinfo, tree, drep);
2476 offset = dcerpc_dissect_element_FlowControlAcknowledgment_AvailableWindow(tvb, offset, pinfo, tree, drep);
2478 offset = dcerpc_dissect_element_FlowControlAcknowledgment_ChannelCookie(tvb, offset, pinfo, tree, drep);
2481 proto_item_set_len(item, offset-old_offset);
2484 if (di->call_data->flags & DCERPC_IS_NDR64) {
2493 /* IDL: [range(0x2000,0x40000)] uint32 ReceiveWindowSize; */
2497 dcerpc_dissect_element_rts_cmd_ReceiveWindowSize_ReceiveWindowSize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2499 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_rts_cmd_ReceiveWindowSize_ReceiveWindowSize, 0);
2505 dcerpc_dissect_struct_rts_cmd_ReceiveWindowSize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2507 proto_item *item = NULL;
2508 proto_tree *tree = NULL;
2509 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
2514 old_offset = offset;
2517 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2518 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_rts_cmd_ReceiveWindowSize);
2521 offset = dcerpc_dissect_element_rts_cmd_ReceiveWindowSize_ReceiveWindowSize(tvb, offset, pinfo, tree, drep);
2524 proto_item_set_len(item, offset-old_offset);
2527 if (di->call_data->flags & DCERPC_IS_NDR64) {
2536 /* IDL: FlowControlAcknowledgment Ack; */
2540 dcerpc_dissect_element_rts_cmd_FlowControlAck_Ack(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2542 offset = dcerpc_dissect_struct_FlowControlAcknowledgment(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_rts_cmd_FlowControlAck_Ack,0);
2548 dcerpc_dissect_struct_rts_cmd_FlowControlAck(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2550 proto_item *item = NULL;
2551 proto_tree *tree = NULL;
2552 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
2557 old_offset = offset;
2560 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2561 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_rts_cmd_FlowControlAck);
2564 offset = dcerpc_dissect_element_rts_cmd_FlowControlAck_Ack(tvb, offset, pinfo, tree, drep);
2567 proto_item_set_len(item, offset-old_offset);
2570 if (di->call_data->flags & DCERPC_IS_NDR64) {
2579 /* IDL: [range(0x1D4C0,0xDBBA00)] uint32 ConnectionTimeout; */
2583 dcerpc_dissect_element_rts_cmd_ConnectionTimeout_ConnectionTimeout(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2585 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_rts_cmd_ConnectionTimeout_ConnectionTimeout, 0);
2591 dcerpc_dissect_struct_rts_cmd_ConnectionTimeout(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2593 proto_item *item = NULL;
2594 proto_tree *tree = NULL;
2595 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
2600 old_offset = offset;
2603 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2604 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_rts_cmd_ConnectionTimeout);
2607 offset = dcerpc_dissect_element_rts_cmd_ConnectionTimeout_ConnectionTimeout(tvb, offset, pinfo, tree, drep);
2610 proto_item_set_len(item, offset-old_offset);
2613 if (di->call_data->flags & DCERPC_IS_NDR64) {
2622 /* IDL: RTSCookie Cookie; */
2626 dcerpc_dissect_element_rts_cmd_Cookie_Cookie(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2628 offset = dcerpc_dissect_struct_RTSCookie(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_rts_cmd_Cookie_Cookie,0);
2634 dcerpc_dissect_struct_rts_cmd_Cookie(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2636 proto_item *item = NULL;
2637 proto_tree *tree = NULL;
2638 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
2643 old_offset = offset;
2646 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2647 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_rts_cmd_Cookie);
2650 offset = dcerpc_dissect_element_rts_cmd_Cookie_Cookie(tvb, offset, pinfo, tree, drep);
2653 proto_item_set_len(item, offset-old_offset);
2656 if (di->call_data->flags & DCERPC_IS_NDR64) {
2665 /* IDL: [range(0x20000,0x80000000)] uint32 ChannelLifetime; */
2669 dcerpc_dissect_element_rts_cmd_ChannelLifetime_ChannelLifetime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2671 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_rts_cmd_ChannelLifetime_ChannelLifetime, 0);
2677 dcerpc_dissect_struct_rts_cmd_ChannelLifetime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2679 proto_item *item = NULL;
2680 proto_tree *tree = NULL;
2681 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
2686 old_offset = offset;
2689 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2690 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_rts_cmd_ChannelLifetime);
2693 offset = dcerpc_dissect_element_rts_cmd_ChannelLifetime_ChannelLifetime(tvb, offset, pinfo, tree, drep);
2696 proto_item_set_len(item, offset-old_offset);
2699 if (di->call_data->flags & DCERPC_IS_NDR64) {
2708 /* IDL: uint32 ClientKeepalive; */
2712 dcerpc_dissect_element_rts_cmd_ClientKeepalive_ClientKeepalive(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2714 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_rts_cmd_ClientKeepalive_ClientKeepalive, 0);
2720 dcerpc_dissect_struct_rts_cmd_ClientKeepalive(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2722 proto_item *item = NULL;
2723 proto_tree *tree = NULL;
2724 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
2729 old_offset = offset;
2732 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2733 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_rts_cmd_ClientKeepalive);
2736 offset = dcerpc_dissect_element_rts_cmd_ClientKeepalive_ClientKeepalive(tvb, offset, pinfo, tree, drep);
2739 proto_item_set_len(item, offset-old_offset);
2742 if (di->call_data->flags & DCERPC_IS_NDR64) {
2751 /* IDL: uint32 Version; */
2755 dcerpc_dissect_element_rts_cmd_Version_Version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2757 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_rts_cmd_Version_Version, 0);
2763 dcerpc_dissect_struct_rts_cmd_Version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2765 proto_item *item = NULL;
2766 proto_tree *tree = NULL;
2767 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
2772 old_offset = offset;
2775 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2776 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_rts_cmd_Version);
2779 offset = dcerpc_dissect_element_rts_cmd_Version_Version(tvb, offset, pinfo, tree, drep);
2782 proto_item_set_len(item, offset-old_offset);
2785 if (di->call_data->flags & DCERPC_IS_NDR64) {
2797 dcerpc_dissect_struct_rts_cmd_Empty(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2799 proto_item *item = NULL;
2800 proto_tree *tree = NULL;
2804 old_offset = offset;
2807 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2808 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_rts_cmd_Empty);
2812 proto_item_set_len(item, offset-old_offset);
2820 /* IDL: [range(0x0,0xFFFF)] uint32 ConformanceCount; */
2821 /* IDL: uint8 Padding[ConformanceCount]; */
2825 dcerpc_dissect_element_rts_cmd_Padding_ConformanceCount(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2827 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_rts_cmd_Padding_ConformanceCount, 0);
2833 dcerpc_dissect_element_rts_cmd_Padding_Padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2840 dcerpc_dissect_element_rts_cmd_Padding_Padding_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2842 offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_rts_cmd_Padding_Padding, 0);
2848 dcerpc_dissect_struct_rts_cmd_Padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2850 proto_item *item = NULL;
2851 proto_tree *tree = NULL;
2852 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
2857 old_offset = offset;
2860 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2861 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_rts_cmd_Padding);
2864 offset = dcerpc_dissect_element_rts_cmd_Padding_ConformanceCount(tvb, offset, pinfo, tree, drep);
2866 offset = dcerpc_dissect_element_rts_cmd_Padding_Padding(tvb, offset, pinfo, tree, drep);
2869 proto_item_set_len(item, offset-old_offset);
2872 if (di->call_data->flags & DCERPC_IS_NDR64) {
2884 dcerpc_dissect_struct_rts_cmd_NegativeANCE(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2886 proto_item *item = NULL;
2887 proto_tree *tree = NULL;
2891 old_offset = offset;
2894 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2895 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_rts_cmd_NegativeANCE);
2899 proto_item_set_len(item, offset-old_offset);
2910 dcerpc_dissect_struct_rts_cmd_ANCE(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2912 proto_item *item = NULL;
2913 proto_tree *tree = NULL;
2917 old_offset = offset;
2920 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2921 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_rts_cmd_ANCE);
2925 proto_item_set_len(item, offset-old_offset);
2933 /* IDL: ClientAddress ClientAddress; */
2937 dcerpc_dissect_element_rts_cmd_ClientAddress_ClientAddress(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2939 offset = dcerpc_dissect_struct_ClientAddress(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_rts_cmd_ClientAddress_ClientAddress,0);
2945 dcerpc_dissect_struct_rts_cmd_ClientAddress(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2947 proto_item *item = NULL;
2948 proto_tree *tree = NULL;
2949 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
2954 old_offset = offset;
2957 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
2958 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_rts_cmd_ClientAddress);
2961 offset = dcerpc_dissect_element_rts_cmd_ClientAddress_ClientAddress(tvb, offset, pinfo, tree, drep);
2964 proto_item_set_len(item, offset-old_offset);
2967 if (di->call_data->flags & DCERPC_IS_NDR64) {
2976 /* IDL: RTSCookie AssociationGroupId; */
2980 dcerpc_dissect_element_rts_cmd_AssociationGroupId_AssociationGroupId(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
2982 offset = dcerpc_dissect_struct_RTSCookie(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_rts_cmd_AssociationGroupId_AssociationGroupId,0);
2988 dcerpc_dissect_struct_rts_cmd_AssociationGroupId(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
2990 proto_item *item = NULL;
2991 proto_tree *tree = NULL;
2992 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
2997 old_offset = offset;
3000 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
3001 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_rts_cmd_AssociationGroupId);
3004 offset = dcerpc_dissect_element_rts_cmd_AssociationGroupId_AssociationGroupId(tvb, offset, pinfo, tree, drep);
3007 proto_item_set_len(item, offset-old_offset);
3010 if (di->call_data->flags & DCERPC_IS_NDR64) {
3019 /* IDL: ForwardDestination ForwardDestination; */
3023 dcerpc_dissect_element_rts_cmd_Destination_ForwardDestination(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3025 offset = dcerpc_dissect_enum_ForwardDestination(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_rts_cmd_Destination_ForwardDestination, 0);
3031 dcerpc_dissect_struct_rts_cmd_Destination(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
3033 proto_item *item = NULL;
3034 proto_tree *tree = NULL;
3035 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
3040 old_offset = offset;
3043 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
3044 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_rts_cmd_Destination);
3047 offset = dcerpc_dissect_element_rts_cmd_Destination_ForwardDestination(tvb, offset, pinfo, tree, drep);
3050 proto_item_set_len(item, offset-old_offset);
3053 if (di->call_data->flags & DCERPC_IS_NDR64) {
3062 /* IDL: uint32 PingTrafficSent; */
3066 dcerpc_dissect_element_rts_cmd_PingTrafficSentNotify_PingTrafficSent(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3068 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_rts_cmd_PingTrafficSentNotify_PingTrafficSent, 0);
3074 dcerpc_dissect_struct_rts_cmd_PingTrafficSentNotify(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
3076 proto_item *item = NULL;
3077 proto_tree *tree = NULL;
3078 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
3083 old_offset = offset;
3086 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
3087 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_rts_cmd_PingTrafficSentNotify);
3090 offset = dcerpc_dissect_element_rts_cmd_PingTrafficSentNotify_PingTrafficSent(tvb, offset, pinfo, tree, drep);
3093 proto_item_set_len(item, offset-old_offset);
3096 if (di->call_data->flags & DCERPC_IS_NDR64) {
3104 /* IDL: [nodiscriminant(1)] union { */
3105 /* IDL: [case(0x0)] [case(0x0)] dcerpc_rts_cmd_ReceiveWindowSize ReceiveWindowSize; */
3106 /* IDL: [case(0x1)] [case(0x1)] dcerpc_rts_cmd_FlowControlAck FlowControlAck; */
3107 /* IDL: [case(0x2)] [case(0x2)] dcerpc_rts_cmd_ConnectionTimeout ConnectionTimeout; */
3108 /* IDL: [case(0x3)] [case(0x3)] dcerpc_rts_cmd_Cookie Cookie; */
3109 /* IDL: [case(0x4)] [case(0x4)] dcerpc_rts_cmd_ChannelLifetime ChannelLifetime; */
3110 /* IDL: [case(0x5)] [case(0x5)] dcerpc_rts_cmd_ClientKeepalive ClientKeepalive; */
3111 /* IDL: [case(0x6)] [case(0x6)] dcerpc_rts_cmd_Version Version; */
3112 /* IDL: [case(0x7)] [case(0x7)] dcerpc_rts_cmd_Empty Empty; */
3113 /* IDL: [case(0x8)] [case(0x8)] dcerpc_rts_cmd_Padding Padding; */
3114 /* IDL: [case(0x9)] [case(0x9)] dcerpc_rts_cmd_NegativeANCE NegativeANCE; */
3115 /* IDL: [case(0xA)] [case(0xA)] dcerpc_rts_cmd_ANCE ANCE; */
3116 /* IDL: [case(0xB)] [case(0xB)] dcerpc_rts_cmd_ClientAddress ClientAddress; */
3117 /* IDL: [case(0xC)] [case(0xC)] dcerpc_rts_cmd_AssociationGroupId AssociationGroupId; */
3118 /* IDL: [case(0xD)] [case(0xD)] dcerpc_rts_cmd_Destination Destination; */
3119 /* IDL: [case(0xE)] [case(0xE)] dcerpc_rts_cmd_PingTrafficSentNotify PingTrafficSentNotify; */
3123 dcerpc_dissect_element_rts_cmds_val0x0_ReceiveWindowSize(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3125 offset = dcerpc_dissect_struct_rts_cmd_ReceiveWindowSize(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_rts_cmds_val0x0_ReceiveWindowSize,0);
3131 dcerpc_dissect_element_rts_cmds_val0x1_FlowControlAck(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3133 offset = dcerpc_dissect_struct_rts_cmd_FlowControlAck(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_rts_cmds_val0x1_FlowControlAck,0);
3139 dcerpc_dissect_element_rts_cmds_val0x2_ConnectionTimeout(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3141 offset = dcerpc_dissect_struct_rts_cmd_ConnectionTimeout(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_rts_cmds_val0x2_ConnectionTimeout,0);
3147 dcerpc_dissect_element_rts_cmds_val0x3_Cookie(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3149 offset = dcerpc_dissect_struct_rts_cmd_Cookie(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_rts_cmds_val0x3_Cookie,0);
3155 dcerpc_dissect_element_rts_cmds_val0x4_ChannelLifetime(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3157 offset = dcerpc_dissect_struct_rts_cmd_ChannelLifetime(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_rts_cmds_val0x4_ChannelLifetime,0);
3163 dcerpc_dissect_element_rts_cmds_val0x5_ClientKeepalive(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3165 offset = dcerpc_dissect_struct_rts_cmd_ClientKeepalive(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_rts_cmds_val0x5_ClientKeepalive,0);
3171 dcerpc_dissect_element_rts_cmds_val0x6_Version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3173 offset = dcerpc_dissect_struct_rts_cmd_Version(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_rts_cmds_val0x6_Version,0);
3179 dcerpc_dissect_element_rts_cmds_val0x7_Empty(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3181 offset = dcerpc_dissect_struct_rts_cmd_Empty(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_rts_cmds_val0x7_Empty,0);
3187 dcerpc_dissect_element_rts_cmds_val0x8_Padding(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3189 offset = dcerpc_dissect_struct_rts_cmd_Padding(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_rts_cmds_val0x8_Padding,0);
3195 dcerpc_dissect_element_rts_cmds_val0x9_NegativeANCE(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3197 offset = dcerpc_dissect_struct_rts_cmd_NegativeANCE(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_rts_cmds_val0x9_NegativeANCE,0);
3203 dcerpc_dissect_element_rts_cmds_val0xA_ANCE(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3205 offset = dcerpc_dissect_struct_rts_cmd_ANCE(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_rts_cmds_val0xA_ANCE,0);
3211 dcerpc_dissect_element_rts_cmds_val0xB_ClientAddress(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3213 offset = dcerpc_dissect_struct_rts_cmd_ClientAddress(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_rts_cmds_val0xB_ClientAddress,0);
3219 dcerpc_dissect_element_rts_cmds_val0xC_AssociationGroupId(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3221 offset = dcerpc_dissect_struct_rts_cmd_AssociationGroupId(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_rts_cmds_val0xC_AssociationGroupId,0);
3227 dcerpc_dissect_element_rts_cmds_val0xD_Destination(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3229 offset = dcerpc_dissect_struct_rts_cmd_Destination(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_rts_cmds_val0xD_Destination,0);
3235 dcerpc_dissect_element_rts_cmds_val0xE_PingTrafficSentNotify(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3237 offset = dcerpc_dissect_struct_rts_cmd_PingTrafficSentNotify(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_rts_cmds_val0xE_PingTrafficSentNotify,0);
3243 dcerpc_dissect_rts_cmds(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
3245 proto_item *item = NULL;
3246 proto_tree *tree = NULL;
3248 guint32 level = param;
3250 old_offset = offset;
3252 item = proto_tree_add_text(parent_tree, tvb, offset, -1, "dcerpc_rts_cmds");
3253 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_rts_cmds);
3258 offset = dcerpc_dissect_element_rts_cmds_val0x0_ReceiveWindowSize(tvb, offset, pinfo, tree, drep);
3262 offset = dcerpc_dissect_element_rts_cmds_val0x1_FlowControlAck(tvb, offset, pinfo, tree, drep);
3266 offset = dcerpc_dissect_element_rts_cmds_val0x2_ConnectionTimeout(tvb, offset, pinfo, tree, drep);
3270 offset = dcerpc_dissect_element_rts_cmds_val0x3_Cookie(tvb, offset, pinfo, tree, drep);
3274 offset = dcerpc_dissect_element_rts_cmds_val0x4_ChannelLifetime(tvb, offset, pinfo, tree, drep);
3278 offset = dcerpc_dissect_element_rts_cmds_val0x5_ClientKeepalive(tvb, offset, pinfo, tree, drep);
3282 offset = dcerpc_dissect_element_rts_cmds_val0x6_Version(tvb, offset, pinfo, tree, drep);
3286 offset = dcerpc_dissect_element_rts_cmds_val0x7_Empty(tvb, offset, pinfo, tree, drep);
3290 offset = dcerpc_dissect_element_rts_cmds_val0x8_Padding(tvb, offset, pinfo, tree, drep);
3294 offset = dcerpc_dissect_element_rts_cmds_val0x9_NegativeANCE(tvb, offset, pinfo, tree, drep);
3298 offset = dcerpc_dissect_element_rts_cmds_val0xA_ANCE(tvb, offset, pinfo, tree, drep);
3302 offset = dcerpc_dissect_element_rts_cmds_val0xB_ClientAddress(tvb, offset, pinfo, tree, drep);
3306 offset = dcerpc_dissect_element_rts_cmds_val0xC_AssociationGroupId(tvb, offset, pinfo, tree, drep);
3310 offset = dcerpc_dissect_element_rts_cmds_val0xD_Destination(tvb, offset, pinfo, tree, drep);
3314 offset = dcerpc_dissect_element_rts_cmds_val0xE_PingTrafficSentNotify(tvb, offset, pinfo, tree, drep);
3317 proto_item_set_len(item, offset-old_offset);
3324 /* IDL: uint32 CommandType; */
3325 /* IDL: [switch_is(CommandType)] dcerpc_rts_cmds Command; */
3329 dcerpc_dissect_element_rts_cmd_CommandType(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint32 *CommandType)
3331 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_rts_cmd_CommandType, CommandType);
3337 dcerpc_dissect_element_rts_cmd_Command(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint32 *CommandType)
3339 offset = dcerpc_dissect_rts_cmds(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_rts_cmd_Command, *CommandType);
3345 dcerpc_dissect_struct_rts_cmd(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
3347 guint32 CommandType;
3349 proto_item *item = NULL;
3350 proto_tree *tree = NULL;
3351 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
3356 old_offset = offset;
3359 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
3360 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_rts_cmd);
3363 offset = dcerpc_dissect_element_rts_cmd_CommandType(tvb, offset, pinfo, tree, drep, &CommandType);
3365 offset = dcerpc_dissect_element_rts_cmd_Command(tvb, offset, pinfo, tree, drep, &CommandType);
3368 proto_item_set_len(item, offset-old_offset);
3371 if (di->call_data->flags & DCERPC_IS_NDR64) {
3380 /* IDL: RTS_FLAG_NONE = 0x0000 , */
3381 /* IDL: RTS_FLAG_PING = 0x0001 , */
3382 /* IDL: RTS_FLAG_OTHER_CMD = 0x0002 , */
3383 /* IDL: RTS_FLAG_RECYCLE_CHANNEL = 0x0004 , */
3384 /* IDL: RTS_FLAG_IN_CHANNEL = 0x0008 , */
3385 /* IDL: RTS_FLAG_OUT_CHANNEL = 0x0010 , */
3386 /* IDL: RTS_FLAG_EOF = 0x0020 , */
3387 /* IDL: RTS_FLAG_ECHO = 0x0040 , */
3391 dcerpc_dissect_bitmap_rts_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
3393 proto_item *item = NULL;
3394 proto_tree *tree = NULL;
3400 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, 2, DREP_ENC_INTEGER(drep));
3401 tree = proto_item_add_subtree(item,ett_dcerpc_dcerpc_rts_flags);
3404 offset = dissect_ndr_uint16(tvb, offset, pinfo, NULL, drep, -1, &flags);
3405 proto_item_append_text(item, ": ");
3408 proto_item_append_text(item, "(No values set)");
3410 proto_tree_add_boolean(tree, hf_dcerpc_dcerpc_rts_flags_RTS_FLAG_NONE, tvb, offset-2, 2, flags);
3411 if (flags&( 0x0000 )){
3412 proto_item_append_text(item, "RTS_FLAG_NONE");
3413 if (flags & (~( 0x0000 )))
3414 proto_item_append_text(item, ", ");
3416 flags&=(~( 0x0000 ));
3418 proto_tree_add_boolean(tree, hf_dcerpc_dcerpc_rts_flags_RTS_FLAG_PING, tvb, offset-2, 2, flags);
3419 if (flags&( 0x0001 )){
3420 proto_item_append_text(item, "RTS_FLAG_PING");
3421 if (flags & (~( 0x0001 )))
3422 proto_item_append_text(item, ", ");
3424 flags&=(~( 0x0001 ));
3426 proto_tree_add_boolean(tree, hf_dcerpc_dcerpc_rts_flags_RTS_FLAG_OTHER_CMD, tvb, offset-2, 2, flags);
3427 if (flags&( 0x0002 )){
3428 proto_item_append_text(item, "RTS_FLAG_OTHER_CMD");
3429 if (flags & (~( 0x0002 )))
3430 proto_item_append_text(item, ", ");
3432 flags&=(~( 0x0002 ));
3434 proto_tree_add_boolean(tree, hf_dcerpc_dcerpc_rts_flags_RTS_FLAG_RECYCLE_CHANNEL, tvb, offset-2, 2, flags);
3435 if (flags&( 0x0004 )){
3436 proto_item_append_text(item, "RTS_FLAG_RECYCLE_CHANNEL");
3437 if (flags & (~( 0x0004 )))
3438 proto_item_append_text(item, ", ");
3440 flags&=(~( 0x0004 ));
3442 proto_tree_add_boolean(tree, hf_dcerpc_dcerpc_rts_flags_RTS_FLAG_IN_CHANNEL, tvb, offset-2, 2, flags);
3443 if (flags&( 0x0008 )){
3444 proto_item_append_text(item, "RTS_FLAG_IN_CHANNEL");
3445 if (flags & (~( 0x0008 )))
3446 proto_item_append_text(item, ", ");
3448 flags&=(~( 0x0008 ));
3450 proto_tree_add_boolean(tree, hf_dcerpc_dcerpc_rts_flags_RTS_FLAG_OUT_CHANNEL, tvb, offset-2, 2, flags);
3451 if (flags&( 0x0010 )){
3452 proto_item_append_text(item, "RTS_FLAG_OUT_CHANNEL");
3453 if (flags & (~( 0x0010 )))
3454 proto_item_append_text(item, ", ");
3456 flags&=(~( 0x0010 ));
3458 proto_tree_add_boolean(tree, hf_dcerpc_dcerpc_rts_flags_RTS_FLAG_EOF, tvb, offset-2, 2, flags);
3459 if (flags&( 0x0020 )){
3460 proto_item_append_text(item, "RTS_FLAG_EOF");
3461 if (flags & (~( 0x0020 )))
3462 proto_item_append_text(item, ", ");
3464 flags&=(~( 0x0020 ));
3466 proto_tree_add_boolean(tree, hf_dcerpc_dcerpc_rts_flags_RTS_FLAG_ECHO, tvb, offset-2, 2, flags);
3467 if (flags&( 0x0040 )){
3468 proto_item_append_text(item, "RTS_FLAG_ECHO");
3469 if (flags & (~( 0x0040 )))
3470 proto_item_append_text(item, ", ");
3472 flags&=(~( 0x0040 ));
3475 proto_item_append_text(item, "Unknown bitmap value 0x%x", flags);
3483 /* IDL: dcerpc_rts_flags Flags; */
3484 /* IDL: uint16 NumberOfCommands; */
3485 /* IDL: dcerpc_rts_cmd Commands[NumberOfCommands]; */
3489 dcerpc_dissect_element_rts_Flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3491 offset = dcerpc_dissect_bitmap_rts_flags(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_rts_Flags, 0);
3497 dcerpc_dissect_element_rts_NumberOfCommands(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3499 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dcerpc_dcerpc_rts_NumberOfCommands, 0);
3505 dcerpc_dissect_element_rts_Commands(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3512 dcerpc_dissect_element_rts_Commands_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3514 offset = dcerpc_dissect_struct_rts_cmd(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_rts_Commands,0);
3520 dcerpc_dissect_struct_rts(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
3522 proto_item *item = NULL;
3523 proto_tree *tree = NULL;
3524 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
3529 old_offset = offset;
3532 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
3533 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_rts);
3536 offset = dcerpc_dissect_element_rts_Flags(tvb, offset, pinfo, tree, drep);
3538 offset = dcerpc_dissect_element_rts_NumberOfCommands(tvb, offset, pinfo, tree, drep);
3540 offset = dcerpc_dissect_element_rts_Commands(tvb, offset, pinfo, tree, drep);
3543 proto_item_set_len(item, offset-old_offset);
3546 if (di->call_data->flags & DCERPC_IS_NDR64) {
3555 /* IDL: DCERPC_PKT_REQUEST=0, */
3556 /* IDL: DCERPC_PKT_PING=1, */
3557 /* IDL: DCERPC_PKT_RESPONSE=2, */
3558 /* IDL: DCERPC_PKT_FAULT=3, */
3559 /* IDL: DCERPC_PKT_WORKING=4, */
3560 /* IDL: DCERPC_PKT_NOCALL=5, */
3561 /* IDL: DCERPC_PKT_REJECT=6, */
3562 /* IDL: DCERPC_PKT_ACK=7, */
3563 /* IDL: DCERPC_PKT_CL_CANCEL=8, */
3564 /* IDL: DCERPC_PKT_FACK=9, */
3565 /* IDL: DCERPC_PKT_CANCEL_ACK=10, */
3566 /* IDL: DCERPC_PKT_BIND=11, */
3567 /* IDL: DCERPC_PKT_BIND_ACK=12, */
3568 /* IDL: DCERPC_PKT_BIND_NAK=13, */
3569 /* IDL: DCERPC_PKT_ALTER=14, */
3570 /* IDL: DCERPC_PKT_ALTER_RESP=15, */
3571 /* IDL: DCERPC_PKT_AUTH3=16, */
3572 /* IDL: DCERPC_PKT_SHUTDOWN=17, */
3573 /* IDL: DCERPC_PKT_CO_CANCEL=18, */
3574 /* IDL: DCERPC_PKT_ORPHANED=19, */
3575 /* IDL: DCERPC_PKT_RTS=20, */
3579 dcerpc_dissect_enum_pkt_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 *param _U_)
3583 parameter=(guint8)*param;
3585 offset = dissect_ndr_uint8(tvb, offset, pinfo, tree, drep, hf_index, ¶meter);
3587 *param=(guint32)parameter;
3593 /* IDL: [nodiscriminant(1)] union { */
3594 /* IDL: [case(DCERPC_PKT_REQUEST)] [case(DCERPC_PKT_REQUEST)] dcerpc_request request; */
3595 /* IDL: [case(DCERPC_PKT_PING)] [case(DCERPC_PKT_PING)] dcerpc_ping ping; */
3596 /* IDL: [case(DCERPC_PKT_RESPONSE)] [case(DCERPC_PKT_RESPONSE)] dcerpc_response response; */
3597 /* IDL: [case(DCERPC_PKT_FAULT)] [case(DCERPC_PKT_FAULT)] dcerpc_fault fault; */
3598 /* IDL: [case(DCERPC_PKT_WORKING)] [case(DCERPC_PKT_WORKING)] dcerpc_working working; */
3599 /* IDL: [case(DCERPC_PKT_NOCALL)] [case(DCERPC_PKT_NOCALL)] dcerpc_fack nocall; */
3600 /* IDL: [case(DCERPC_PKT_REJECT)] [case(DCERPC_PKT_REJECT)] dcerpc_fault reject; */
3601 /* IDL: [case(DCERPC_PKT_ACK)] [case(DCERPC_PKT_ACK)] dcerpc_ack ack; */
3602 /* IDL: [case(DCERPC_PKT_CL_CANCEL)] [case(DCERPC_PKT_CL_CANCEL)] dcerpc_cl_cancel cl_cancel; */
3603 /* IDL: [case(DCERPC_PKT_FACK)] [case(DCERPC_PKT_FACK)] dcerpc_fack fack; */
3604 /* IDL: [case(DCERPC_PKT_CANCEL_ACK)] [case(DCERPC_PKT_CANCEL_ACK)] dcerpc_cancel_ack cancel_ack; */
3605 /* IDL: [case(DCERPC_PKT_BIND)] [case(DCERPC_PKT_BIND)] dcerpc_bind bind; */
3606 /* IDL: [case(DCERPC_PKT_BIND_ACK)] [case(DCERPC_PKT_BIND_ACK)] dcerpc_bind_ack bind_ack; */
3607 /* IDL: [case(DCERPC_PKT_BIND_NAK)] [case(DCERPC_PKT_BIND_NAK)] dcerpc_bind_nak bind_nak; */
3608 /* IDL: [case(DCERPC_PKT_ALTER)] [case(DCERPC_PKT_ALTER)] dcerpc_bind alter; */
3609 /* IDL: [case(DCERPC_PKT_ALTER_RESP)] [case(DCERPC_PKT_ALTER_RESP)] dcerpc_bind_ack alter_resp; */
3610 /* IDL: [case(DCERPC_PKT_SHUTDOWN)] [case(DCERPC_PKT_SHUTDOWN)] dcerpc_shutdown shutdown; */
3611 /* IDL: [case(DCERPC_PKT_CO_CANCEL)] [case(DCERPC_PKT_CO_CANCEL)] dcerpc_co_cancel co_cancel; */
3612 /* IDL: [case(DCERPC_PKT_ORPHANED)] [case(DCERPC_PKT_ORPHANED)] dcerpc_orphaned orphaned; */
3613 /* IDL: [case(DCERPC_PKT_AUTH3)] [case(DCERPC_PKT_AUTH3)] dcerpc_auth3 auth3; */
3614 /* IDL: [case(DCERPC_PKT_RTS)] [case(DCERPC_PKT_RTS)] dcerpc_rts rts; */
3618 dcerpc_dissect_element_payload_valDCERPC_PKT_REQUEST_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3620 offset = dcerpc_dissect_struct_request(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_payload_valDCERPC_PKT_REQUEST_request,0);
3626 dcerpc_dissect_element_payload_valDCERPC_PKT_PING_ping(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3628 offset = dcerpc_dissect_struct_ping(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_payload_valDCERPC_PKT_PING_ping,0);
3634 dcerpc_dissect_element_payload_valDCERPC_PKT_RESPONSE_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3636 offset = dcerpc_dissect_struct_response(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_payload_valDCERPC_PKT_RESPONSE_response,0);
3642 dcerpc_dissect_element_payload_valDCERPC_PKT_FAULT_fault(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3644 offset = dcerpc_dissect_struct_fault(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_payload_valDCERPC_PKT_FAULT_fault,0);
3650 dcerpc_dissect_element_payload_valDCERPC_PKT_WORKING_working(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3652 offset = dcerpc_dissect_struct_working(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_payload_valDCERPC_PKT_WORKING_working,0);
3658 dcerpc_dissect_element_payload_valDCERPC_PKT_NOCALL_nocall(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3660 offset = dcerpc_dissect_struct_fack(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_payload_valDCERPC_PKT_NOCALL_nocall,0);
3666 dcerpc_dissect_element_payload_valDCERPC_PKT_REJECT_reject(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3668 offset = dcerpc_dissect_struct_fault(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_payload_valDCERPC_PKT_REJECT_reject,0);
3674 dcerpc_dissect_element_payload_valDCERPC_PKT_ACK_ack(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3676 offset = dcerpc_dissect_struct_ack(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_payload_valDCERPC_PKT_ACK_ack,0);
3682 dcerpc_dissect_element_payload_valDCERPC_PKT_CL_CANCEL_cl_cancel(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3684 offset = dcerpc_dissect_struct_cl_cancel(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_payload_valDCERPC_PKT_CL_CANCEL_cl_cancel,0);
3690 dcerpc_dissect_element_payload_valDCERPC_PKT_FACK_fack(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3692 offset = dcerpc_dissect_struct_fack(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_payload_valDCERPC_PKT_FACK_fack,0);
3698 dcerpc_dissect_element_payload_valDCERPC_PKT_CANCEL_ACK_cancel_ack(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3700 offset = dcerpc_dissect_struct_cancel_ack(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_payload_valDCERPC_PKT_CANCEL_ACK_cancel_ack,0);
3706 dcerpc_dissect_element_payload_valDCERPC_PKT_BIND_bind(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3708 offset = dcerpc_dissect_struct_bind(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_payload_valDCERPC_PKT_BIND_bind,0);
3714 dcerpc_dissect_element_payload_valDCERPC_PKT_BIND_ACK_bind_ack(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3716 offset = dcerpc_dissect_struct_bind_ack(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_payload_valDCERPC_PKT_BIND_ACK_bind_ack,0);
3722 dcerpc_dissect_element_payload_valDCERPC_PKT_BIND_NAK_bind_nak(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3724 offset = dcerpc_dissect_struct_bind_nak(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_payload_valDCERPC_PKT_BIND_NAK_bind_nak,0);
3730 dcerpc_dissect_element_payload_valDCERPC_PKT_ALTER_alter(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3732 offset = dcerpc_dissect_struct_bind(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_payload_valDCERPC_PKT_ALTER_alter,0);
3738 dcerpc_dissect_element_payload_valDCERPC_PKT_ALTER_RESP_alter_resp(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3740 offset = dcerpc_dissect_struct_bind_ack(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_payload_valDCERPC_PKT_ALTER_RESP_alter_resp,0);
3746 dcerpc_dissect_element_payload_valDCERPC_PKT_SHUTDOWN_shutdown(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3748 offset = dcerpc_dissect_struct_shutdown(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_payload_valDCERPC_PKT_SHUTDOWN_shutdown,0);
3754 dcerpc_dissect_element_payload_valDCERPC_PKT_CO_CANCEL_co_cancel(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3756 offset = dcerpc_dissect_struct_co_cancel(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_payload_valDCERPC_PKT_CO_CANCEL_co_cancel,0);
3762 dcerpc_dissect_element_payload_valDCERPC_PKT_ORPHANED_orphaned(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3764 offset = dcerpc_dissect_struct_orphaned(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_payload_valDCERPC_PKT_ORPHANED_orphaned,0);
3770 dcerpc_dissect_element_payload_valDCERPC_PKT_AUTH3_auth3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3772 offset = dcerpc_dissect_struct_auth3(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_payload_valDCERPC_PKT_AUTH3_auth3,0);
3778 dcerpc_dissect_element_payload_valDCERPC_PKT_RTS_rts(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3780 offset = dcerpc_dissect_struct_rts(tvb,offset,pinfo,tree,drep,hf_dcerpc_dcerpc_payload_valDCERPC_PKT_RTS_rts,0);
3786 dcerpc_dissect_payload(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
3788 proto_item *item = NULL;
3789 proto_tree *tree = NULL;
3791 guint32 level = param;
3793 old_offset = offset;
3795 item = proto_tree_add_text(parent_tree, tvb, offset, -1, "dcerpc_payload");
3796 tree = proto_item_add_subtree(item, ett_dcerpc_dcerpc_payload);
3800 case DCERPC_PKT_REQUEST:
3801 offset = dcerpc_dissect_element_payload_valDCERPC_PKT_REQUEST_request(tvb, offset, pinfo, tree, drep);
3804 case DCERPC_PKT_PING:
3805 offset = dcerpc_dissect_element_payload_valDCERPC_PKT_PING_ping(tvb, offset, pinfo, tree, drep);
3808 case DCERPC_PKT_RESPONSE:
3809 offset = dcerpc_dissect_element_payload_valDCERPC_PKT_RESPONSE_response(tvb, offset, pinfo, tree, drep);
3812 case DCERPC_PKT_FAULT:
3813 offset = dcerpc_dissect_element_payload_valDCERPC_PKT_FAULT_fault(tvb, offset, pinfo, tree, drep);
3816 case DCERPC_PKT_WORKING:
3817 offset = dcerpc_dissect_element_payload_valDCERPC_PKT_WORKING_working(tvb, offset, pinfo, tree, drep);
3820 case DCERPC_PKT_NOCALL:
3821 offset = dcerpc_dissect_element_payload_valDCERPC_PKT_NOCALL_nocall(tvb, offset, pinfo, tree, drep);
3824 case DCERPC_PKT_REJECT:
3825 offset = dcerpc_dissect_element_payload_valDCERPC_PKT_REJECT_reject(tvb, offset, pinfo, tree, drep);
3828 case DCERPC_PKT_ACK:
3829 offset = dcerpc_dissect_element_payload_valDCERPC_PKT_ACK_ack(tvb, offset, pinfo, tree, drep);
3832 case DCERPC_PKT_CL_CANCEL:
3833 offset = dcerpc_dissect_element_payload_valDCERPC_PKT_CL_CANCEL_cl_cancel(tvb, offset, pinfo, tree, drep);
3836 case DCERPC_PKT_FACK:
3837 offset = dcerpc_dissect_element_payload_valDCERPC_PKT_FACK_fack(tvb, offset, pinfo, tree, drep);
3840 case DCERPC_PKT_CANCEL_ACK:
3841 offset = dcerpc_dissect_element_payload_valDCERPC_PKT_CANCEL_ACK_cancel_ack(tvb, offset, pinfo, tree, drep);
3844 case DCERPC_PKT_BIND:
3845 offset = dcerpc_dissect_element_payload_valDCERPC_PKT_BIND_bind(tvb, offset, pinfo, tree, drep);
3848 case DCERPC_PKT_BIND_ACK:
3849 offset = dcerpc_dissect_element_payload_valDCERPC_PKT_BIND_ACK_bind_ack(tvb, offset, pinfo, tree, drep);
3852 case DCERPC_PKT_BIND_NAK:
3853 offset = dcerpc_dissect_element_payload_valDCERPC_PKT_BIND_NAK_bind_nak(tvb, offset, pinfo, tree, drep);
3856 case DCERPC_PKT_ALTER:
3857 offset = dcerpc_dissect_element_payload_valDCERPC_PKT_ALTER_alter(tvb, offset, pinfo, tree, drep);
3860 case DCERPC_PKT_ALTER_RESP:
3861 offset = dcerpc_dissect_element_payload_valDCERPC_PKT_ALTER_RESP_alter_resp(tvb, offset, pinfo, tree, drep);
3864 case DCERPC_PKT_SHUTDOWN:
3865 offset = dcerpc_dissect_element_payload_valDCERPC_PKT_SHUTDOWN_shutdown(tvb, offset, pinfo, tree, drep);
3868 case DCERPC_PKT_CO_CANCEL:
3869 offset = dcerpc_dissect_element_payload_valDCERPC_PKT_CO_CANCEL_co_cancel(tvb, offset, pinfo, tree, drep);
3872 case DCERPC_PKT_ORPHANED:
3873 offset = dcerpc_dissect_element_payload_valDCERPC_PKT_ORPHANED_orphaned(tvb, offset, pinfo, tree, drep);
3876 case DCERPC_PKT_AUTH3:
3877 offset = dcerpc_dissect_element_payload_valDCERPC_PKT_AUTH3_auth3(tvb, offset, pinfo, tree, drep);
3880 case DCERPC_PKT_RTS:
3881 offset = dcerpc_dissect_element_payload_valDCERPC_PKT_RTS_rts(tvb, offset, pinfo, tree, drep);
3884 proto_item_set_len(item, offset-old_offset);
3891 /* IDL: uint8 rpc_vers; */
3892 /* IDL: uint8 rpc_vers_minor; */
3893 /* IDL: dcerpc_pkt_type ptype; */
3894 /* IDL: uint8 pfc_flags; */
3895 /* IDL: uint8 drep[4]; */
3896 /* IDL: uint16 frag_length; */
3897 /* IDL: uint16 auth_length; */
3898 /* IDL: uint32 call_id; */
3899 /* IDL: [switch_is(ptype)] dcerpc_payload u; */
3903 dcerpc_dissect_element_ncacn_packet_rpc_vers(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3905 offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncacn_packet_rpc_vers, 0);
3911 dcerpc_dissect_element_ncacn_packet_rpc_vers_minor(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3913 offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncacn_packet_rpc_vers_minor, 0);
3919 dcerpc_dissect_element_ncacn_packet_ptype(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint8 *ptype)
3921 offset = dcerpc_dissect_enum_pkt_type(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncacn_packet_ptype, ptype);
3927 dcerpc_dissect_element_ncacn_packet_pfc_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3929 offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncacn_packet_pfc_flags, 0);
3935 dcerpc_dissect_element_ncacn_packet_drep(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3937 dcerpc_info *di = (dcerpc_info*)pinfo->private_data;
3938 int conformant = di->conformant_run;
3940 offset = dcerpc_dissect_element_ncacn_packet_drep_(tvb, offset, 4, pinfo, tree, drep);
3947 dcerpc_dissect_element_ncacn_packet_drep_(tvbuff_t *tvb _U_, int offset _U_,int length _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3949 proto_tree_add_bytes(tree, hf_dcerpc_ncacn_packet_drep, tvb, offset, length, tvb_get_ptr(tvb, offset,length)); offset += length;
3955 dcerpc_dissect_element_ncacn_packet_frag_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3957 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncacn_packet_frag_length, 0);
3963 dcerpc_dissect_element_ncacn_packet_auth_length(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3965 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncacn_packet_auth_length, 0);
3971 dcerpc_dissect_element_ncacn_packet_call_id(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
3973 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncacn_packet_call_id, 0);
3979 dcerpc_dissect_element_ncacn_packet_u(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint8 *ptype)
3981 offset = dcerpc_dissect_payload(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncacn_packet_u, *ptype);
3987 dcerpc_dissect_struct_ncacn_packet(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
3990 proto_item *item = NULL;
3991 proto_tree *tree = NULL;
3992 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
3997 old_offset = offset;
4000 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
4001 tree = proto_item_add_subtree(item, ett_dcerpc_ncacn_packet);
4004 offset = dcerpc_dissect_element_ncacn_packet_rpc_vers(tvb, offset, pinfo, tree, drep);
4006 offset = dcerpc_dissect_element_ncacn_packet_rpc_vers_minor(tvb, offset, pinfo, tree, drep);
4008 offset = dcerpc_dissect_element_ncacn_packet_ptype(tvb, offset, pinfo, tree, drep, &ptype);
4010 offset = dcerpc_dissect_element_ncacn_packet_pfc_flags(tvb, offset, pinfo, tree, drep);
4012 offset = dcerpc_dissect_element_ncacn_packet_drep(tvb, offset, pinfo, tree, drep);
4014 offset = dcerpc_dissect_element_ncacn_packet_frag_length(tvb, offset, pinfo, tree, drep);
4016 offset = dcerpc_dissect_element_ncacn_packet_auth_length(tvb, offset, pinfo, tree, drep);
4018 offset = dcerpc_dissect_element_ncacn_packet_call_id(tvb, offset, pinfo, tree, drep);
4020 offset = dcerpc_dissect_element_ncacn_packet_u(tvb, offset, pinfo, tree, drep, &ptype);
4023 proto_item_set_len(item, offset-old_offset);
4026 if (di->call_data->flags & DCERPC_IS_NDR64) {
4035 /* IDL: uint8 rpc_vers; */
4036 /* IDL: uint8 ptype; */
4037 /* IDL: uint8 pfc_flags; */
4038 /* IDL: uint8 ncadg_flags; */
4039 /* IDL: uint8 drep[3]; */
4040 /* IDL: uint8 serial_high; */
4041 /* IDL: GUID object; */
4042 /* IDL: GUID iface; */
4043 /* IDL: GUID activity; */
4044 /* IDL: uint32 server_boot; */
4045 /* IDL: uint32 iface_version; */
4046 /* IDL: uint32 seq_num; */
4047 /* IDL: uint16 opnum; */
4048 /* IDL: uint16 ihint; */
4049 /* IDL: uint16 ahint; */
4050 /* IDL: uint16 len; */
4051 /* IDL: uint16 fragnum; */
4052 /* IDL: uint8 auth_proto; */
4053 /* IDL: uint8 serial_low; */
4054 /* IDL: [switch_is(ptype)] dcerpc_payload u; */
4058 dcerpc_dissect_element_ncadg_packet_rpc_vers(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4060 offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncadg_packet_rpc_vers, 0);
4066 dcerpc_dissect_element_ncadg_packet_ptype(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint8 *ptype)
4068 offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncadg_packet_ptype, ptype);
4074 dcerpc_dissect_element_ncadg_packet_pfc_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4076 offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncadg_packet_pfc_flags, 0);
4082 dcerpc_dissect_element_ncadg_packet_ncadg_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4084 offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncadg_packet_ncadg_flags, 0);
4090 dcerpc_dissect_element_ncadg_packet_drep(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4092 dcerpc_info *di = (dcerpc_info*)pinfo->private_data;
4093 int conformant = di->conformant_run;
4095 offset = dcerpc_dissect_element_ncadg_packet_drep_(tvb, offset, 3, pinfo, tree, drep);
4102 dcerpc_dissect_element_ncadg_packet_drep_(tvbuff_t *tvb _U_, int offset _U_,int length _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4104 proto_tree_add_bytes(tree, hf_dcerpc_ncadg_packet_drep, tvb, offset, length, tvb_get_ptr(tvb, offset,length)); offset += length;
4110 dcerpc_dissect_element_ncadg_packet_serial_high(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4112 offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncadg_packet_serial_high, 0);
4118 dcerpc_dissect_element_ncadg_packet_object(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4120 offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncadg_packet_object, NULL);
4126 dcerpc_dissect_element_ncadg_packet_iface(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4128 offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncadg_packet_iface, NULL);
4134 dcerpc_dissect_element_ncadg_packet_activity(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4136 offset = dissect_ndr_uuid_t(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncadg_packet_activity, NULL);
4142 dcerpc_dissect_element_ncadg_packet_server_boot(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4144 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncadg_packet_server_boot, 0);
4150 dcerpc_dissect_element_ncadg_packet_iface_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4152 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncadg_packet_iface_version, 0);
4158 dcerpc_dissect_element_ncadg_packet_seq_num(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4160 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncadg_packet_seq_num, 0);
4166 dcerpc_dissect_element_ncadg_packet_opnum(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4168 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncadg_packet_opnum, 0);
4174 dcerpc_dissect_element_ncadg_packet_ihint(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4176 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncadg_packet_ihint, 0);
4182 dcerpc_dissect_element_ncadg_packet_ahint(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4184 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncadg_packet_ahint, 0);
4190 dcerpc_dissect_element_ncadg_packet_len(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4192 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncadg_packet_len, 0);
4198 dcerpc_dissect_element_ncadg_packet_fragnum(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4200 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncadg_packet_fragnum, 0);
4206 dcerpc_dissect_element_ncadg_packet_auth_proto(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4208 offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncadg_packet_auth_proto, 0);
4214 dcerpc_dissect_element_ncadg_packet_serial_low(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
4216 offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncadg_packet_serial_low, 0);
4222 dcerpc_dissect_element_ncadg_packet_u(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint8 *ptype)
4224 offset = dcerpc_dissect_payload(tvb, offset, pinfo, tree, drep, hf_dcerpc_ncadg_packet_u, *ptype);
4230 dcerpc_dissect_struct_ncadg_packet(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *parent_tree _U_, guint8 *drep _U_, int hf_index _U_, guint32 param _U_)
4233 proto_item *item = NULL;
4234 proto_tree *tree = NULL;
4235 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
4240 old_offset = offset;
4243 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
4244 tree = proto_item_add_subtree(item, ett_dcerpc_ncadg_packet);
4247 offset = dcerpc_dissect_element_ncadg_packet_rpc_vers(tvb, offset, pinfo, tree, drep);
4249 offset = dcerpc_dissect_element_ncadg_packet_ptype(tvb, offset, pinfo, tree, drep, &ptype);
4251 offset = dcerpc_dissect_element_ncadg_packet_pfc_flags(tvb, offset, pinfo, tree, drep);
4253 offset = dcerpc_dissect_element_ncadg_packet_ncadg_flags(tvb, offset, pinfo, tree, drep);
4255 offset = dcerpc_dissect_element_ncadg_packet_drep(tvb, offset, pinfo, tree, drep);
4257 offset = dcerpc_dissect_element_ncadg_packet_serial_high(tvb, offset, pinfo, tree, drep);
4259 offset = dcerpc_dissect_element_ncadg_packet_object(tvb, offset, pinfo, tree, drep);
4261 offset = dcerpc_dissect_element_ncadg_packet_iface(tvb, offset, pinfo, tree, drep);
4263 offset = dcerpc_dissect_element_ncadg_packet_activity(tvb, offset, pinfo, tree, drep);
4265 offset = dcerpc_dissect_element_ncadg_packet_server_boot(tvb, offset, pinfo, tree, drep);
4267 offset = dcerpc_dissect_element_ncadg_packet_iface_version(tvb, offset, pinfo, tree, drep);
4269 offset = dcerpc_dissect_element_ncadg_packet_seq_num(tvb, offset, pinfo, tree, drep);
4271 offset = dcerpc_dissect_element_ncadg_packet_opnum(tvb, offset, pinfo, tree, drep);
4273 offset = dcerpc_dissect_element_ncadg_packet_ihint(tvb, offset, pinfo, tree, drep);
4275 offset = dcerpc_dissect_element_ncadg_packet_ahint(tvb, offset, pinfo, tree, drep);
4277 offset = dcerpc_dissect_element_ncadg_packet_len(tvb, offset, pinfo, tree, drep);
4279 offset = dcerpc_dissect_element_ncadg_packet_fragnum(tvb, offset, pinfo, tree, drep);
4281 offset = dcerpc_dissect_element_ncadg_packet_auth_proto(tvb, offset, pinfo, tree, drep);
4283 offset = dcerpc_dissect_element_ncadg_packet_serial_low(tvb, offset, pinfo, tree, drep);
4285 offset = dcerpc_dissect_element_ncadg_packet_u(tvb, offset, pinfo, tree, drep, &ptype);
4288 proto_item_set_len(item, offset-old_offset);
4291 if (di->call_data->flags & DCERPC_IS_NDR64) {
4299 static dcerpc_sub_dissector dcerpc_dissectors[] = {
4300 { 0, NULL, NULL, NULL }
4303 void proto_register_dcerpc_dcerpc(void)
4305 static hf_register_info hf[] = {
4306 { &hf_dcerpc_dcerpc_rts_cmds_val0xE_PingTrafficSentNotify,
4307 { "Pingtrafficsentnotify", "dcerpc.dcerpc_rts_cmds_val0xE.PingTrafficSentNotify", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4308 { &hf_dcerpc_dcerpc_auth_auth_reserved,
4309 { "Auth Reserved", "dcerpc.dcerpc_auth.auth_reserved", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
4310 { &hf_dcerpc_dcerpc_bind_ack_secondary_address_size,
4311 { "Secondary Address Size", "dcerpc.dcerpc_bind_ack.secondary_address_size", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
4312 { &hf_dcerpc_dcerpc_request_stub_and_verifier,
4313 { "Stub And Verifier", "dcerpc.dcerpc_request.stub_and_verifier", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4314 { &hf_dcerpc_dcerpc_rts_flags_RTS_FLAG_PING,
4315 { "Rts Flag Ping", "dcerpc.dcerpc_rts_flags.RTS_FLAG_PING", FT_BOOLEAN, 16, TFS(&dcerpc_rts_flags_RTS_FLAG_PING_tfs), ( 0x0001 ), NULL, HFILL }},
4316 { &hf_dcerpc_ncadg_packet_u,
4317 { "U", "dcerpc.ncadg_packet.u", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4318 { &hf_dcerpc_dcerpc_rts_cmds_val0x2_ConnectionTimeout,
4319 { "Connectiontimeout", "dcerpc.dcerpc_rts_cmds_val0x2.ConnectionTimeout", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4320 { &hf_dcerpc_dcerpc_fack_serial_no,
4321 { "Serial No", "dcerpc.dcerpc_fack.serial_no", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
4322 { &hf_dcerpc_dcerpc_cl_cancel_version,
4323 { "Version", "dcerpc.dcerpc_cl_cancel.version", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4324 { &hf_dcerpc_dcerpc_rts_cmds_val0x1_FlowControlAck,
4325 { "Flowcontrolack", "dcerpc.dcerpc_rts_cmds_val0x1.FlowControlAck", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4326 { &hf_dcerpc_dcerpc_orphaned_auth_info,
4327 { "Auth Info", "dcerpc.dcerpc_orphaned.auth_info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4328 { &hf_dcerpc_dcerpc_ack_ctx_result,
4329 { "Result", "dcerpc.dcerpc_ack_ctx.result", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
4330 { &hf_dcerpc_dcerpc_co_cancel_auth_info,
4331 { "Auth Info", "dcerpc.dcerpc_co_cancel.auth_info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4332 { &hf_dcerpc_dcerpc_auth_auth_context_id,
4333 { "Auth Context Id", "dcerpc.dcerpc_auth.auth_context_id", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4334 { &hf_dcerpc_dcerpc_rts_cmd_Command,
4335 { "Command", "dcerpc.dcerpc_rts_cmd.Command", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4336 { &hf_dcerpc_dcerpc_rts_cmds_val0x8_Padding,
4337 { "Padding", "dcerpc.dcerpc_rts_cmds_val0x8.Padding", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4338 { &hf_dcerpc_ncadg_packet_fragnum,
4339 { "Fragnum", "dcerpc.ncadg_packet.fragnum", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
4340 { &hf_dcerpc_ncadg_packet_pfc_flags,
4341 { "Pfc Flags", "dcerpc.ncadg_packet.pfc_flags", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
4342 { &hf_dcerpc_ncacn_packet_u,
4343 { "U", "dcerpc.ncacn_packet.u", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4344 { &hf_dcerpc_dcerpc_rts_cmds_val0x4_ChannelLifetime,
4345 { "Channellifetime", "dcerpc.dcerpc_rts_cmds_val0x4.ChannelLifetime", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4346 { &hf_dcerpc_dcerpc_payload_valDCERPC_PKT_REQUEST_request,
4347 { "Request", "dcerpc.dcerpc_payload_valDCERPC_PKT_REQUEST.request", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4348 { &hf_dcerpc_dcerpc_bind_nak_versions_num_versions,
4349 { "Num Versions", "dcerpc.dcerpc_bind_nak_versions.num_versions", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4350 { &hf_dcerpc_dcerpc_rts_cmds_val0xB_ClientAddress,
4351 { "Clientaddress", "dcerpc.dcerpc_rts_cmds_val0xB.ClientAddress", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4352 { &hf_dcerpc_ncacn_packet_auth_length,
4353 { "Auth Length", "dcerpc.ncacn_packet.auth_length", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
4354 { &hf_dcerpc_ncadg_packet_ihint,
4355 { "Ihint", "dcerpc.ncadg_packet.ihint", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
4356 { &hf_dcerpc_ncadg_packet_iface,
4357 { "Iface", "dcerpc.ncadg_packet.iface", FT_GUID, BASE_NONE, NULL, 0, NULL, HFILL }},
4358 { &hf_dcerpc_dcerpc_rts_cmd_Padding_ConformanceCount,
4359 { "Conformancecount", "dcerpc.dcerpc_rts_cmd_Padding.ConformanceCount", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4360 { &hf_dcerpc_dcerpc_request_object,
4361 { "Object", "dcerpc.dcerpc_request.object", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4362 { &hf_dcerpc_dcerpc_payload_valDCERPC_PKT_AUTH3_auth3,
4363 { "Auth3", "dcerpc.dcerpc_payload_valDCERPC_PKT_AUTH3.auth3", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4364 { &hf_dcerpc_ncacn_packet_call_id,
4365 { "Call Id", "dcerpc.ncacn_packet.call_id", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4366 { &hf_dcerpc_dcerpc_payload_valDCERPC_PKT_BIND_ACK_bind_ack,
4367 { "Bind Ack", "dcerpc.dcerpc_payload_valDCERPC_PKT_BIND_ACK.bind_ack", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4368 { &hf_dcerpc_dcerpc_request_alloc_hint,
4369 { "Alloc Hint", "dcerpc.dcerpc_request.alloc_hint", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4370 { &hf_dcerpc_dcerpc_bind_ctx_list,
4371 { "Ctx List", "dcerpc.dcerpc_bind.ctx_list", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4372 { &hf_dcerpc_dcerpc_ack_ctx_reason,
4373 { "Reason", "dcerpc.dcerpc_ack_ctx.reason", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
4374 { &hf_dcerpc_dcerpc_bind_max_xmit_frag,
4375 { "Max Xmit Frag", "dcerpc.dcerpc_bind.max_xmit_frag", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
4376 { &hf_dcerpc_dcerpc_bind_num_contexts,
4377 { "Num Contexts", "dcerpc.dcerpc_bind.num_contexts", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
4378 { &hf_dcerpc_dcerpc_cl_cancel_id,
4379 { "Id", "dcerpc.dcerpc_cl_cancel.id", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4380 { &hf_dcerpc_dcerpc_ack_ctx_syntax,
4381 { "Syntax", "dcerpc.dcerpc_ack_ctx.syntax", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4382 { &hf_dcerpc_ClientAddressType_valRTS_IPV4_ClientAddressIPV4,
4383 { "Clientaddressipv4", "dcerpc.ClientAddressType_valRTS_IPV4.ClientAddressIPV4", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4384 { &hf_dcerpc_dcerpc_bind_ack_max_xmit_frag,
4385 { "Max Xmit Frag", "dcerpc.dcerpc_bind_ack.max_xmit_frag", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
4386 { &hf_dcerpc_dcerpc_rts_cmds_val0x6_Version,
4387 { "Version", "dcerpc.dcerpc_rts_cmds_val0x6.Version", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4388 { &hf_dcerpc_dcerpc_fack_max_frag_size,
4389 { "Max Frag Size", "dcerpc.dcerpc_fack.max_frag_size", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4390 { &hf_dcerpc_dcerpc_orphaned__pad,
4391 { " Pad", "dcerpc.dcerpc_orphaned._pad", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4392 { &hf_dcerpc_dcerpc_bind_ack_max_recv_frag,
4393 { "Max Recv Frag", "dcerpc.dcerpc_bind_ack.max_recv_frag", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
4394 { &hf_dcerpc_dcerpc_rts_cmds_val0x0_ReceiveWindowSize,
4395 { "Receivewindowsize", "dcerpc.dcerpc_rts_cmds_val0x0.ReceiveWindowSize", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4396 { &hf_dcerpc_dcerpc_payload_valDCERPC_PKT_CANCEL_ACK_cancel_ack,
4397 { "Cancel Ack", "dcerpc.dcerpc_payload_valDCERPC_PKT_CANCEL_ACK.cancel_ack", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4398 { &hf_dcerpc_ClientAddressType_valRTS_IPV6_ClientAddressIPV6,
4399 { "Clientaddressipv6", "dcerpc.ClientAddressType_valRTS_IPV6.ClientAddressIPV6", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4400 { &hf_dcerpc_dcerpc_payload_valDCERPC_PKT_SHUTDOWN_shutdown,
4401 { "Shutdown", "dcerpc.dcerpc_payload_valDCERPC_PKT_SHUTDOWN.shutdown", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4402 { &hf_dcerpc_ncadg_packet_ncadg_flags,
4403 { "Ncadg Flags", "dcerpc.ncadg_packet.ncadg_flags", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
4404 { &hf_dcerpc_dcerpc_ctx_list_context_id,
4405 { "Context Id", "dcerpc.dcerpc_ctx_list.context_id", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
4406 { &hf_dcerpc_dcerpc_rts_cmds_val0x5_ClientKeepalive,
4407 { "Clientkeepalive", "dcerpc.dcerpc_rts_cmds_val0x5.ClientKeepalive", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4408 { &hf_dcerpc_dcerpc_rts_cmd_FlowControlAck_Ack,
4409 { "Ack", "dcerpc.dcerpc_rts_cmd_FlowControlAck.Ack", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4410 { &hf_dcerpc_dcerpc_rts_cmds_val0x7_Empty,
4411 { "Empty", "dcerpc.dcerpc_rts_cmds_val0x7.Empty", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4412 { &hf_dcerpc_dcerpc_bind_max_recv_frag,
4413 { "Max Recv Frag", "dcerpc.dcerpc_bind.max_recv_frag", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
4414 { &hf_dcerpc_dcerpc_fack_selack_size,
4415 { "Selack Size", "dcerpc.dcerpc_fack.selack_size", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
4416 { &hf_dcerpc_dcerpc_bind_ack_secondary_address,
4417 { "Secondary Address", "dcerpc.dcerpc_bind_ack.secondary_address", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
4418 { &hf_dcerpc_dcerpc_response__pad,
4419 { " Pad", "dcerpc.dcerpc_response._pad", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4420 { &hf_dcerpc_dcerpc_rts_cmd_PingTrafficSentNotify_PingTrafficSent,
4421 { "Pingtrafficsent", "dcerpc.dcerpc_rts_cmd_PingTrafficSentNotify.PingTrafficSent", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4422 { &hf_dcerpc_dcerpc_payload_valDCERPC_PKT_FAULT_fault,
4423 { "Fault", "dcerpc.dcerpc_payload_valDCERPC_PKT_FAULT.fault", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4424 { &hf_dcerpc_dcerpc_rts_NumberOfCommands,
4425 { "Numberofcommands", "dcerpc.dcerpc_rts.NumberOfCommands", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
4426 { &hf_dcerpc_dcerpc_rts_cmd_ClientKeepalive_ClientKeepalive,
4427 { "Clientkeepalive", "dcerpc.dcerpc_rts_cmd_ClientKeepalive.ClientKeepalive", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4428 { &hf_dcerpc_ncadg_packet_server_boot,
4429 { "Server Boot", "dcerpc.ncadg_packet.server_boot", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4430 { &hf_dcerpc_ncacn_packet_rpc_vers_minor,
4431 { "Rpc Vers Minor", "dcerpc.ncacn_packet.rpc_vers_minor", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
4432 { &hf_dcerpc_dcerpc_rts_Commands,
4433 { "Commands", "dcerpc.dcerpc_rts.Commands", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4434 { &hf_dcerpc_dcerpc_fault__pad,
4435 { " Pad", "dcerpc.dcerpc_fault._pad", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4436 { &hf_dcerpc_dcerpc_cancel_ack_id,
4437 { "Id", "dcerpc.dcerpc_cancel_ack.id", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4438 { &hf_dcerpc_dcerpc_rts_cmd_Destination_ForwardDestination,
4439 { "Forwarddestination", "dcerpc.dcerpc_rts_cmd_Destination.ForwardDestination", FT_UINT32, BASE_DEC, VALS(dcerpc_ForwardDestination_vals), 0, NULL, HFILL }},
4440 { &hf_dcerpc_dcerpc_fack_selack,
4441 { "Selack", "dcerpc.dcerpc_fack.selack", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4442 { &hf_dcerpc_dcerpc_payload_valDCERPC_PKT_PING_ping,
4443 { "Ping", "dcerpc.dcerpc_payload_valDCERPC_PKT_PING.ping", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4444 { &hf_dcerpc_dcerpc_payload_valDCERPC_PKT_RESPONSE_response,
4445 { "Response", "dcerpc.dcerpc_payload_valDCERPC_PKT_RESPONSE.response", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4446 { &hf_dcerpc_dcerpc_rts_flags_RTS_FLAG_EOF,
4447 { "Rts Flag Eof", "dcerpc.dcerpc_rts_flags.RTS_FLAG_EOF", FT_BOOLEAN, 16, TFS(&dcerpc_rts_flags_RTS_FLAG_EOF_tfs), ( 0x0020 ), NULL, HFILL }},
4448 { &hf_dcerpc_dcerpc_rts_cmds_val0xD_Destination,
4449 { "Destination", "dcerpc.dcerpc_rts_cmds_val0xD.Destination", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4450 { &hf_dcerpc_ClientAddress_Padding,
4451 { "Padding", "dcerpc.ClientAddress.Padding", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
4452 { &hf_dcerpc_dcerpc_bind_assoc_group_id,
4453 { "Assoc Group Id", "dcerpc.dcerpc_bind.assoc_group_id", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4454 { &hf_dcerpc_dcerpc_fault_cancel_count,
4455 { "Cancel Count", "dcerpc.dcerpc_fault.cancel_count", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
4456 { &hf_dcerpc_dcerpc_response_alloc_hint,
4457 { "Alloc Hint", "dcerpc.dcerpc_response.alloc_hint", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4458 { &hf_dcerpc_dcerpc_fack_window_size,
4459 { "Window Size", "dcerpc.dcerpc_fack.window_size", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
4460 { &hf_dcerpc_dcerpc_auth_auth_pad_length,
4461 { "Auth Pad Length", "dcerpc.dcerpc_auth.auth_pad_length", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
4462 { &hf_dcerpc_ncadg_packet_serial_low,
4463 { "Serial Low", "dcerpc.ncadg_packet.serial_low", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
4464 { &hf_dcerpc_dcerpc_payload_valDCERPC_PKT_NOCALL_nocall,
4465 { "Nocall", "dcerpc.dcerpc_payload_valDCERPC_PKT_NOCALL.nocall", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4466 { &hf_dcerpc_ncadg_packet_opnum,
4467 { "Opnum", "dcerpc.ncadg_packet.opnum", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
4468 { &hf_dcerpc_dcerpc_response_stub_and_verifier,
4469 { "Stub And Verifier", "dcerpc.dcerpc_response.stub_and_verifier", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4470 { &hf_dcerpc_FlowControlAcknowledgment_BytesReceived,
4471 { "Bytesreceived", "dcerpc.FlowControlAcknowledgment.BytesReceived", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4472 { &hf_dcerpc_dcerpc_auth_auth_type,
4473 { "Auth Type", "dcerpc.dcerpc_auth.auth_type", FT_UINT8, BASE_DEC, VALS(dcerpc_dcerpc_AuthType_vals), 0, NULL, HFILL }},
4474 { &hf_dcerpc_dcerpc_payload_valDCERPC_PKT_ACK_ack,
4475 { "Ack", "dcerpc.dcerpc_payload_valDCERPC_PKT_ACK.ack", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4476 { &hf_dcerpc_dcerpc_request_opnum,
4477 { "Opnum", "dcerpc.dcerpc_request.opnum", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
4478 { &hf_dcerpc_ncadg_packet_seq_num,
4479 { "Seq Num", "dcerpc.ncadg_packet.seq_num", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4480 { &hf_dcerpc_dcerpc_cancel_ack_version,
4481 { "Version", "dcerpc.dcerpc_cancel_ack.version", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4482 { &hf_dcerpc_dcerpc_rts_cmds_val0x9_NegativeANCE,
4483 { "Negativeance", "dcerpc.dcerpc_rts_cmds_val0x9.NegativeANCE", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4484 { &hf_dcerpc_dcerpc_rts_flags_RTS_FLAG_IN_CHANNEL,
4485 { "Rts Flag In Channel", "dcerpc.dcerpc_rts_flags.RTS_FLAG_IN_CHANNEL", FT_BOOLEAN, 16, TFS(&dcerpc_rts_flags_RTS_FLAG_IN_CHANNEL_tfs), ( 0x0008 ), NULL, HFILL }},
4486 { &hf_dcerpc_dcerpc_bind_ack_num_results,
4487 { "Num Results", "dcerpc.dcerpc_bind_ack.num_results", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
4488 { &hf_dcerpc_FlowControlAcknowledgment_ChannelCookie,
4489 { "Channelcookie", "dcerpc.FlowControlAcknowledgment.ChannelCookie", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4490 { &hf_dcerpc_dcerpc_rts_cmd_AssociationGroupId_AssociationGroupId,
4491 { "Associationgroupid", "dcerpc.dcerpc_rts_cmd_AssociationGroupId.AssociationGroupId", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4492 { &hf_dcerpc_dcerpc_payload_valDCERPC_PKT_RTS_rts,
4493 { "Rts", "dcerpc.dcerpc_payload_valDCERPC_PKT_RTS.rts", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4494 { &hf_dcerpc_dcerpc_co_cancel__pad,
4495 { " Pad", "dcerpc.dcerpc_co_cancel._pad", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4496 { &hf_dcerpc_dcerpc_request__pad,
4497 { " Pad", "dcerpc.dcerpc_request._pad", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4498 { &hf_dcerpc_dcerpc_auth_credentials,
4499 { "Credentials", "dcerpc.dcerpc_auth.credentials", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4500 { &hf_dcerpc_dcerpc_rts_flags_RTS_FLAG_OTHER_CMD,
4501 { "Rts Flag Other Cmd", "dcerpc.dcerpc_rts_flags.RTS_FLAG_OTHER_CMD", FT_BOOLEAN, 16, TFS(&dcerpc_rts_flags_RTS_FLAG_OTHER_CMD_tfs), ( 0x0002 ), NULL, HFILL }},
4502 { &hf_dcerpc_dcerpc_bind_nak_versions_versions,
4503 { "Versions", "dcerpc.dcerpc_bind_nak_versions.versions", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4504 { &hf_dcerpc_ncadg_packet_activity,
4505 { "Activity", "dcerpc.ncadg_packet.activity", FT_GUID, BASE_NONE, NULL, 0, NULL, HFILL }},
4506 { &hf_dcerpc_dcerpc_payload_valDCERPC_PKT_CL_CANCEL_cl_cancel,
4507 { "Cl Cancel", "dcerpc.dcerpc_payload_valDCERPC_PKT_CL_CANCEL.cl_cancel", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4508 { &hf_dcerpc_dcerpc_rts_cmd_ChannelLifetime_ChannelLifetime,
4509 { "Channellifetime", "dcerpc.dcerpc_rts_cmd_ChannelLifetime.ChannelLifetime", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4510 { &hf_dcerpc_ncadg_packet_auth_proto,
4511 { "Auth Proto", "dcerpc.ncadg_packet.auth_proto", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
4512 { &hf_dcerpc_dcerpc_bind_ack_assoc_group_id,
4513 { "Assoc Group Id", "dcerpc.dcerpc_bind_ack.assoc_group_id", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4514 { &hf_dcerpc_dcerpc_payload_valDCERPC_PKT_ALTER_RESP_alter_resp,
4515 { "Alter Resp", "dcerpc.dcerpc_payload_valDCERPC_PKT_ALTER_RESP.alter_resp", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4516 { &hf_dcerpc_dcerpc_fault_context_id,
4517 { "Context Id", "dcerpc.dcerpc_fault.context_id", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
4518 { &hf_dcerpc_ncacn_packet_drep,
4519 { "Drep", "dcerpc.ncacn_packet.drep", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
4520 { &hf_dcerpc_dcerpc_bind_nak_reject_reason,
4521 { "Reject Reason", "dcerpc.dcerpc_bind_nak.reject_reason", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
4522 { &hf_dcerpc_dcerpc_cancel_ack_server_is_accepting,
4523 { "Server Is Accepting", "dcerpc.dcerpc_cancel_ack.server_is_accepting", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4524 { &hf_dcerpc_dcerpc_rts_cmd_ClientAddress_ClientAddress,
4525 { "Clientaddress", "dcerpc.dcerpc_rts_cmd_ClientAddress.ClientAddress", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4526 { &hf_dcerpc_dcerpc_auth3_auth_info,
4527 { "Auth Info", "dcerpc.dcerpc_auth3.auth_info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4528 { &hf_dcerpc_dcerpc_object_valLIBNDR_FLAG_OBJECT_PRESENT_object,
4529 { "Object", "dcerpc.dcerpc_object_valLIBNDR_FLAG_OBJECT_PRESENT.object", FT_GUID, BASE_NONE, NULL, 0, NULL, HFILL }},
4530 { &hf_dcerpc_FlowControlAcknowledgment_AvailableWindow,
4531 { "Availablewindow", "dcerpc.FlowControlAcknowledgment.AvailableWindow", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4532 { &hf_dcerpc_ncacn_packet_frag_length,
4533 { "Frag Length", "dcerpc.ncacn_packet.frag_length", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
4534 { &hf_dcerpc_dcerpc_bind_ack__pad1,
4535 { " Pad1", "dcerpc.dcerpc_bind_ack._pad1", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4536 { &hf_dcerpc_dcerpc_ctx_list_num_transfer_syntaxes,
4537 { "Num Transfer Syntaxes", "dcerpc.dcerpc_ctx_list.num_transfer_syntaxes", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
4538 { &hf_dcerpc_dcerpc_bind_auth_info,
4539 { "Auth Info", "dcerpc.dcerpc_bind.auth_info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4540 { &hf_dcerpc_dcerpc_auth_auth_level,
4541 { "Auth Level", "dcerpc.dcerpc_auth.auth_level", FT_UINT8, BASE_DEC, VALS(dcerpc_dcerpc_AuthLevel_vals), 0, NULL, HFILL }},
4542 { &hf_dcerpc_dcerpc_payload_valDCERPC_PKT_WORKING_working,
4543 { "Working", "dcerpc.dcerpc_payload_valDCERPC_PKT_WORKING.working", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4544 { &hf_dcerpc_ncadg_packet_ptype,
4545 { "Ptype", "dcerpc.ncadg_packet.ptype", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
4546 { &hf_dcerpc_dcerpc_payload_valDCERPC_PKT_CO_CANCEL_co_cancel,
4547 { "Co Cancel", "dcerpc.dcerpc_payload_valDCERPC_PKT_CO_CANCEL.co_cancel", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4548 { &hf_dcerpc_ncacn_packet_ptype,
4549 { "Ptype", "dcerpc.ncacn_packet.ptype", FT_UINT8, BASE_DEC, VALS(dcerpc_dcerpc_pkt_type_vals), 0, NULL, HFILL }},
4550 { &hf_dcerpc_dcerpc_fault_status,
4551 { "Status", "dcerpc.dcerpc_fault.status", FT_UINT32, BASE_DEC, VALS(dcerpc_dcerpc_nca_status_vals), 0, NULL, HFILL }},
4552 { &hf_dcerpc_dcerpc_rts_cmds_val0xA_ANCE,
4553 { "Ance", "dcerpc.dcerpc_rts_cmds_val0xA.ANCE", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4554 { &hf_dcerpc_ncadg_packet_serial_high,
4555 { "Serial High", "dcerpc.ncadg_packet.serial_high", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
4556 { &hf_dcerpc_dcerpc_auth3__pad,
4557 { " Pad", "dcerpc.dcerpc_auth3._pad", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4558 { &hf_dcerpc_dcerpc_rts_cmd_Padding_Padding,
4559 { "Padding", "dcerpc.dcerpc_rts_cmd_Padding.Padding", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
4560 { &hf_dcerpc_ClientAddress_ClientAddress,
4561 { "Clientaddress", "dcerpc.ClientAddress.ClientAddress", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4562 { &hf_dcerpc_dcerpc_rts_cmd_Cookie_Cookie,
4563 { "Cookie", "dcerpc.dcerpc_rts_cmd_Cookie.Cookie", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4564 { &hf_dcerpc_dcerpc_payload_valDCERPC_PKT_FACK_fack,
4565 { "Fack", "dcerpc.dcerpc_payload_valDCERPC_PKT_FACK.fack", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4566 { &hf_dcerpc_dcerpc_payload_valDCERPC_PKT_REJECT_reject,
4567 { "Reject", "dcerpc.dcerpc_payload_valDCERPC_PKT_REJECT.reject", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4568 { &hf_dcerpc_dcerpc_rts_cmd_ConnectionTimeout_ConnectionTimeout,
4569 { "Connectiontimeout", "dcerpc.dcerpc_rts_cmd_ConnectionTimeout.ConnectionTimeout", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4570 { &hf_dcerpc_ncadg_packet_iface_version,
4571 { "Iface Version", "dcerpc.ncadg_packet.iface_version", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4572 { &hf_dcerpc_dcerpc_rts_flags_RTS_FLAG_ECHO,
4573 { "Rts Flag Echo", "dcerpc.dcerpc_rts_flags.RTS_FLAG_ECHO", FT_BOOLEAN, 16, TFS(&dcerpc_rts_flags_RTS_FLAG_ECHO_tfs), ( 0x0040 ), NULL, HFILL }},
4574 { &hf_dcerpc_dcerpc_rts_cmds_val0x3_Cookie,
4575 { "Cookie", "dcerpc.dcerpc_rts_cmds_val0x3.Cookie", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4576 { &hf_dcerpc_dcerpc_bind_nak_versions_ctr_valDECRPC_BIND_PROTOCOL_VERSION_NOT_SUPPORTED_v,
4577 { "V", "dcerpc.dcerpc_bind_nak_versions_ctr_valDECRPC_BIND_PROTOCOL_VERSION_NOT_SUPPORTED.v", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4578 { &hf_dcerpc_dcerpc_fack_max_tdsu,
4579 { "Max Tdsu", "dcerpc.dcerpc_fack.max_tdsu", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4580 { &hf_dcerpc_dcerpc_payload_valDCERPC_PKT_BIND_NAK_bind_nak,
4581 { "Bind Nak", "dcerpc.dcerpc_payload_valDCERPC_PKT_BIND_NAK.bind_nak", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4582 { &hf_dcerpc_dcerpc_rts_cmd_CommandType,
4583 { "Commandtype", "dcerpc.dcerpc_rts_cmd.CommandType", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4584 { &hf_dcerpc_ncacn_packet_rpc_vers,
4585 { "Rpc Vers", "dcerpc.ncacn_packet.rpc_vers", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
4586 { &hf_dcerpc_dcerpc_bind_nak_versions,
4587 { "Versions", "dcerpc.dcerpc_bind_nak.versions", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4588 { &hf_dcerpc_dcerpc_request_context_id,
4589 { "Context Id", "dcerpc.dcerpc_request.context_id", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
4590 { &hf_dcerpc_ncadg_packet_ahint,
4591 { "Ahint", "dcerpc.ncadg_packet.ahint", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
4592 { &hf_dcerpc_dcerpc_rts_flags_RTS_FLAG_OUT_CHANNEL,
4593 { "Rts Flag Out Channel", "dcerpc.dcerpc_rts_flags.RTS_FLAG_OUT_CHANNEL", FT_BOOLEAN, 16, TFS(&dcerpc_rts_flags_RTS_FLAG_OUT_CHANNEL_tfs), ( 0x0010 ), NULL, HFILL }},
4594 { &hf_dcerpc_dcerpc_bind_ack_ctx_list,
4595 { "Ctx List", "dcerpc.dcerpc_bind_ack.ctx_list", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4596 { &hf_dcerpc_dcerpc_fack_version,
4597 { "Version", "dcerpc.dcerpc_fack.version", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4598 { &hf_dcerpc_dcerpc_rts_cmd_Version_Version,
4599 { "Version", "dcerpc.dcerpc_rts_cmd_Version.Version", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4600 { &hf_dcerpc_dcerpc_rts_cmds_val0xC_AssociationGroupId,
4601 { "Associationgroupid", "dcerpc.dcerpc_rts_cmds_val0xC.AssociationGroupId", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4602 { &hf_dcerpc_dcerpc_rts_cmd_ReceiveWindowSize_ReceiveWindowSize,
4603 { "Receivewindowsize", "dcerpc.dcerpc_rts_cmd_ReceiveWindowSize.ReceiveWindowSize", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4604 { &hf_dcerpc_ncadg_packet_rpc_vers,
4605 { "Rpc Vers", "dcerpc.ncadg_packet.rpc_vers", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
4606 { &hf_dcerpc_RTSCookie_Cookie,
4607 { "Cookie", "dcerpc.RTSCookie.Cookie", FT_GUID, BASE_NONE, NULL, 0, NULL, HFILL }},
4608 { &hf_dcerpc_dcerpc_rts_Flags,
4609 { "Flags", "dcerpc.dcerpc_rts.Flags", FT_UINT16, BASE_HEX, NULL, 0, NULL, HFILL }},
4610 { &hf_dcerpc_dcerpc_payload_valDCERPC_PKT_ALTER_alter,
4611 { "Alter", "dcerpc.dcerpc_payload_valDCERPC_PKT_ALTER.alter", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4612 { &hf_dcerpc_ClientAddress_AddressType,
4613 { "Addresstype", "dcerpc.ClientAddress.AddressType", FT_UINT32, BASE_DEC, VALS(dcerpc_AddressType_vals), 0, NULL, HFILL }},
4614 { &hf_dcerpc_dcerpc_response_context_id,
4615 { "Context Id", "dcerpc.dcerpc_response.context_id", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
4616 { &hf_dcerpc_dcerpc_payload_valDCERPC_PKT_BIND_bind,
4617 { "Bind", "dcerpc.dcerpc_payload_valDCERPC_PKT_BIND.bind", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4618 { &hf_dcerpc_ncadg_packet_drep,
4619 { "Drep", "dcerpc.ncadg_packet.drep", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }},
4620 { &hf_dcerpc_ncadg_packet_len,
4621 { "Len", "dcerpc.ncadg_packet.len", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
4623 { "Operation", "dcerpc.opnum", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
4624 { &hf_dcerpc_dcerpc_fault_alloc_hint,
4625 { "Alloc Hint", "dcerpc.dcerpc_fault.alloc_hint", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
4626 { &hf_dcerpc_dcerpc_rts_flags_RTS_FLAG_NONE,
4627 { "Rts Flag None", "dcerpc.dcerpc_rts_flags.RTS_FLAG_NONE", FT_BOOLEAN, 16, TFS(&dcerpc_rts_flags_RTS_FLAG_NONE_tfs), ( 0x0000 ), NULL, HFILL }},
4628 { &hf_dcerpc_ncadg_packet_object,
4629 { "Object", "dcerpc.ncadg_packet.object", FT_GUID, BASE_NONE, NULL, 0, NULL, HFILL }},
4630 { &hf_dcerpc_dcerpc_response_cancel_count,
4631 { "Cancel Count", "dcerpc.dcerpc_response.cancel_count", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
4632 { &hf_dcerpc_dcerpc_fack__pad1,
4633 { " Pad1", "dcerpc.dcerpc_fack._pad1", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
4634 { &hf_dcerpc_dcerpc_ctx_list_abstract_syntax,
4635 { "Abstract Syntax", "dcerpc.dcerpc_ctx_list.abstract_syntax", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4636 { &hf_dcerpc_dcerpc_rts_flags_RTS_FLAG_RECYCLE_CHANNEL,
4637 { "Rts Flag Recycle Channel", "dcerpc.dcerpc_rts_flags.RTS_FLAG_RECYCLE_CHANNEL", FT_BOOLEAN, 16, TFS(&dcerpc_rts_flags_RTS_FLAG_RECYCLE_CHANNEL_tfs), ( 0x0004 ), NULL, HFILL }},
4638 { &hf_dcerpc_ncacn_packet_pfc_flags,
4639 { "Pfc Flags", "dcerpc.ncacn_packet.pfc_flags", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
4640 { &hf_dcerpc_dcerpc_object_valdefault_empty,
4641 { "Empty", "dcerpc.dcerpc_object_valdefault.empty", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4642 { &hf_dcerpc_dcerpc_payload_valDCERPC_PKT_ORPHANED_orphaned,
4643 { "Orphaned", "dcerpc.dcerpc_payload_valDCERPC_PKT_ORPHANED.orphaned", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4644 { &hf_dcerpc_dcerpc_ctx_list_transfer_syntaxes,
4645 { "Transfer Syntaxes", "dcerpc.dcerpc_ctx_list.transfer_syntaxes", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4646 { &hf_dcerpc_dcerpc_bind_ack_auth_info,
4647 { "Auth Info", "dcerpc.dcerpc_bind_ack.auth_info", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
4651 static gint *ett[] = {
4653 &ett_dcerpc_dcerpc_ctx_list,
4654 &ett_dcerpc_dcerpc_bind,
4655 &ett_dcerpc_dcerpc_empty,
4656 &ett_dcerpc_dcerpc_object,
4657 &ett_dcerpc_dcerpc_request,
4658 &ett_dcerpc_dcerpc_ack_ctx,
4659 &ett_dcerpc_dcerpc_bind_ack,
4660 &ett_dcerpc_dcerpc_bind_nak_versions,
4661 &ett_dcerpc_dcerpc_bind_nak_versions_ctr,
4662 &ett_dcerpc_dcerpc_bind_nak,
4663 &ett_dcerpc_dcerpc_response,
4664 &ett_dcerpc_dcerpc_fault,
4665 &ett_dcerpc_dcerpc_auth,
4666 &ett_dcerpc_dcerpc_auth3,
4667 &ett_dcerpc_dcerpc_orphaned,
4668 &ett_dcerpc_dcerpc_co_cancel,
4669 &ett_dcerpc_dcerpc_cl_cancel,
4670 &ett_dcerpc_dcerpc_cancel_ack,
4671 &ett_dcerpc_dcerpc_fack,
4672 &ett_dcerpc_dcerpc_ack,
4673 &ett_dcerpc_dcerpc_ping,
4674 &ett_dcerpc_dcerpc_shutdown,
4675 &ett_dcerpc_dcerpc_working,
4676 &ett_dcerpc_RTSCookie,
4677 &ett_dcerpc_ClientAddressType,
4678 &ett_dcerpc_ClientAddress,
4679 &ett_dcerpc_FlowControlAcknowledgment,
4680 &ett_dcerpc_dcerpc_rts_cmd_ReceiveWindowSize,
4681 &ett_dcerpc_dcerpc_rts_cmd_FlowControlAck,
4682 &ett_dcerpc_dcerpc_rts_cmd_ConnectionTimeout,
4683 &ett_dcerpc_dcerpc_rts_cmd_Cookie,
4684 &ett_dcerpc_dcerpc_rts_cmd_ChannelLifetime,
4685 &ett_dcerpc_dcerpc_rts_cmd_ClientKeepalive,
4686 &ett_dcerpc_dcerpc_rts_cmd_Version,
4687 &ett_dcerpc_dcerpc_rts_cmd_Empty,
4688 &ett_dcerpc_dcerpc_rts_cmd_Padding,
4689 &ett_dcerpc_dcerpc_rts_cmd_NegativeANCE,
4690 &ett_dcerpc_dcerpc_rts_cmd_ANCE,
4691 &ett_dcerpc_dcerpc_rts_cmd_ClientAddress,
4692 &ett_dcerpc_dcerpc_rts_cmd_AssociationGroupId,
4693 &ett_dcerpc_dcerpc_rts_cmd_Destination,
4694 &ett_dcerpc_dcerpc_rts_cmd_PingTrafficSentNotify,
4695 &ett_dcerpc_dcerpc_rts_cmds,
4696 &ett_dcerpc_dcerpc_rts_cmd,
4697 &ett_dcerpc_dcerpc_rts_flags,
4698 &ett_dcerpc_dcerpc_rts,
4699 &ett_dcerpc_dcerpc_payload,
4700 &ett_dcerpc_ncacn_packet,
4701 &ett_dcerpc_ncadg_packet,
4704 proto_dcerpc_dcerpc = proto_register_protocol("DCERPC (pidl)", "DCERPC", "dcerpc");
4705 proto_register_field_array(proto_dcerpc_dcerpc, hf, array_length (hf));
4706 proto_register_subtree_array(ett, array_length(ett));
4709 void proto_reg_handoff_dcerpc_dcerpc(void)
4711 dcerpc_init_uuid(proto_dcerpc_dcerpc, ett_dcerpc_dcerpc,
4712 &uuid_dcerpc_dcerpc, ver_dcerpc_dcerpc,
4713 dcerpc_dissectors, hf_dcerpc_opnum);