2 This filter was automatically generated
3 from /home/metze/devel/samba/4.0/master4-franky/librpc/idl/dfsblobs.idl and /home/metze/devel/samba/4.0/master4-franky/librpc/idl/dfsblobs.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-dfsblobs.h"
31 /* Ett declarations */
32 static gint ett_dcerpc_dfsblobs = -1;
33 static gint ett_dfsblobs_DFS_HEADER_FLAG = -1;
34 static gint ett_dfsblobs_dfs_referral_v1 = -1;
35 static gint ett_dfsblobs_dfs_referral_v2 = -1;
36 static gint ett_dfsblobs_dfs_normal_referral = -1;
37 static gint ett_dfsblobs_dfs_domain_referral = -1;
38 static gint ett_dfsblobs_dfs_referral = -1;
39 static gint ett_dfsblobs_dfs_padding = -1;
40 static gint ett_dfsblobs_dfs_referral_v3 = -1;
41 static gint ett_dfsblobs_dfs_referral_version = -1;
42 static gint ett_dfsblobs_dfs_referral_type = -1;
43 static gint ett_dfsblobs_dfs_referral_resp = -1;
44 static gint ett_dfsblobs_dfs_GetDFSReferral_in = -1;
47 /* Header field declarations */
48 static gint hf_dfsblobs_dfs_referral_version_v4 = -1;
49 static gint hf_dfsblobs_dfs_domain_referral_special_name = -1;
50 static gint hf_dfsblobs_dfs_referral_v3_ttl = -1;
51 static gint hf_dfsblobs_dfs_referral_v2_server_type = -1;
52 static gint hf_dfsblobs_dfs_referral_v1_server_type = -1;
53 static gint hf_dfsblobs_dfs_normal_referral_netw_address = -1;
54 static gint hf_dfsblobs_dfs_referral_v2_proximity = -1;
55 static gint hf_dfsblobs_dfs_referral_v2_size = -1;
56 static gint hf_dfsblobs_dfs_referral_v3_server_type = -1;
57 static gint hf_dfsblobs_DFS_HEADER_FLAG_DFS_HEADER_FLAG_REFERAL_SVR = -1;
58 static gint hf_dfsblobs_dfs_referral_resp_path_consumed = -1;
59 static gint hf_dfsblobs_dfs_referral_version_v3 = -1;
60 static gint hf_dfsblobs_dfs_referral_v3_referrals = -1;
61 static gint hf_dfsblobs_dfs_referral_v1_entry_flags = -1;
62 static gint hf_dfsblobs_dfs_referral_resp_referral_entries = -1;
63 static gint hf_dfsblobs_dfs_referral_type_referral = -1;
64 static gint hf_dfsblobs_dfs_referral_r1 = -1;
65 static gint hf_dfsblobs_dfs_referral_version_v1 = -1;
66 static gint hf_dfsblobs_dfs_GetDFSReferral_req = -1;
67 static gint hf_dfsblobs_dfs_referral_v1_share_name = -1;
68 static gint hf_dfsblobs_dfs_referral_v2_netw_address = -1;
69 static gint hf_dfsblobs_dfs_domain_referral_expanded_names_ = -1;
70 static gint hf_dfsblobs_dfs_referral_type_version = -1;
71 static gint hf_dfsblobs_dfs_domain_referral_nb_expanded_names = -1;
72 static gint hf_dfsblobs_opnum = -1;
73 static gint hf_dfsblobs_dfs_GetDFSReferral_in_max_referral_level = -1;
74 static gint hf_dfsblobs_dfs_referral_v2_DFS_alt_path = -1;
75 static gint hf_dfsblobs_dfs_domain_referral_expanded_names = -1;
76 static gint hf_dfsblobs_dfs_referral_r2 = -1;
77 static gint hf_dfsblobs_dfs_referral_v3_service_site_guid = -1;
78 static gint hf_dfsblobs_dfs_GetDFSReferral_in_servername = -1;
79 static gint hf_dfsblobs_dfs_referral_resp_nb_referrals = -1;
80 static gint hf_dfsblobs_dfs_normal_referral_DFS_alt_path = -1;
81 static gint hf_dfsblobs_DFS_HEADER_FLAG_DFS_HEADER_FLAG_STORAGE_SVR = -1;
82 static gint hf_dfsblobs_dfs_referral_v1_size = -1;
83 static gint hf_dfsblobs_dfs_padding_value = -1;
84 static gint hf_dfsblobs_dfs_referral_resp_header_flags = -1;
85 static gint hf_dfsblobs_dfs_normal_referral_DFS_path = -1;
86 static gint hf_dfsblobs_dfs_referral_v3_entry_flags = -1;
87 static gint hf_dfsblobs_dfs_referral_v3_size = -1;
88 static gint hf_dfsblobs_dfs_GetDFSReferral_resp = -1;
89 static gint hf_dfsblobs_dfs_referral_v2_entry_flags = -1;
90 static gint hf_dfsblobs_dfs_referral_version_v2 = -1;
91 static gint hf_dfsblobs_dfs_referral_v2_ttl = -1;
92 static gint hf_dfsblobs_dfs_referral_v2_DFS_path = -1;
93 static gint hf_dfsblobs_DFS_HEADER_FLAG_DFS_HEADER_FLAG_TARGET_BCK = -1;
95 static gint proto_dcerpc_dfsblobs = -1;
96 /* Version information */
99 static e_uuid_t uuid_dcerpc_dfsblobs = {
100 0x12345778, 0x1234, 0xabcd,
101 { 0x00, 0x01, 0x00, 0x00, 0x00, 0x03, 0x", 0x }
103 static guint16 ver_dcerpc_dfsblobs = 0;
105 static const true_false_string DFS_HEADER_FLAG_DFS_HEADER_FLAG_REFERAL_SVR_tfs = {
106 "DFS_HEADER_FLAG_REFERAL_SVR is SET",
107 "DFS_HEADER_FLAG_REFERAL_SVR is NOT SET",
109 static const true_false_string DFS_HEADER_FLAG_DFS_HEADER_FLAG_STORAGE_SVR_tfs = {
110 "DFS_HEADER_FLAG_STORAGE_SVR is SET",
111 "DFS_HEADER_FLAG_STORAGE_SVR is NOT SET",
113 static const true_false_string DFS_HEADER_FLAG_DFS_HEADER_FLAG_TARGET_BCK_tfs = {
114 "DFS_HEADER_FLAG_TARGET_BCK is SET",
115 "DFS_HEADER_FLAG_TARGET_BCK is NOT SET",
117 const value_string dfsblobs_DFS_SERVER_TYPE_vals[] = {
118 { DFS_SERVER_NON_ROOT, "DFS_SERVER_NON_ROOT" },
119 { DFS_SERVER_ROOT, "DFS_SERVER_ROOT" },
122 const value_string dfsblobs_DFS_FLAGS_REFERRAL_vals[] = {
123 { DFS_FLAG_REFERRAL_DOMAIN_RESP, "DFS_FLAG_REFERRAL_DOMAIN_RESP" },
124 { DFS_FLAG_REFERRAL_FIRST_TARGET_SET, "DFS_FLAG_REFERRAL_FIRST_TARGET_SET" },
127 static int dfsblobs_dissect_element_dfs_referral_v1_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
128 static int dfsblobs_dissect_element_dfs_referral_v1_server_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
129 static int dfsblobs_dissect_element_dfs_referral_v1_entry_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
130 static int dfsblobs_dissect_element_dfs_referral_v1_share_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
131 static int dfsblobs_dissect_element_dfs_referral_v1_share_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
132 static int dfsblobs_dissect_element_dfs_referral_v2_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
133 static int dfsblobs_dissect_element_dfs_referral_v2_server_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
134 static int dfsblobs_dissect_element_dfs_referral_v2_entry_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
135 static int dfsblobs_dissect_element_dfs_referral_v2_proximity(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
136 static int dfsblobs_dissect_element_dfs_referral_v2_ttl(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
137 static int dfsblobs_dissect_element_dfs_referral_v2_DFS_path(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
138 static int dfsblobs_dissect_element_dfs_referral_v2_DFS_path_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
139 static int dfsblobs_dissect_element_dfs_referral_v2_DFS_alt_path(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
140 static int dfsblobs_dissect_element_dfs_referral_v2_DFS_alt_path_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
141 static int dfsblobs_dissect_element_dfs_referral_v2_netw_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
142 static int dfsblobs_dissect_element_dfs_referral_v2_netw_address_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
143 static int dfsblobs_dissect_element_dfs_normal_referral_DFS_path(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
144 static int dfsblobs_dissect_element_dfs_normal_referral_DFS_path_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
145 static int dfsblobs_dissect_element_dfs_normal_referral_DFS_alt_path(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
146 static int dfsblobs_dissect_element_dfs_normal_referral_DFS_alt_path_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
147 static int dfsblobs_dissect_element_dfs_normal_referral_netw_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
148 static int dfsblobs_dissect_element_dfs_normal_referral_netw_address_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
149 static int dfsblobs_dissect_element_dfs_domain_referral_special_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
150 static int dfsblobs_dissect_element_dfs_domain_referral_special_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
151 static int dfsblobs_dissect_element_dfs_domain_referral_nb_expanded_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
152 static int dfsblobs_dissect_element_dfs_domain_referral_expanded_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
153 static int dfsblobs_dissect_element_dfs_domain_referral_expanded_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
154 static int dfsblobs_dissect_element_dfs_domain_referral_expanded_names__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
155 static int dfsblobs_dissect_element_dfs_referral_r1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
156 static int dfsblobs_dissect_element_dfs_referral_r2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
157 static int dfsblobs_dissect_element_dfs_padding_value(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
158 static int dfsblobs_dissect_element_dfs_padding_value_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
159 static int dfsblobs_dissect_element_dfs_referral_v3_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, g *size);
160 static int dfsblobs_dissect_element_dfs_referral_v3_server_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
161 static int dfsblobs_dissect_element_dfs_referral_v3_entry_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint16 *entry_flags);
162 static int dfsblobs_dissect_element_dfs_referral_v3_ttl(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
163 static int dfsblobs_dissect_element_dfs_referral_v3_referrals(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, *);
164 static int dfsblobs_dissect_element_dfs_referral_v3_service_site_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, *);
165 static int dfsblobs_dissect_element_dfs_referral_version_v1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
166 static int dfsblobs_dissect_element_dfs_referral_version_v2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
167 static int dfsblobs_dissect_element_dfs_referral_version_v3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
168 static int dfsblobs_dissect_element_dfs_referral_version_v4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
169 static int dfsblobs_dissect_element_dfs_referral_type_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, g *version);
170 static int dfsblobs_dissect_element_dfs_referral_type_referral(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, g *version);
171 static int dfsblobs_dissect_element_dfs_referral_resp_path_consumed(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
172 static int dfsblobs_dissect_element_dfs_referral_resp_nb_referrals(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
173 static int dfsblobs_dissect_element_dfs_referral_resp_header_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
174 static int dfsblobs_dissect_element_dfs_referral_resp_referral_entries(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
175 static int dfsblobs_dissect_element_dfs_referral_resp_referral_entries_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
176 static int dfsblobs_dissect_element_dfs_GetDFSReferral_in_max_referral_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
177 static int dfsblobs_dissect_element_dfs_GetDFSReferral_in_servername(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
178 static int dfsblobs_dissect_element_dfs_GetDFSReferral_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
179 static int dfsblobs_dissect_element_dfs_GetDFSReferral_resp(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
180 static int dfsblobs_dissect_element_dfs_GetDFSReferral_resp_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_);
184 /* IDL: DFS_HEADER_FLAG_REFERAL_SVR = 0x00000001 , */
185 /* IDL: DFS_HEADER_FLAG_STORAGE_SVR = 0x00000002 , */
186 /* IDL: DFS_HEADER_FLAG_TARGET_BCK = 0x00000004 , */
190 dfsblobs_dissect_bitmap_DFS_HEADER_FLAG(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_)
192 proto_item *item = NULL;
193 proto_tree *tree = NULL;
199 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, 4, DREP_ENC_INTEGER(drep));
200 tree = proto_item_add_subtree(item,ett_dfsblobs_DFS_HEADER_FLAG);
203 offset = dissect_ndr_uint32(tvb, offset, pinfo, NULL, drep, -1, &flags);
204 proto_item_append_text(item, ": ");
207 proto_item_append_text(item, "(No values set)");
209 proto_tree_add_boolean(tree, hf_dfsblobs_DFS_HEADER_FLAG_DFS_HEADER_FLAG_REFERAL_SVR, tvb, offset-4, 4, flags);
210 if (flags&( 0x00000001 )){
211 proto_item_append_text(item, "DFS_HEADER_FLAG_REFERAL_SVR");
212 if (flags & (~( 0x00000001 )))
213 proto_item_append_text(item, ", ");
215 flags&=(~( 0x00000001 ));
217 proto_tree_add_boolean(tree, hf_dfsblobs_DFS_HEADER_FLAG_DFS_HEADER_FLAG_STORAGE_SVR, tvb, offset-4, 4, flags);
218 if (flags&( 0x00000002 )){
219 proto_item_append_text(item, "DFS_HEADER_FLAG_STORAGE_SVR");
220 if (flags & (~( 0x00000002 )))
221 proto_item_append_text(item, ", ");
223 flags&=(~( 0x00000002 ));
225 proto_tree_add_boolean(tree, hf_dfsblobs_DFS_HEADER_FLAG_DFS_HEADER_FLAG_TARGET_BCK, tvb, offset-4, 4, flags);
226 if (flags&( 0x00000004 )){
227 proto_item_append_text(item, "DFS_HEADER_FLAG_TARGET_BCK");
228 if (flags & (~( 0x00000004 )))
229 proto_item_append_text(item, ", ");
231 flags&=(~( 0x00000004 ));
234 proto_item_append_text(item, "Unknown bitmap value 0x%x", flags);
242 /* IDL: DFS_SERVER_NON_ROOT=0x0000, */
243 /* IDL: DFS_SERVER_ROOT=0x0001, */
247 dfsblobs_dissect_enum_DFS_SERVER_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_)
251 parameter=(guint16)*param;
253 offset = dissect_ndr_uint16(tvb, offset, pinfo, tree, drep, hf_index, ¶meter);
255 *param=(guint32)parameter;
262 /* IDL: DFS_FLAG_REFERRAL_DOMAIN_RESP=0x0002, */
263 /* IDL: DFS_FLAG_REFERRAL_FIRST_TARGET_SET=0x0004, */
267 dfsblobs_dissect_enum_DFS_FLAGS_REFERRAL(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_)
271 parameter=(guint16)*param;
273 offset = dissect_ndr_uint16(tvb, offset, pinfo, tree, drep, hf_index, ¶meter);
275 *param=(guint32)parameter;
282 /* IDL: uint16 size; */
283 /* IDL: uint16 server_type; */
284 /* IDL: uint16 entry_flags; */
285 /* IDL: [unique(1)] [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] string *share_name; */
289 dfsblobs_dissect_element_dfs_referral_v1_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
291 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_referral_v1_size, 0);
297 dfsblobs_dissect_element_dfs_referral_v1_server_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
299 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_referral_v1_server_type, 0);
305 dfsblobs_dissect_element_dfs_referral_v1_entry_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
307 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_referral_v1_entry_flags, 0);
313 dfsblobs_dissect_element_dfs_referral_v1_share_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
315 offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, dfsblobs_dissect_element_dfs_referral_v1_share_name_, NDR_POINTER_UNIQUE, "Pointer to Share Name (string)",hf_dfsblobs_dfs_referral_v1_share_name);
321 dfsblobs_dissect_element_dfs_referral_v1_share_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
323 offset = dissect_null_term_wstring(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_referral_v1_share_name , 0);
329 dfsblobs_dissect_struct_dfs_referral_v1(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_)
331 proto_item *item = NULL;
332 proto_tree *tree = NULL;
333 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
341 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
342 tree = proto_item_add_subtree(item, ett_dfsblobs_dfs_referral_v1);
345 offset = dfsblobs_dissect_element_dfs_referral_v1_size(tvb, offset, pinfo, tree, drep);
347 offset = dfsblobs_dissect_element_dfs_referral_v1_server_type(tvb, offset, pinfo, tree, drep);
349 offset = dfsblobs_dissect_element_dfs_referral_v1_entry_flags(tvb, offset, pinfo, tree, drep);
351 offset = dfsblobs_dissect_element_dfs_referral_v1_share_name(tvb, offset, pinfo, tree, drep);
354 proto_item_set_len(item, offset-old_offset);
357 if (di->call_data->flags & DCERPC_IS_NDR64) {
366 /* IDL: uint16 size; */
367 /* IDL: DFS_SERVER_TYPE server_type; */
368 /* IDL: DFS_FLAGS_REFERRAL entry_flags; */
369 /* IDL: uint32 proximity; */
370 /* IDL: uint32 ttl; */
371 /* IDL: [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] [relative_short(1)] string *DFS_path; */
372 /* IDL: [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] [relative_short(1)] string *DFS_alt_path; */
373 /* IDL: [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] [relative_short(1)] string *netw_address; */
377 dfsblobs_dissect_element_dfs_referral_v2_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
379 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_referral_v2_size, 0);
385 dfsblobs_dissect_element_dfs_referral_v2_server_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
387 offset = dfsblobs_dissect_enum_DFS_SERVER_TYPE(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_referral_v2_server_type, 0);
393 dfsblobs_dissect_element_dfs_referral_v2_entry_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
395 offset = dfsblobs_dissect_enum_DFS_FLAGS_REFERRAL(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_referral_v2_entry_flags, 0);
401 dfsblobs_dissect_element_dfs_referral_v2_proximity(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
403 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_referral_v2_proximity, 0);
409 dfsblobs_dissect_element_dfs_referral_v2_ttl(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
411 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_referral_v2_ttl, 0);
417 dfsblobs_dissect_element_dfs_referral_v2_DFS_path(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
419 offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, dfsblobs_dissect_element_dfs_referral_v2_DFS_path_, , "Pointer to Dfs Path (string)",hf_dfsblobs_dfs_referral_v2_DFS_path);
425 dfsblobs_dissect_element_dfs_referral_v2_DFS_path_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
427 offset = dissect_null_term_wstring(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_referral_v2_DFS_path , 0);
433 dfsblobs_dissect_element_dfs_referral_v2_DFS_alt_path(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
435 offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, dfsblobs_dissect_element_dfs_referral_v2_DFS_alt_path_, , "Pointer to Dfs Alt Path (string)",hf_dfsblobs_dfs_referral_v2_DFS_alt_path);
441 dfsblobs_dissect_element_dfs_referral_v2_DFS_alt_path_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
443 offset = dissect_null_term_wstring(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_referral_v2_DFS_alt_path , 0);
449 dfsblobs_dissect_element_dfs_referral_v2_netw_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
451 offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, dfsblobs_dissect_element_dfs_referral_v2_netw_address_, , "Pointer to Netw Address (string)",hf_dfsblobs_dfs_referral_v2_netw_address);
457 dfsblobs_dissect_element_dfs_referral_v2_netw_address_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
459 offset = dissect_null_term_wstring(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_referral_v2_netw_address , 0);
465 dfsblobs_dissect_struct_dfs_referral_v2(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_)
467 proto_item *item = NULL;
468 proto_tree *tree = NULL;
469 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
477 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
478 tree = proto_item_add_subtree(item, ett_dfsblobs_dfs_referral_v2);
481 offset = dfsblobs_dissect_element_dfs_referral_v2_size(tvb, offset, pinfo, tree, drep);
483 offset = dfsblobs_dissect_element_dfs_referral_v2_server_type(tvb, offset, pinfo, tree, drep);
485 offset = dfsblobs_dissect_element_dfs_referral_v2_entry_flags(tvb, offset, pinfo, tree, drep);
487 offset = dfsblobs_dissect_element_dfs_referral_v2_proximity(tvb, offset, pinfo, tree, drep);
489 offset = dfsblobs_dissect_element_dfs_referral_v2_ttl(tvb, offset, pinfo, tree, drep);
491 offset = dfsblobs_dissect_element_dfs_referral_v2_DFS_path(tvb, offset, pinfo, tree, drep);
493 offset = dfsblobs_dissect_element_dfs_referral_v2_DFS_alt_path(tvb, offset, pinfo, tree, drep);
495 offset = dfsblobs_dissect_element_dfs_referral_v2_netw_address(tvb, offset, pinfo, tree, drep);
498 proto_item_set_len(item, offset-old_offset);
501 if (di->call_data->flags & DCERPC_IS_NDR64) {
510 /* IDL: [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] [relative_short(1)] string *DFS_path; */
511 /* IDL: [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] [relative_short(1)] string *DFS_alt_path; */
512 /* IDL: [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] [relative_short(1)] string *netw_address; */
516 dfsblobs_dissect_element_dfs_normal_referral_DFS_path(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
518 offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, dfsblobs_dissect_element_dfs_normal_referral_DFS_path_, , "Pointer to Dfs Path (string)",hf_dfsblobs_dfs_normal_referral_DFS_path);
524 dfsblobs_dissect_element_dfs_normal_referral_DFS_path_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
526 offset = dissect_null_term_wstring(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_normal_referral_DFS_path , 0);
532 dfsblobs_dissect_element_dfs_normal_referral_DFS_alt_path(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
534 offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, dfsblobs_dissect_element_dfs_normal_referral_DFS_alt_path_, , "Pointer to Dfs Alt Path (string)",hf_dfsblobs_dfs_normal_referral_DFS_alt_path);
540 dfsblobs_dissect_element_dfs_normal_referral_DFS_alt_path_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
542 offset = dissect_null_term_wstring(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_normal_referral_DFS_alt_path , 0);
548 dfsblobs_dissect_element_dfs_normal_referral_netw_address(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
550 offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, dfsblobs_dissect_element_dfs_normal_referral_netw_address_, , "Pointer to Netw Address (string)",hf_dfsblobs_dfs_normal_referral_netw_address);
556 dfsblobs_dissect_element_dfs_normal_referral_netw_address_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
558 offset = dissect_null_term_wstring(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_normal_referral_netw_address , 0);
564 dfsblobs_dissect_struct_dfs_normal_referral(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_)
566 proto_item *item = NULL;
567 proto_tree *tree = NULL;
568 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
576 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
577 tree = proto_item_add_subtree(item, ett_dfsblobs_dfs_normal_referral);
580 offset = dfsblobs_dissect_element_dfs_normal_referral_DFS_path(tvb, offset, pinfo, tree, drep);
582 offset = dfsblobs_dissect_element_dfs_normal_referral_DFS_alt_path(tvb, offset, pinfo, tree, drep);
584 offset = dfsblobs_dissect_element_dfs_normal_referral_netw_address(tvb, offset, pinfo, tree, drep);
587 proto_item_set_len(item, offset-old_offset);
590 if (di->call_data->flags & DCERPC_IS_NDR64) {
599 /* IDL: [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] [relative_short(1)] string *special_name; */
600 /* IDL: uint16 nb_expanded_names; */
601 /* IDL: [subcontext(0)] [flag(LIBNDR_FLAG_REMAINING|LIBNDR_FLAG_STR_NULLTERM)] [relative_short(1)] string_array *expanded_names; */
605 dfsblobs_dissect_element_dfs_domain_referral_special_name(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
607 offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, dfsblobs_dissect_element_dfs_domain_referral_special_name_, , "Pointer to Special Name (string)",hf_dfsblobs_dfs_domain_referral_special_name);
613 dfsblobs_dissect_element_dfs_domain_referral_special_name_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
615 offset = dissect_null_term_wstring(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_domain_referral_special_name , 0);
621 dfsblobs_dissect_element_dfs_domain_referral_nb_expanded_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
623 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_domain_referral_nb_expanded_names, 0);
629 dfsblobs_dissect_element_dfs_domain_referral_expanded_names(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
631 offset = dissect_ndr_embedded_pointer(tvb, offset, pinfo, tree, drep, dfsblobs_dissect_element_dfs_domain_referral_expanded_names_, , "Pointer to Expanded Names (string_array)",hf_dfsblobs_dfs_domain_referral_expanded_names);
637 dfsblobs_dissect_element_dfs_domain_referral_expanded_names_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
639 dcerpc_info *di = (dcerpc_info*)pinfo->private_data;
641 int conformant = di->conformant_run;
645 guint32 saved_flags = di->call_data->flags;
646 offset = dissect_ndr_uint0(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_domain_referral_expanded_names_, &size);
647 di->call_data->flags &= ~DCERPC_IS_NDR64;
648 subtvb = tvb_new_subset(tvb, offset, size, -1);
649 dfsblobs_dissect_element_dfs_domain_referral_expanded_names__(subtvb, 0, pinfo, tree, drep);
651 di->call_data->flags = saved_flags;
658 dfsblobs_dissect_element_dfs_domain_referral_expanded_names__(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
660 offset = dfsblobs_dissect_struct_string_array(tvb,offset,pinfo,tree,drep,hf_dfsblobs_dfs_domain_referral_expanded_names,0);
666 dfsblobs_dissect_struct_dfs_domain_referral(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_)
668 proto_item *item = NULL;
669 proto_tree *tree = NULL;
670 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
678 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
679 tree = proto_item_add_subtree(item, ett_dfsblobs_dfs_domain_referral);
682 offset = dfsblobs_dissect_element_dfs_domain_referral_special_name(tvb, offset, pinfo, tree, drep);
684 offset = dfsblobs_dissect_element_dfs_domain_referral_nb_expanded_names(tvb, offset, pinfo, tree, drep);
686 offset = dfsblobs_dissect_element_dfs_domain_referral_expanded_names(tvb, offset, pinfo, tree, drep);
689 proto_item_set_len(item, offset-old_offset);
692 if (di->call_data->flags & DCERPC_IS_NDR64) {
700 /* IDL: [nodiscriminant(1)] union { */
701 /* IDL: [case(0)] [case(0)] dfs_normal_referral r1; */
702 /* IDL: [case(2)] [case(2)] dfs_domain_referral r2; */
703 /* IDL: [default] ; */
707 dfsblobs_dissect_element_dfs_referral_r1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
709 offset = dfsblobs_dissect_struct_dfs_normal_referral(tvb,offset,pinfo,tree,drep,hf_dfsblobs_dfs_referral_r1,0);
715 dfsblobs_dissect_element_dfs_referral_r2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
717 offset = dfsblobs_dissect_struct_dfs_domain_referral(tvb,offset,pinfo,tree,drep,hf_dfsblobs_dfs_referral_r2,0);
723 dfsblobs_dissect_dfs_referral(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_)
725 proto_item *item = NULL;
726 proto_tree *tree = NULL;
728 guint32 level = param;
732 item = proto_tree_add_text(parent_tree, tvb, offset, -1, "dfs_referral");
733 tree = proto_item_add_subtree(item, ett_dfsblobs_dfs_referral);
738 offset = dfsblobs_dissect_element_dfs_referral_r1(tvb, offset, pinfo, tree, drep);
742 offset = dfsblobs_dissect_element_dfs_referral_r2(tvb, offset, pinfo, tree, drep);
748 proto_item_set_len(item, offset-old_offset);
754 /* IDL: [nodiscriminant(1)] union { */
755 /* IDL: [case(16)] [case(16)] uint8 value[16]; */
756 /* IDL: [default] ; */
760 dfsblobs_dissect_element_dfs_padding_value(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
763 for (i = 0; i < 16; i++)
764 offset = dfsblobs_dissect_element_dfs_padding_value_(tvb, offset, pinfo, tree, drep);
770 dfsblobs_dissect_element_dfs_padding_value_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
772 offset = PIDL_dissect_uint8(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_padding_value, 0);
778 dfsblobs_dissect_dfs_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_)
780 proto_item *item = NULL;
781 proto_tree *tree = NULL;
783 guint32 level = param;
787 item = proto_tree_add_text(parent_tree, tvb, offset, -1, "dfs_padding");
788 tree = proto_item_add_subtree(item, ett_dfsblobs_dfs_padding);
793 offset = dfsblobs_dissect_element_dfs_padding_value(tvb, offset, pinfo, tree, drep);
799 proto_item_set_len(item, offset-old_offset);
806 /* IDL: uint16 size; */
807 /* IDL: DFS_SERVER_TYPE server_type; */
808 /* IDL: DFS_FLAGS_REFERRAL entry_flags; */
809 /* IDL: uint32 ttl; */
810 /* IDL: [switch_is(entry_flags&DFS_FLAG_REFERRAL_DOMAIN_RESP)] dfs_referral referrals; */
811 /* IDL: [switch_is(size-18)] dfs_padding service_site_guid; */
815 dfsblobs_dissect_element_dfs_referral_v3_size(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, g *size)
817 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_referral_v3_size, size);
823 dfsblobs_dissect_element_dfs_referral_v3_server_type(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
825 offset = dfsblobs_dissect_enum_DFS_SERVER_TYPE(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_referral_v3_server_type, 0);
831 dfsblobs_dissect_element_dfs_referral_v3_entry_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, guint16 *entry_flags)
833 offset = dfsblobs_dissect_enum_DFS_FLAGS_REFERRAL(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_referral_v3_entry_flags, entry_flags);
839 dfsblobs_dissect_element_dfs_referral_v3_ttl(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
841 offset = PIDL_dissect_uint32(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_referral_v3_ttl, 0);
847 dfsblobs_dissect_element_dfs_referral_v3_referrals(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, *)
849 offset = dfsblobs_dissect_dfs_referral(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_referral_v3_referrals, *);
855 dfsblobs_dissect_element_dfs_referral_v3_service_site_guid(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, *)
857 offset = dfsblobs_dissect_dfs_padding(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_referral_v3_service_site_guid, *);
863 dfsblobs_dissect_struct_dfs_referral_v3(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_)
867 proto_item *item = NULL;
868 proto_tree *tree = NULL;
869 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
876 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
877 tree = proto_item_add_subtree(item, ett_dfsblobs_dfs_referral_v3);
880 offset = dfsblobs_dissect_element_dfs_referral_v3_size(tvb, offset, pinfo, tree, drep, &size);
882 offset = dfsblobs_dissect_element_dfs_referral_v3_server_type(tvb, offset, pinfo, tree, drep);
884 offset = dfsblobs_dissect_element_dfs_referral_v3_entry_flags(tvb, offset, pinfo, tree, drep, &entry_flags);
886 offset = dfsblobs_dissect_element_dfs_referral_v3_ttl(tvb, offset, pinfo, tree, drep);
888 offset = dfsblobs_dissect_element_dfs_referral_v3_referrals(tvb, offset, pinfo, tree, drep, &);
890 offset = dfsblobs_dissect_element_dfs_referral_v3_service_site_guid(tvb, offset, pinfo, tree, drep, &);
893 proto_item_set_len(item, offset-old_offset);
896 if (di->call_data->flags & DCERPC_IS_NDR64) {
904 /* IDL: [nodiscriminant(1)] union { */
905 /* IDL: [case(1)] [case(1)] dfs_referral_v1 v1; */
906 /* IDL: [case(2)] [case(2)] dfs_referral_v2 v2; */
907 /* IDL: [case(3)] [case(3)] dfs_referral_v3 v3; */
908 /* IDL: [case(4)] [case(4)] dfs_referral_v3 v4; */
909 /* IDL: [default] ; */
913 dfsblobs_dissect_element_dfs_referral_version_v1(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
915 offset = dfsblobs_dissect_struct_dfs_referral_v1(tvb,offset,pinfo,tree,drep,hf_dfsblobs_dfs_referral_version_v1,0);
921 dfsblobs_dissect_element_dfs_referral_version_v2(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
923 offset = dfsblobs_dissect_struct_dfs_referral_v2(tvb,offset,pinfo,tree,drep,hf_dfsblobs_dfs_referral_version_v2,0);
929 dfsblobs_dissect_element_dfs_referral_version_v3(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
931 offset = dfsblobs_dissect_struct_dfs_referral_v3(tvb,offset,pinfo,tree,drep,hf_dfsblobs_dfs_referral_version_v3,0);
937 dfsblobs_dissect_element_dfs_referral_version_v4(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
939 offset = dfsblobs_dissect_struct_dfs_referral_v3(tvb,offset,pinfo,tree,drep,hf_dfsblobs_dfs_referral_version_v4,0);
945 dfsblobs_dissect_dfs_referral_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_)
947 proto_item *item = NULL;
948 proto_tree *tree = NULL;
950 guint32 level = param;
954 item = proto_tree_add_text(parent_tree, tvb, offset, -1, "dfs_referral_version");
955 tree = proto_item_add_subtree(item, ett_dfsblobs_dfs_referral_version);
960 offset = dfsblobs_dissect_element_dfs_referral_version_v1(tvb, offset, pinfo, tree, drep);
964 offset = dfsblobs_dissect_element_dfs_referral_version_v2(tvb, offset, pinfo, tree, drep);
968 offset = dfsblobs_dissect_element_dfs_referral_version_v3(tvb, offset, pinfo, tree, drep);
972 offset = dfsblobs_dissect_element_dfs_referral_version_v4(tvb, offset, pinfo, tree, drep);
978 proto_item_set_len(item, offset-old_offset);
985 /* IDL: uint16 version; */
986 /* IDL: [switch_is(version)] dfs_referral_version referral; */
990 dfsblobs_dissect_element_dfs_referral_type_version(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, g *version)
992 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_referral_type_version, version);
998 dfsblobs_dissect_element_dfs_referral_type_referral(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_, g *version)
1000 offset = dfsblobs_dissect_dfs_referral_version(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_referral_type_referral, *version);
1006 dfsblobs_dissect_struct_dfs_referral_type(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_)
1009 proto_item *item = NULL;
1010 proto_tree *tree = NULL;
1011 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
1015 old_offset = offset;
1018 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
1019 tree = proto_item_add_subtree(item, ett_dfsblobs_dfs_referral_type);
1022 offset = dfsblobs_dissect_element_dfs_referral_type_version(tvb, offset, pinfo, tree, drep, &version);
1024 offset = dfsblobs_dissect_element_dfs_referral_type_referral(tvb, offset, pinfo, tree, drep, &version);
1027 proto_item_set_len(item, offset-old_offset);
1030 if (di->call_data->flags & DCERPC_IS_NDR64) {
1039 /* IDL: uint16 path_consumed; */
1040 /* IDL: uint16 nb_referrals; */
1041 /* IDL: DFS_HEADER_FLAG header_flags; */
1042 /* IDL: dfs_referral_type referral_entries[nb_referrals]; */
1046 dfsblobs_dissect_element_dfs_referral_resp_path_consumed(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1048 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_referral_resp_path_consumed, 0);
1054 dfsblobs_dissect_element_dfs_referral_resp_nb_referrals(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1056 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_referral_resp_nb_referrals, 0);
1062 dfsblobs_dissect_element_dfs_referral_resp_header_flags(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1064 offset = dfsblobs_dissect_bitmap_DFS_HEADER_FLAG(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_referral_resp_header_flags, 0);
1070 dfsblobs_dissect_element_dfs_referral_resp_referral_entries(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1077 dfsblobs_dissect_element_dfs_referral_resp_referral_entries_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1079 offset = dfsblobs_dissect_struct_dfs_referral_type(tvb,offset,pinfo,tree,drep,hf_dfsblobs_dfs_referral_resp_referral_entries,0);
1085 dfsblobs_dissect_struct_dfs_referral_resp(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_)
1087 proto_item *item = NULL;
1088 proto_tree *tree = NULL;
1089 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
1094 old_offset = offset;
1097 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
1098 tree = proto_item_add_subtree(item, ett_dfsblobs_dfs_referral_resp);
1101 offset = dfsblobs_dissect_element_dfs_referral_resp_path_consumed(tvb, offset, pinfo, tree, drep);
1103 offset = dfsblobs_dissect_element_dfs_referral_resp_nb_referrals(tvb, offset, pinfo, tree, drep);
1105 offset = dfsblobs_dissect_element_dfs_referral_resp_header_flags(tvb, offset, pinfo, tree, drep);
1107 offset = dfsblobs_dissect_element_dfs_referral_resp_referral_entries(tvb, offset, pinfo, tree, drep);
1110 proto_item_set_len(item, offset-old_offset);
1113 if (di->call_data->flags & DCERPC_IS_NDR64) {
1122 /* IDL: uint16 max_referral_level; */
1123 /* IDL: [flag(LIBNDR_FLAG_STR_NULLTERM|LIBNDR_FLAG_ALIGN2)] string servername; */
1127 dfsblobs_dissect_element_dfs_GetDFSReferral_in_max_referral_level(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1129 offset = PIDL_dissect_uint16(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_GetDFSReferral_in_max_referral_level, 0);
1135 dfsblobs_dissect_element_dfs_GetDFSReferral_in_servername(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1137 offset = dissect_null_term_wstring(tvb, offset, pinfo, tree, drep, hf_dfsblobs_dfs_GetDFSReferral_in_servername , 0);
1143 dfsblobs_dissect_struct_dfs_GetDFSReferral_in(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_)
1145 proto_item *item = NULL;
1146 proto_tree *tree = NULL;
1147 dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
1152 old_offset = offset;
1155 item = proto_tree_add_item(parent_tree, hf_index, tvb, offset, -1, ENC_NA);
1156 tree = proto_item_add_subtree(item, ett_dfsblobs_dfs_GetDFSReferral_in);
1159 offset = dfsblobs_dissect_element_dfs_GetDFSReferral_in_max_referral_level(tvb, offset, pinfo, tree, drep);
1161 offset = dfsblobs_dissect_element_dfs_GetDFSReferral_in_servername(tvb, offset, pinfo, tree, drep);
1164 proto_item_set_len(item, offset-old_offset);
1167 if (di->call_data->flags & DCERPC_IS_NDR64) {
1175 dfsblobs_dissect_element_dfs_GetDFSReferral_req(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1177 offset = dfsblobs_dissect_struct_dfs_GetDFSReferral_in(tvb,offset,pinfo,tree,drep,hf_dfsblobs_dfs_GetDFSReferral_req,0);
1183 dfsblobs_dissect_element_dfs_GetDFSReferral_resp(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1185 offset = dissect_ndr_toplevel_pointer(tvb, offset, pinfo, tree, drep, dfsblobs_dissect_element_dfs_GetDFSReferral_resp_, NDR_POINTER_REF, "Pointer to Resp (dfs_referral_resp)",hf_dfsblobs_dfs_GetDFSReferral_resp);
1191 dfsblobs_dissect_element_dfs_GetDFSReferral_resp_(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1193 offset = dfsblobs_dissect_struct_dfs_referral_resp(tvb,offset,pinfo,tree,drep,hf_dfsblobs_dfs_GetDFSReferral_resp,0);
1198 /* IDL: void dfs_GetDFSReferral( */
1199 /* IDL: [in] dfs_GetDFSReferral_in req, */
1200 /* IDL: [out] [ref] dfs_referral_resp *resp */
1204 dfsblobs_dissect_dfs_GetDFSReferral_response(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1206 pinfo->dcerpc_procedure_name="dfs_GetDFSReferral";
1207 offset = dfsblobs_dissect_element_dfs_GetDFSReferral_resp(tvb, offset, pinfo, tree, drep);
1208 offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
1214 dfsblobs_dissect_dfs_GetDFSReferral_request(tvbuff_t *tvb _U_, int offset _U_, packet_info *pinfo _U_, proto_tree *tree _U_, guint8 *drep _U_)
1216 pinfo->dcerpc_procedure_name="dfs_GetDFSReferral";
1217 offset = dfsblobs_dissect_element_dfs_GetDFSReferral_req(tvb, offset, pinfo, tree, drep);
1218 offset = dissect_deferred_pointers(pinfo, tvb, offset, drep);
1223 static dcerpc_sub_dissector dfsblobs_dissectors[] = {
1224 { 0, "dfs_GetDFSReferral",
1225 dfsblobs_dissect_dfs_GetDFSReferral_request, dfsblobs_dissect_dfs_GetDFSReferral_response},
1226 { 0, NULL, NULL, NULL }
1229 void proto_register_dcerpc_dfsblobs(void)
1231 static hf_register_info hf[] = {
1232 { &hf_dfsblobs_dfs_referral_version_v4,
1233 { "V4", "dfsblobs.dfs_referral_version.v4", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
1234 { &hf_dfsblobs_dfs_domain_referral_special_name,
1235 { "Special Name", "dfsblobs.dfs_domain_referral.special_name", FT_STRING, BASE_NONE, NULL, 0, NULL, HFILL }},
1236 { &hf_dfsblobs_dfs_referral_v3_ttl,
1237 { "Ttl", "dfsblobs.dfs_referral_v3.ttl", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
1238 { &hf_dfsblobs_dfs_referral_v2_server_type,
1239 { "Server Type", "dfsblobs.dfs_referral_v2.server_type", FT_UINT16, BASE_DEC, VALS(dfsblobs_DFS_SERVER_TYPE_vals), 0, NULL, HFILL }},
1240 { &hf_dfsblobs_dfs_referral_v1_server_type,
1241 { "Server Type", "dfsblobs.dfs_referral_v1.server_type", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
1242 { &hf_dfsblobs_dfs_normal_referral_netw_address,
1243 { "Netw Address", "dfsblobs.dfs_normal_referral.netw_address", FT_STRING, BASE_NONE, NULL, 0, NULL, HFILL }},
1244 { &hf_dfsblobs_dfs_referral_v2_proximity,
1245 { "Proximity", "dfsblobs.dfs_referral_v2.proximity", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
1246 { &hf_dfsblobs_dfs_referral_v2_size,
1247 { "Size", "dfsblobs.dfs_referral_v2.size", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
1248 { &hf_dfsblobs_dfs_referral_v3_server_type,
1249 { "Server Type", "dfsblobs.dfs_referral_v3.server_type", FT_UINT16, BASE_DEC, VALS(dfsblobs_DFS_SERVER_TYPE_vals), 0, NULL, HFILL }},
1250 { &hf_dfsblobs_DFS_HEADER_FLAG_DFS_HEADER_FLAG_REFERAL_SVR,
1251 { "Dfs Header Flag Referal Svr", "dfsblobs.DFS_HEADER_FLAG.DFS_HEADER_FLAG_REFERAL_SVR", FT_BOOLEAN, 32, TFS(&DFS_HEADER_FLAG_DFS_HEADER_FLAG_REFERAL_SVR_tfs), ( 0x00000001 ), NULL, HFILL }},
1252 { &hf_dfsblobs_dfs_referral_resp_path_consumed,
1253 { "Path Consumed", "dfsblobs.dfs_referral_resp.path_consumed", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
1254 { &hf_dfsblobs_dfs_referral_version_v3,
1255 { "V3", "dfsblobs.dfs_referral_version.v3", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
1256 { &hf_dfsblobs_dfs_referral_v3_referrals,
1257 { "Referrals", "dfsblobs.dfs_referral_v3.referrals", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
1258 { &hf_dfsblobs_dfs_referral_v1_entry_flags,
1259 { "Entry Flags", "dfsblobs.dfs_referral_v1.entry_flags", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
1260 { &hf_dfsblobs_dfs_referral_resp_referral_entries,
1261 { "Referral Entries", "dfsblobs.dfs_referral_resp.referral_entries", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
1262 { &hf_dfsblobs_dfs_referral_type_referral,
1263 { "Referral", "dfsblobs.dfs_referral_type.referral", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
1264 { &hf_dfsblobs_dfs_referral_r1,
1265 { "R1", "dfsblobs.dfs_referral.r1", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
1266 { &hf_dfsblobs_dfs_referral_version_v1,
1267 { "V1", "dfsblobs.dfs_referral_version.v1", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
1268 { &hf_dfsblobs_dfs_GetDFSReferral_req,
1269 { "Req", "dfsblobs.dfs_GetDFSReferral.req", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
1270 { &hf_dfsblobs_dfs_referral_v1_share_name,
1271 { "Share Name", "dfsblobs.dfs_referral_v1.share_name", FT_STRING, BASE_NONE, NULL, 0, NULL, HFILL }},
1272 { &hf_dfsblobs_dfs_referral_v2_netw_address,
1273 { "Netw Address", "dfsblobs.dfs_referral_v2.netw_address", FT_STRING, BASE_NONE, NULL, 0, NULL, HFILL }},
1274 { &hf_dfsblobs_dfs_domain_referral_expanded_names_,
1275 { "Subcontext length", "dfsblobs.dfs_domain_referral.subcontext", FT_UINT0, BASE_HEX, NULL, 0, NULL, HFILL }},
1276 { &hf_dfsblobs_dfs_referral_type_version,
1277 { "Version", "dfsblobs.dfs_referral_type.version", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
1278 { &hf_dfsblobs_dfs_domain_referral_nb_expanded_names,
1279 { "Nb Expanded Names", "dfsblobs.dfs_domain_referral.nb_expanded_names", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
1280 { &hf_dfsblobs_opnum,
1281 { "Operation", "dfsblobs.opnum", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
1282 { &hf_dfsblobs_dfs_GetDFSReferral_in_max_referral_level,
1283 { "Max Referral Level", "dfsblobs.dfs_GetDFSReferral_in.max_referral_level", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
1284 { &hf_dfsblobs_dfs_referral_v2_DFS_alt_path,
1285 { "Dfs Alt Path", "dfsblobs.dfs_referral_v2.DFS_alt_path", FT_STRING, BASE_NONE, NULL, 0, NULL, HFILL }},
1286 { &hf_dfsblobs_dfs_domain_referral_expanded_names,
1287 { "Expanded Names", "dfsblobs.dfs_domain_referral.expanded_names", FT_STRING, BASE_NONE, NULL, 0, NULL, HFILL }},
1288 { &hf_dfsblobs_dfs_referral_r2,
1289 { "R2", "dfsblobs.dfs_referral.r2", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
1290 { &hf_dfsblobs_dfs_referral_v3_service_site_guid,
1291 { "Service Site Guid", "dfsblobs.dfs_referral_v3.service_site_guid", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
1292 { &hf_dfsblobs_dfs_GetDFSReferral_in_servername,
1293 { "Servername", "dfsblobs.dfs_GetDFSReferral_in.servername", FT_STRING, BASE_NONE, NULL, 0, NULL, HFILL }},
1294 { &hf_dfsblobs_dfs_referral_resp_nb_referrals,
1295 { "Nb Referrals", "dfsblobs.dfs_referral_resp.nb_referrals", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
1296 { &hf_dfsblobs_dfs_normal_referral_DFS_alt_path,
1297 { "Dfs Alt Path", "dfsblobs.dfs_normal_referral.DFS_alt_path", FT_STRING, BASE_NONE, NULL, 0, NULL, HFILL }},
1298 { &hf_dfsblobs_DFS_HEADER_FLAG_DFS_HEADER_FLAG_STORAGE_SVR,
1299 { "Dfs Header Flag Storage Svr", "dfsblobs.DFS_HEADER_FLAG.DFS_HEADER_FLAG_STORAGE_SVR", FT_BOOLEAN, 32, TFS(&DFS_HEADER_FLAG_DFS_HEADER_FLAG_STORAGE_SVR_tfs), ( 0x00000002 ), NULL, HFILL }},
1300 { &hf_dfsblobs_dfs_referral_v1_size,
1301 { "Size", "dfsblobs.dfs_referral_v1.size", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
1302 { &hf_dfsblobs_dfs_padding_value,
1303 { "Value", "dfsblobs.dfs_padding.value", FT_UINT8, BASE_DEC, NULL, 0, NULL, HFILL }},
1304 { &hf_dfsblobs_dfs_referral_resp_header_flags,
1305 { "Header Flags", "dfsblobs.dfs_referral_resp.header_flags", FT_UINT32, BASE_HEX, NULL, 0, NULL, HFILL }},
1306 { &hf_dfsblobs_dfs_normal_referral_DFS_path,
1307 { "Dfs Path", "dfsblobs.dfs_normal_referral.DFS_path", FT_STRING, BASE_NONE, NULL, 0, NULL, HFILL }},
1308 { &hf_dfsblobs_dfs_referral_v3_entry_flags,
1309 { "Entry Flags", "dfsblobs.dfs_referral_v3.entry_flags", FT_UINT16, BASE_DEC, VALS(dfsblobs_DFS_FLAGS_REFERRAL_vals), 0, NULL, HFILL }},
1310 { &hf_dfsblobs_dfs_referral_v3_size,
1311 { "Size", "dfsblobs.dfs_referral_v3.size", FT_UINT16, BASE_DEC, NULL, 0, NULL, HFILL }},
1312 { &hf_dfsblobs_dfs_GetDFSReferral_resp,
1313 { "Resp", "dfsblobs.dfs_GetDFSReferral.resp", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
1314 { &hf_dfsblobs_dfs_referral_v2_entry_flags,
1315 { "Entry Flags", "dfsblobs.dfs_referral_v2.entry_flags", FT_UINT16, BASE_DEC, VALS(dfsblobs_DFS_FLAGS_REFERRAL_vals), 0, NULL, HFILL }},
1316 { &hf_dfsblobs_dfs_referral_version_v2,
1317 { "V2", "dfsblobs.dfs_referral_version.v2", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }},
1318 { &hf_dfsblobs_dfs_referral_v2_ttl,
1319 { "Ttl", "dfsblobs.dfs_referral_v2.ttl", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }},
1320 { &hf_dfsblobs_dfs_referral_v2_DFS_path,
1321 { "Dfs Path", "dfsblobs.dfs_referral_v2.DFS_path", FT_STRING, BASE_NONE, NULL, 0, NULL, HFILL }},
1322 { &hf_dfsblobs_DFS_HEADER_FLAG_DFS_HEADER_FLAG_TARGET_BCK,
1323 { "Dfs Header Flag Target Bck", "dfsblobs.DFS_HEADER_FLAG.DFS_HEADER_FLAG_TARGET_BCK", FT_BOOLEAN, 32, TFS(&DFS_HEADER_FLAG_DFS_HEADER_FLAG_TARGET_BCK_tfs), ( 0x00000004 ), NULL, HFILL }},
1327 static gint *ett[] = {
1328 &ett_dcerpc_dfsblobs,
1329 &ett_dfsblobs_DFS_HEADER_FLAG,
1330 &ett_dfsblobs_dfs_referral_v1,
1331 &ett_dfsblobs_dfs_referral_v2,
1332 &ett_dfsblobs_dfs_normal_referral,
1333 &ett_dfsblobs_dfs_domain_referral,
1334 &ett_dfsblobs_dfs_referral,
1335 &ett_dfsblobs_dfs_padding,
1336 &ett_dfsblobs_dfs_referral_v3,
1337 &ett_dfsblobs_dfs_referral_version,
1338 &ett_dfsblobs_dfs_referral_type,
1339 &ett_dfsblobs_dfs_referral_resp,
1340 &ett_dfsblobs_dfs_GetDFSReferral_in,
1343 proto_dcerpc_dfsblobs = proto_register_protocol("dfs referral blobs", "DFSBLOBS", "dfsblobs");
1344 proto_register_field_array(proto_dcerpc_dfsblobs, hf, array_length (hf));
1345 proto_register_subtree_array(ett, array_length(ett));
1348 void proto_reg_handoff_dcerpc_dfsblobs(void)
1350 dcerpc_init_uuid(proto_dcerpc_dfsblobs, ett_dcerpc_dfsblobs,
1351 &uuid_dcerpc_dfsblobs, ver_dcerpc_dfsblobs,
1352 dfsblobs_dissectors, hf_dfsblobs_opnum);