#ifndef __PACKET_DCERPC_NT_H
#define __PACKET_DCERPC_NT_H
-/*
- * ett_ value for Unicode strings.
- */
-extern gint ett_nt_unicode_string;
-
/*
* Platform ID values, used by several dissectors.
*/
#define ALIGN_TO_8_BYTES \
{ dcerpc_info *xzdi; \
- xzdi=pinfo->private_data; \
+ xzdi=(dcerpc_info *)pinfo->private_data; \
if(!xzdi->conformant_run) { \
if(offset&0x07) { \
offset=(offset&0xfffffff8)+8; \
}
#define ALIGN_TO_4_BYTES \
{ dcerpc_info *xzdi; \
- xzdi=pinfo->private_data; \
+ xzdi=(dcerpc_info *)pinfo->private_data; \
if(!xzdi->conformant_run) { \
if(offset&0x03) { \
offset=(offset&0xfffffffc)+4; \
}
#define ALIGN_TO_2_BYTES \
{ dcerpc_info *xzdi; \
- xzdi=pinfo->private_data; \
+ xzdi=(dcerpc_info *)pinfo->private_data; \
if(!xzdi->conformant_run) { \
if(offset&0x01) { \
offset=(offset&0xfffffffe)+2; \
#define ALIGN_TO_4_OR_8_BYTES \
{ dcerpc_info *xzdi2; \
- xzdi2=pinfo->private_data; \
+ xzdi2=(dcerpc_info *)pinfo->private_data; \
if (xzdi2->call_data->flags & DCERPC_IS_NDR64) { \
ALIGN_TO_8_BYTES; \
} else { \
} \
}
+#define ALIGN_TO_3_BYTES ALIGN_TO_2_OR_4_BYTES
+
+#define ALIGN_TO_2_OR_4_BYTES \
+ { dcerpc_info *xzdi2; \
+ xzdi2=(dcerpc_info *)pinfo->private_data; \
+ if (xzdi2->call_data->flags & DCERPC_IS_NDR64) { \
+ ALIGN_TO_4_BYTES; \
+ } else { \
+ ALIGN_TO_2_BYTES; \
+ } \
+ }
+int
+dissect_ndr_datablob(tvbuff_t *tvb, int offset, packet_info *pinfo,
+ proto_tree *tree, guint8 *drep, int hf_index,
+ int use_remaining_space);
+
+int
+dissect_null_term_string(tvbuff_t *tvb, int offset, packet_info *pinfo,
+ proto_tree *tree, guint8 *drep, int hf_index,
+ int levels);
+
+int
+dissect_null_term_wstring(tvbuff_t *tvb, int offset, packet_info *pinfo,
+ proto_tree *tree, guint8 *drep, int hf_index,
+ int levels);
int
dissect_ndr_counted_ascii_string_cb(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree,
guint8 *drep);
+int
+dissect_ndr_lsa_String(tvbuff_t *tvb, int offset, packet_info *pinfo,
+ proto_tree *parent_tree, guint8 *drep,
+ guint32 param, int hfindex);
+
int
dissect_ndr_nt_NTTIME (tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree,
void dcerpc_smb_init(int proto_dcerpc);
+/* Used into packet-dcerpc-netlogon.c*/
+extern int hf_nt_cs_len;
+extern int hf_nt_cs_size;
#endif /* packet-dcerpc-nt.h */