* Copyright 2001,2003 Tim Potter <tpot@samba.org>
* 2002 Added LSA command dissectors Ronnie Sahlberg
*
- * $Id: packet-dcerpc-lsa.c,v 1.82 2003/05/22 11:48:28 sahlberg Exp $
+ * $Id: packet-dcerpc-lsa.c,v 1.83 2003/05/23 05:20:58 tpot Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
return offset;
}
-static int
-lsa_dissect_LSA_HANDLE(tvbuff_t *tvb, int offset,
- packet_info *pinfo, proto_tree *tree, char *drep)
-{
- offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
- hf_lsa_hnd, NULL, FALSE, FALSE);
-
- return offset;
-}
-
-static int
-lsa_dissect_LSA_HANDLE_open(tvbuff_t *tvb, int offset,
- packet_info *pinfo, proto_tree *tree, char *drep)
-{
- offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
- hf_lsa_hnd, NULL, TRUE, FALSE);
-
- return offset;
-}
-
-static int
-lsa_dissect_LSA_HANDLE_close(tvbuff_t *tvb, int offset,
- packet_info *pinfo, proto_tree *tree, char *drep)
-{
- offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
- hf_lsa_hnd, NULL, FALSE, TRUE);
-
- return offset;
-}
-
-
static int
lsa_dissect_LSA_OBJECT_ATTRIBUTES(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *parent_tree, char *drep)
lsa_dissect_lsaclose_rqst(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
- lsa_dissect_LSA_HANDLE_close, NDR_POINTER_REF,
- "LSA_HANDLE", -1);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, TRUE);
+
return offset;
}
-
static int
lsa_dissect_lsaclose_reply(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
- lsa_dissect_LSA_HANDLE, NDR_POINTER_REF,
- "LSA_HANDLE", -1);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ntstatus(
tvb, offset, pinfo, tree, drep, hf_lsa_rc, NULL);
{
offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
dissect_lsa_openpolicy_server, NDR_POINTER_UNIQUE,
- "Server:", hf_lsa_server);
+ "Server", hf_lsa_server);
offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
lsa_dissect_LSA_OBJECT_ATTRIBUTES, NDR_POINTER_REF,
offset = lsa_dissect_ACCESS_MASK(tvb, offset,
pinfo, tree, drep);
+
return offset;
}
lsa_dissect_lsaopenpolicy_reply(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
- lsa_dissect_LSA_HANDLE_open, NDR_POINTER_REF,
- "LSA_HANDLE", -1);
+ e_ctx_hnd policy_hnd;
+
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, &policy_hnd, TRUE, FALSE);
+
+ dcerpc_smb_store_pol_name(&policy_hnd, "OpenPolicy handle");
offset = dissect_ntstatus(
tvb, offset, pinfo, tree, drep, hf_lsa_rc, NULL);
offset = lsa_dissect_ACCESS_MASK(tvb, offset,
pinfo, tree, drep);
+
return offset;
}
lsa_dissect_lsaopenpolicy2_reply(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
- lsa_dissect_LSA_HANDLE_open, NDR_POINTER_REF,
- "LSA_HANDLE", -1);
+ dcerpc_info *di = (dcerpc_info *)pinfo->private_data;
+ dcerpc_call_value *dcv = (dcerpc_call_value *)di->call_data;
+ e_ctx_hnd policy_hnd;
+ char *pol_name;
+
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, &policy_hnd, TRUE, FALSE);
+
+ if (dcv->private_data)
+ pol_name = g_strdup_printf(
+ "OpenPolicy2(%s)", (char *)dcv->private_data);
+ else
+ pol_name = g_strdup("OpenPolicy2 handle");
+
+ dcerpc_smb_store_pol_name(&policy_hnd, pol_name);
+
+ g_free(pol_name);
offset = dissect_ntstatus(
tvb, offset, pinfo, tree, drep, hf_lsa_rc, NULL);
{
guint16 level;
- offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
- lsa_dissect_LSA_HANDLE, NDR_POINTER_REF,
- "LSA_HANDLE", -1);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ndr_uint16(tvb, offset, pinfo, tree, drep,
hf_lsa_policy_information_class, &level);
lsa_dissect_lsadelete_rqst(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
- lsa_dissect_LSA_HANDLE, NDR_POINTER_REF,
- "LSA_HANDLE", -1);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
return offset;
}
lsa_dissect_lsaquerysecurityobject_rqst(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep,
hf_lsa_info_type, NULL);
lsa_dissect_lsasetsecurityobject_rqst(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep,
hf_lsa_info_type, NULL);
lsa_dissect_lsalookupsids_rqst(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
dissect_ndr_nt_PSID_ARRAY, NDR_POINTER_REF,
lsa_dissect_lsasetquotasforaccount_rqst(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
lsa_dissect_POLICY_DEFAULT_QUOTA_INFO, NDR_POINTER_REF,
lsa_dissect_lsagetquotasforaccount_rqst(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
return offset;
}
lsa_dissect_lsasetinformationpolicy_rqst(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ndr_uint16(tvb, offset, pinfo, tree, drep,
hf_lsa_policy_information_class, NULL);
lsa_dissect_lsaclearauditlog_rqst(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ndr_nt_SID(tvb, offset,
pinfo, tree, drep, -1);
lsa_dissect_lsaclearauditlog_reply(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ntstatus(
tvb, offset, pinfo, tree, drep, hf_lsa_rc, NULL);
lsa_dissect_lsagetsystemaccessaccount_rqst(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
return offset;
}
lsa_dissect_lsasetsystemaccessaccount_rqst(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep,
hf_lsa_rid, NULL);
lsa_dissect_lsaopentrusteddomain_rqst(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ndr_nt_SID(tvb, offset,
pinfo, tree, drep, -1);
lsa_dissect_lsaopentrusteddomain_reply(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ntstatus(
tvb, offset, pinfo, tree, drep, hf_lsa_rc, NULL);
lsa_dissect_lsadeletetrusteddomain_rqst(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ndr_nt_SID(tvb, offset,
pinfo, tree, drep, -1);
lsa_dissect_lsaenumerateprivileges_rqst(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep,
hf_lsa_count, NULL);
lsa_dissect_lsalookupprivilegevalue_rqst(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* privilege name */
offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
lsa_dissect_lsalookupprivilegename_rqst(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* LUID */
offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
return offset;
}
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in, ref] LUID_AND_ATTRIBUTES_ARRAY *privs */
offset = lsa_dissect_LUID_AND_ATTRIBUTES_ARRAY(tvb, offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in] char unknown */
offset = dissect_ndr_uint8 (tvb, offset, pinfo, tree, drep,
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in,out, ref] LSA_ENUMERATION_HANDLE *resume_hnd */
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep,
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd_pol */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in, ref] LSA_TRUST_INFORMATION *domain */
offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [out] LSA_HANDLE *hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ntstatus(
tvb, offset, pinfo, tree, drep, hf_lsa_rc, NULL);
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in, out, ref] LSA_ENUMERATION_HANDLE *resume_hnd */
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep,
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in] ULONG count */
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep,
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd_pol */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in, ref] LSA_UNICODE_STRING *name */
offset = dissect_ndr_counted_string(tvb, offset, pinfo, tree, drep,
{
/* [out] LSA_HANDLE *hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ntstatus(
tvb, offset, pinfo, tree, drep, hf_lsa_rc, NULL);
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd_pol */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in, ref] SID *account */
offset = dissect_ndr_nt_SID(tvb, offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [out] LSA_HANDLE *hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ntstatus(
tvb, offset, pinfo, tree, drep, hf_lsa_rc, NULL);
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in] TRUSTED_INFORMATION_CLASS level */
offset = dissect_ndr_uint16(tvb, offset, pinfo, tree, drep,
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in] TRUSTED_INFORMATION_CLASS level */
offset = dissect_ndr_uint16(tvb, offset, pinfo, tree, drep,
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd_pol */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in, ref] LSA_UNICODE_STRING *name */
offset = dissect_ndr_counted_string_cb(
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [out] LSA_HANDLE *hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ntstatus(
tvb, offset, pinfo, tree, drep, hf_lsa_rc, NULL);
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in, unique] LSA_SECRET *new_val */
offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in, out, unique] LSA_SECRET **curr_val */
offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
return offset;
}
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in, unique] LSA_UNICODE_STRING *rights */
offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in, ref] SID *account */
offset = dissect_ndr_nt_SID(tvb, offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in, ref] SID *account */
offset = dissect_ndr_nt_SID(tvb, offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in, ref] SID *account */
offset = dissect_ndr_nt_SID(tvb, offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE handle */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in, ref] LSA_UNICODE_STRING *name */
/* domain */
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE handle */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in, ref] LSA_UNICODE_STRING *name */
/* domain */
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE handle */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in, ref] SID *sid */
offset = dissect_ndr_nt_SID(tvb, offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE handle */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in, ref] LSA_UNICODE_STRING *name */
/* domain */
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [out] LSA_HANDLE handle */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ntstatus(
tvb, offset, pinfo, tree, drep, hf_lsa_rc, NULL);
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE handle */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in, ref] SID *sid */
offset = dissect_ndr_nt_SID(tvb, offset,
lsa_dissect_lsaqueryinformationpolicy2_rqst(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
- lsa_dissect_LSA_HANDLE, NDR_POINTER_REF,
- "LSA_HANDLE", -1);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ndr_uint16(tvb, offset, pinfo, tree, drep,
hf_lsa_policy_information_class, NULL);
lsa_dissect_lsasetinformationpolicy2_rqst(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
- lsa_dissect_LSA_HANDLE, NDR_POINTER_REF,
- "LSA_HANDLE", -1);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ndr_uint16(tvb, offset, pinfo, tree, drep,
hf_lsa_policy_information_class, NULL);
lsa_dissect_lsaquerydomaininformationpolicy_rqst(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
- lsa_dissect_LSA_HANDLE, NDR_POINTER_REF,
- "LSA_HANDLE", -1);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ndr_uint16(tvb, offset, pinfo, tree, drep,
hf_lsa_policy_information_class, NULL);
lsa_dissect_lsasetdomaininformationpolicy_rqst(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
- lsa_dissect_LSA_HANDLE, NDR_POINTER_REF,
- "LSA_HANDLE", -1);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ndr_uint16(tvb, offset, pinfo, tree, drep,
hf_lsa_policy_information_class, NULL);
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in] ULONG count */
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep,
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ndr_nt_SID(tvb, offset,
pinfo, tree, drep, -1);
lsa_dissect_lsacreateaccount_reply(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ntstatus(
tvb, offset, pinfo, tree, drep, hf_lsa_rc, NULL);
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in, ref] LSA_UNICODE_STRING *name */
offset = dissect_ndr_counted_string(tvb, offset, pinfo, tree, drep,
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in, ref] LSA_UNICODE_STRING *key */
offset = dissect_ndr_counted_string(tvb, offset, pinfo, tree, drep,
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in, ref] LSA_UNICODE_STRING *key */
offset = dissect_ndr_counted_string(tvb, offset, pinfo, tree, drep,
{
/* [in, out] LSA_HANDLE *tdHnd */
- offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
- lsa_dissect_LSA_HANDLE, NDR_POINTER_REF,
- "LSA_HANDLE", -1);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
return offset;
}
{
/* [in, out] LSA_HANDLE *tdHnd */
- offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
- lsa_dissect_LSA_HANDLE, NDR_POINTER_REF,
- "LSA_HANDLE", -1);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ntstatus(
tvb, offset, pinfo, tree, drep, hf_lsa_rc, NULL);
lsa_dissect_lsalookupsids2_rqst(tvbuff_t *tvb, int offset,
packet_info *pinfo, proto_tree *tree, char *drep)
{
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
dissect_ndr_nt_PSID_ARRAY, NDR_POINTER_REF,
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in, ref] TRUSTED_DOMAIN_INFORMATION_EX *info */
offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [out] LSA_HANDLE *tdHnd) */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ntstatus(
tvb, offset, pinfo, tree, drep, hf_lsa_rc, NULL);
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in, out, ref] LSA_ENUMERATION_HANDLE *resume_hnd */
offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep,
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE handle */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in] USHORT flag */
offset = dissect_ndr_uint16(tvb, offset, pinfo, tree, drep,
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [in] LSA_HANDLE hnd */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
/* [in, ref] TRUSTED_DOMAIN_INFORMATION_EX *info */
offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
packet_info *pinfo, proto_tree *tree, char *drep)
{
/* [out] LSA_HANDLE *h2) */
- offset = lsa_dissect_LSA_HANDLE(tvb, offset,
- pinfo, tree, drep);
+ offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
+ hf_lsa_hnd, NULL, FALSE, FALSE);
offset = dissect_ntstatus(
tvb, offset, pinfo, tree, drep, hf_lsa_rc, NULL);