diff options
Diffstat (limited to 'source4/librpc/ndr')
-rw-r--r-- | source4/librpc/ndr/ndr_lsa.c | 669 | ||||
-rw-r--r-- | source4/librpc/ndr/ndr_lsa.h | 519 |
2 files changed, 1099 insertions, 89 deletions
diff --git a/source4/librpc/ndr/ndr_lsa.c b/source4/librpc/ndr/ndr_lsa.c index 651ba9de08..54c81d2b49 100644 --- a/source4/librpc/ndr/ndr_lsa.c +++ b/source4/librpc/ndr/ndr_lsa.c @@ -2,6 +2,85 @@ #include "includes.h" +NTSTATUS ndr_push_lsa_Close(struct ndr_push *ndr, struct lsa_Close *r) +{ + NDR_CHECK(ndr_push_policy_handle(ndr, r->in.handle)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_lsa_Close(struct ndr_pull *ndr, struct lsa_Close *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_lsa_Delete(struct ndr_push *ndr, struct lsa_Delete *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_lsa_Delete(struct ndr_pull *ndr, struct lsa_Delete *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_lsa_EnumPrivs(struct ndr_push *ndr, struct lsa_EnumPrivs *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_lsa_EnumPrivs(struct ndr_pull *ndr, struct lsa_EnumPrivs *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_lsa_QuerySecObj(struct ndr_push *ndr, struct lsa_QuerySecObj *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_lsa_QuerySecObj(struct ndr_pull *ndr, struct lsa_QuerySecObj *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_lsa_SetSecObj(struct ndr_push *ndr, struct lsa_SetSecObj *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_lsa_SetSecObj(struct ndr_pull *ndr, struct lsa_SetSecObj *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_lsa_ChangePassword(struct ndr_push *ndr, struct lsa_ChangePassword *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_lsa_ChangePassword(struct ndr_pull *ndr, struct lsa_ChangePassword *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + static NTSTATUS ndr_push_lsa_QosInfo(struct ndr_push *ndr, int ndr_flags, struct lsa_QosInfo *r) { struct ndr_push_save _save1, _save2, _save3; @@ -154,21 +233,53 @@ NTSTATUS ndr_pull_lsa_OpenPolicy(struct ndr_pull *ndr, struct lsa_OpenPolicy *r) return NT_STATUS_OK; } -NTSTATUS ndr_push_lsa_OpenPolicy2(struct ndr_push *ndr, struct lsa_OpenPolicy2 *r) +NTSTATUS ndr_push_lsa_QueryInfoPolicy(struct ndr_push *ndr, struct lsa_QueryInfoPolicy *r) { - NDR_CHECK(ndr_push_ptr(ndr, r->in.system_name)); - if (r->in.system_name) { - NDR_CHECK(ndr_push_unistr(ndr, r->in.system_name)); - } - NDR_CHECK(ndr_push_lsa_ObjectAttribute(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.attr)); - NDR_CHECK(ndr_push_uint32(ndr, r->in.desired_access)); return NT_STATUS_OK; } -NTSTATUS ndr_pull_lsa_OpenPolicy2(struct ndr_pull *ndr, struct lsa_OpenPolicy2 *r) +NTSTATUS ndr_pull_lsa_QueryInfoPolicy(struct ndr_pull *ndr, struct lsa_QueryInfoPolicy *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_lsa_SetInfoPolicy(struct ndr_push *ndr, struct lsa_SetInfoPolicy *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_lsa_SetInfoPolicy(struct ndr_pull *ndr, struct lsa_SetInfoPolicy *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_lsa_ClearAuditLog(struct ndr_push *ndr, struct lsa_ClearAuditLog *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_lsa_ClearAuditLog(struct ndr_pull *ndr, struct lsa_ClearAuditLog *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_lsa_CreateAccount(struct ndr_push *ndr, struct lsa_CreateAccount *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_lsa_CreateAccount(struct ndr_pull *ndr, struct lsa_CreateAccount *r) { - NDR_CHECK(ndr_pull_policy_handle(ndr, r->out.handle)); NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); return NT_STATUS_OK; @@ -241,7 +352,7 @@ done: return NT_STATUS_OK; } -NTSTATUS ndr_push_lsa_EnumSids(struct ndr_push *ndr, struct lsa_EnumSids *r) +NTSTATUS ndr_push_lsa_EnumAccounts(struct ndr_push *ndr, struct lsa_EnumAccounts *r) { NDR_CHECK(ndr_push_policy_handle(ndr, r->in.handle)); NDR_CHECK(ndr_push_uint32(ndr, *r->in.resume_handle)); @@ -250,7 +361,7 @@ NTSTATUS ndr_push_lsa_EnumSids(struct ndr_push *ndr, struct lsa_EnumSids *r) return NT_STATUS_OK; } -NTSTATUS ndr_pull_lsa_EnumSids(struct ndr_pull *ndr, struct lsa_EnumSids *r) +NTSTATUS ndr_pull_lsa_EnumAccounts(struct ndr_pull *ndr, struct lsa_EnumAccounts *r) { NDR_CHECK(ndr_pull_uint32(ndr, r->out.resume_handle)); NDR_CHECK(ndr_pull_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids)); @@ -259,6 +370,32 @@ NTSTATUS ndr_pull_lsa_EnumSids(struct ndr_pull *ndr, struct lsa_EnumSids *r) return NT_STATUS_OK; } +NTSTATUS ndr_push_lsa_CreateTrustDom(struct ndr_push *ndr, struct lsa_CreateTrustDom *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_lsa_CreateTrustDom(struct ndr_pull *ndr, struct lsa_CreateTrustDom *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_lsa_EnumTrustDom(struct ndr_push *ndr, struct lsa_EnumTrustDom *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_lsa_EnumTrustDom(struct ndr_pull *ndr, struct lsa_EnumTrustDom *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + static NTSTATUS ndr_push_lsa_Name(struct ndr_push *ndr, int ndr_flags, struct lsa_Name *r) { if (!(ndr_flags & NDR_SCALARS)) goto buffers; @@ -295,62 +432,60 @@ done: return NT_STATUS_OK; } -static NTSTATUS ndr_push_lsa_TranslatedName(struct ndr_push *ndr, int ndr_flags, struct lsa_TranslatedName *r) +static NTSTATUS ndr_push_lsa_TranslatedSid(struct ndr_push *ndr, int ndr_flags, struct lsa_TranslatedSid *r) { if (!(ndr_flags & NDR_SCALARS)) goto buffers; NDR_CHECK(ndr_push_uint16(ndr, r->sid_type)); - NDR_CHECK(ndr_push_lsa_Name(ndr, NDR_SCALARS, &r->name)); + NDR_CHECK(ndr_push_uint32(ndr, r->rid)); NDR_CHECK(ndr_push_uint32(ndr, r->sid_index)); buffers: if (!(ndr_flags & NDR_BUFFERS)) goto done; - NDR_CHECK(ndr_push_lsa_Name(ndr, ndr_flags, &r->name)); done: return NT_STATUS_OK; } -static NTSTATUS ndr_pull_lsa_TranslatedName(struct ndr_pull *ndr, int ndr_flags, struct lsa_TranslatedName *r) +static NTSTATUS ndr_pull_lsa_TranslatedSid(struct ndr_pull *ndr, int ndr_flags, struct lsa_TranslatedSid *r) { if (!(ndr_flags & NDR_SCALARS)) goto buffers; NDR_CHECK(ndr_pull_uint16(ndr, &r->sid_type)); - NDR_CHECK(ndr_pull_lsa_Name(ndr, NDR_SCALARS, &r->name)); + NDR_CHECK(ndr_pull_uint32(ndr, &r->rid)); NDR_CHECK(ndr_pull_uint32(ndr, &r->sid_index)); buffers: if (!(ndr_flags & NDR_BUFFERS)) goto done; - NDR_CHECK(ndr_pull_lsa_Name(ndr, ndr_flags, &r->name)); done: return NT_STATUS_OK; } -static NTSTATUS ndr_push_lsa_TransNameArray(struct ndr_push *ndr, int ndr_flags, struct lsa_TransNameArray *r) +static NTSTATUS ndr_push_lsa_TransSidArray(struct ndr_push *ndr, int ndr_flags, struct lsa_TransSidArray *r) { if (!(ndr_flags & NDR_SCALARS)) goto buffers; NDR_CHECK(ndr_push_uint32(ndr, r->count)); - NDR_CHECK(ndr_push_ptr(ndr, r->names)); + NDR_CHECK(ndr_push_ptr(ndr, r->sids)); buffers: if (!(ndr_flags & NDR_BUFFERS)) goto done; - if (r->names) { - NDR_CHECK(ndr_push_array(ndr, ndr_flags, r->names, sizeof(r->names[0]), r->count, (ndr_push_flags_fn_t)ndr_push_lsa_TranslatedName)); + if (r->sids) { + NDR_CHECK(ndr_push_array(ndr, ndr_flags, r->sids, sizeof(r->sids[0]), r->count, (ndr_push_flags_fn_t)ndr_push_lsa_TranslatedSid)); } done: return NT_STATUS_OK; } -static NTSTATUS ndr_pull_lsa_TransNameArray(struct ndr_pull *ndr, int ndr_flags, struct lsa_TransNameArray *r) +static NTSTATUS ndr_pull_lsa_TransSidArray(struct ndr_pull *ndr, int ndr_flags, struct lsa_TransSidArray *r) { - uint32 _ptr_names; + uint32 _ptr_sids; if (!(ndr_flags & NDR_SCALARS)) goto buffers; NDR_CHECK(ndr_pull_uint32(ndr, &r->count)); - NDR_CHECK(ndr_pull_uint32(ndr, &_ptr_names)); - if (_ptr_names) { - NDR_ALLOC(ndr, r->names); + NDR_CHECK(ndr_pull_uint32(ndr, &_ptr_sids)); + if (_ptr_sids) { + NDR_ALLOC(ndr, r->sids); } else { - r->names = NULL; + r->sids = NULL; } buffers: if (!(ndr_flags & NDR_BUFFERS)) goto done; - if (r->names) { - NDR_ALLOC_N_SIZE(ndr, r->names, r->count, sizeof(r->names[0])); - NDR_CHECK(ndr_pull_array(ndr, ndr_flags, (void **)r->names, sizeof(r->names[0]), r->count, (ndr_pull_flags_fn_t)ndr_pull_lsa_TranslatedName)); + if (r->sids) { + NDR_ALLOC_N_SIZE(ndr, r->sids, r->count, sizeof(r->sids[0])); + NDR_CHECK(ndr_pull_array(ndr, ndr_flags, (void **)r->sids, sizeof(r->sids[0]), r->count, (ndr_pull_flags_fn_t)ndr_pull_lsa_TranslatedSid)); } done: return NT_STATUS_OK; @@ -429,18 +564,22 @@ done: return NT_STATUS_OK; } -NTSTATUS ndr_push_lsa_LookupSids(struct ndr_push *ndr, struct lsa_LookupSids *r) +NTSTATUS ndr_push_lsa_LookupNames(struct ndr_push *ndr, struct lsa_LookupNames *r) { NDR_CHECK(ndr_push_policy_handle(ndr, r->in.handle)); - NDR_CHECK(ndr_push_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids)); - NDR_CHECK(ndr_push_lsa_TransNameArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.names)); + NDR_CHECK(ndr_push_uint32(ndr, r->in.num_names)); + if (r->in.names) { + int ndr_flags = NDR_SCALARS|NDR_BUFFERS; + NDR_CHECK(ndr_push_array(ndr, ndr_flags, r->in.names, sizeof(r->in.names[0]), r->in.num_names, (ndr_push_flags_fn_t)ndr_push_lsa_Name)); + } + NDR_CHECK(ndr_push_lsa_TransSidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids)); NDR_CHECK(ndr_push_uint16(ndr, r->in.level)); NDR_CHECK(ndr_push_uint32(ndr, *r->in.count)); return NT_STATUS_OK; } -NTSTATUS ndr_pull_lsa_LookupSids(struct ndr_pull *ndr, struct lsa_LookupSids *r) +NTSTATUS ndr_pull_lsa_LookupNames(struct ndr_pull *ndr, struct lsa_LookupNames *r) { uint32 _ptr_domains; NDR_ALLOC(ndr, r->out.domains); @@ -453,88 +592,86 @@ NTSTATUS ndr_pull_lsa_LookupSids(struct ndr_pull *ndr, struct lsa_LookupSids *r) if (r->out.domains) { NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains)); } - NDR_CHECK(ndr_pull_lsa_TransNameArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.names)); + NDR_CHECK(ndr_pull_lsa_TransSidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids)); NDR_CHECK(ndr_pull_uint32(ndr, r->out.count)); NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); return NT_STATUS_OK; } -static NTSTATUS ndr_push_lsa_TranslatedSid(struct ndr_push *ndr, int ndr_flags, struct lsa_TranslatedSid *r) +static NTSTATUS ndr_push_lsa_TranslatedName(struct ndr_push *ndr, int ndr_flags, struct lsa_TranslatedName *r) { if (!(ndr_flags & NDR_SCALARS)) goto buffers; NDR_CHECK(ndr_push_uint16(ndr, r->sid_type)); - NDR_CHECK(ndr_push_uint32(ndr, r->rid)); + NDR_CHECK(ndr_push_lsa_Name(ndr, NDR_SCALARS, &r->name)); NDR_CHECK(ndr_push_uint32(ndr, r->sid_index)); buffers: if (!(ndr_flags & NDR_BUFFERS)) goto done; + NDR_CHECK(ndr_push_lsa_Name(ndr, ndr_flags, &r->name)); done: return NT_STATUS_OK; } -static NTSTATUS ndr_pull_lsa_TranslatedSid(struct ndr_pull *ndr, int ndr_flags, struct lsa_TranslatedSid *r) +static NTSTATUS ndr_pull_lsa_TranslatedName(struct ndr_pull *ndr, int ndr_flags, struct lsa_TranslatedName *r) { if (!(ndr_flags & NDR_SCALARS)) goto buffers; NDR_CHECK(ndr_pull_uint16(ndr, &r->sid_type)); - NDR_CHECK(ndr_pull_uint32(ndr, &r->rid)); + NDR_CHECK(ndr_pull_lsa_Name(ndr, NDR_SCALARS, &r->name)); NDR_CHECK(ndr_pull_uint32(ndr, &r->sid_index)); buffers: if (!(ndr_flags & NDR_BUFFERS)) goto done; + NDR_CHECK(ndr_pull_lsa_Name(ndr, ndr_flags, &r->name)); done: return NT_STATUS_OK; } -static NTSTATUS ndr_push_lsa_TransSidArray(struct ndr_push *ndr, int ndr_flags, struct lsa_TransSidArray *r) +static NTSTATUS ndr_push_lsa_TransNameArray(struct ndr_push *ndr, int ndr_flags, struct lsa_TransNameArray *r) { if (!(ndr_flags & NDR_SCALARS)) goto buffers; NDR_CHECK(ndr_push_uint32(ndr, r->count)); - NDR_CHECK(ndr_push_ptr(ndr, r->sids)); + NDR_CHECK(ndr_push_ptr(ndr, r->names)); buffers: if (!(ndr_flags & NDR_BUFFERS)) goto done; - if (r->sids) { - NDR_CHECK(ndr_push_array(ndr, ndr_flags, r->sids, sizeof(r->sids[0]), r->count, (ndr_push_flags_fn_t)ndr_push_lsa_TranslatedSid)); + if (r->names) { + NDR_CHECK(ndr_push_array(ndr, ndr_flags, r->names, sizeof(r->names[0]), r->count, (ndr_push_flags_fn_t)ndr_push_lsa_TranslatedName)); } done: return NT_STATUS_OK; } -static NTSTATUS ndr_pull_lsa_TransSidArray(struct ndr_pull *ndr, int ndr_flags, struct lsa_TransSidArray *r) +static NTSTATUS ndr_pull_lsa_TransNameArray(struct ndr_pull *ndr, int ndr_flags, struct lsa_TransNameArray *r) { - uint32 _ptr_sids; + uint32 _ptr_names; if (!(ndr_flags & NDR_SCALARS)) goto buffers; NDR_CHECK(ndr_pull_uint32(ndr, &r->count)); - NDR_CHECK(ndr_pull_uint32(ndr, &_ptr_sids)); - if (_ptr_sids) { - NDR_ALLOC(ndr, r->sids); + NDR_CHECK(ndr_pull_uint32(ndr, &_ptr_names)); + if (_ptr_names) { + NDR_ALLOC(ndr, r->names); } else { - r->sids = NULL; + r->names = NULL; } buffers: if (!(ndr_flags & NDR_BUFFERS)) goto done; - if (r->sids) { - NDR_ALLOC_N_SIZE(ndr, r->sids, r->count, sizeof(r->sids[0])); - NDR_CHECK(ndr_pull_array(ndr, ndr_flags, (void **)r->sids, sizeof(r->sids[0]), r->count, (ndr_pull_flags_fn_t)ndr_pull_lsa_TranslatedSid)); + if (r->names) { + NDR_ALLOC_N_SIZE(ndr, r->names, r->count, sizeof(r->names[0])); + NDR_CHECK(ndr_pull_array(ndr, ndr_flags, (void **)r->names, sizeof(r->names[0]), r->count, (ndr_pull_flags_fn_t)ndr_pull_lsa_TranslatedName)); } done: return NT_STATUS_OK; } -NTSTATUS ndr_push_lsa_LookupNames(struct ndr_push *ndr, struct lsa_LookupNames *r) +NTSTATUS ndr_push_lsa_LookupSids(struct ndr_push *ndr, struct lsa_LookupSids *r) { NDR_CHECK(ndr_push_policy_handle(ndr, r->in.handle)); - NDR_CHECK(ndr_push_uint32(ndr, r->in.num_names)); - if (r->in.names) { - int ndr_flags = NDR_SCALARS|NDR_BUFFERS; - NDR_CHECK(ndr_push_array(ndr, ndr_flags, r->in.names, sizeof(r->in.names[0]), r->in.num_names, (ndr_push_flags_fn_t)ndr_push_lsa_Name)); - } - NDR_CHECK(ndr_push_lsa_TransSidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids)); + NDR_CHECK(ndr_push_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids)); + NDR_CHECK(ndr_push_lsa_TransNameArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.names)); NDR_CHECK(ndr_push_uint16(ndr, r->in.level)); NDR_CHECK(ndr_push_uint32(ndr, *r->in.count)); return NT_STATUS_OK; } -NTSTATUS ndr_pull_lsa_LookupNames(struct ndr_pull *ndr, struct lsa_LookupNames *r) +NTSTATUS ndr_pull_lsa_LookupSids(struct ndr_pull *ndr, struct lsa_LookupSids *r) { uint32 _ptr_domains; NDR_ALLOC(ndr, r->out.domains); @@ -547,10 +684,420 @@ NTSTATUS ndr_pull_lsa_LookupNames(struct ndr_pull *ndr, struct lsa_LookupNames * if (r->out.domains) { NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains)); } - NDR_CHECK(ndr_pull_lsa_TransSidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids)); + NDR_CHECK(ndr_pull_lsa_TransNameArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.names)); NDR_CHECK(ndr_pull_uint32(ndr, r->out.count)); NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); return NT_STATUS_OK; } +NTSTATUS ndr_push_CREATESECRET(struct ndr_push *ndr, struct CREATESECRET *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_CREATESECRET(struct ndr_pull *ndr, struct CREATESECRET *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_OPENACCOUNT(struct ndr_push *ndr, struct OPENACCOUNT *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_OPENACCOUNT(struct ndr_pull *ndr, struct OPENACCOUNT *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_ENUMPRIVSACCOUNT(struct ndr_push *ndr, struct ENUMPRIVSACCOUNT *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_ENUMPRIVSACCOUNT(struct ndr_pull *ndr, struct ENUMPRIVSACCOUNT *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_ADDPRIVS(struct ndr_push *ndr, struct ADDPRIVS *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_ADDPRIVS(struct ndr_pull *ndr, struct ADDPRIVS *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_REMOVEPRIVS(struct ndr_push *ndr, struct REMOVEPRIVS *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_REMOVEPRIVS(struct ndr_pull *ndr, struct REMOVEPRIVS *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_GETQUOTAS(struct ndr_push *ndr, struct GETQUOTAS *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_GETQUOTAS(struct ndr_pull *ndr, struct GETQUOTAS *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_SETQUOTAS(struct ndr_push *ndr, struct SETQUOTAS *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_SETQUOTAS(struct ndr_pull *ndr, struct SETQUOTAS *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_GETSYSTEMACCOUNT(struct ndr_push *ndr, struct GETSYSTEMACCOUNT *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_GETSYSTEMACCOUNT(struct ndr_pull *ndr, struct GETSYSTEMACCOUNT *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_SETSYSTEMACCOUNT(struct ndr_push *ndr, struct SETSYSTEMACCOUNT *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_SETSYSTEMACCOUNT(struct ndr_pull *ndr, struct SETSYSTEMACCOUNT *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_OPENTRUSTDOM(struct ndr_push *ndr, struct OPENTRUSTDOM *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_OPENTRUSTDOM(struct ndr_pull *ndr, struct OPENTRUSTDOM *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_QUERYTRUSTDOM(struct ndr_push *ndr, struct QUERYTRUSTDOM *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_QUERYTRUSTDOM(struct ndr_pull *ndr, struct QUERYTRUSTDOM *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_SETINFOTRUSTDOM(struct ndr_push *ndr, struct SETINFOTRUSTDOM *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_SETINFOTRUSTDOM(struct ndr_pull *ndr, struct SETINFOTRUSTDOM *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_OPENSECRET(struct ndr_push *ndr, struct OPENSECRET *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_OPENSECRET(struct ndr_pull *ndr, struct OPENSECRET *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_SETSECRET(struct ndr_push *ndr, struct SETSECRET *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_SETSECRET(struct ndr_pull *ndr, struct SETSECRET *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_QUERYSECRET(struct ndr_push *ndr, struct QUERYSECRET *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_QUERYSECRET(struct ndr_pull *ndr, struct QUERYSECRET *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_LOOKUPPRIVVALUE(struct ndr_push *ndr, struct LOOKUPPRIVVALUE *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_LOOKUPPRIVVALUE(struct ndr_pull *ndr, struct LOOKUPPRIVVALUE *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_LOOKUPPRIVNAME(struct ndr_push *ndr, struct LOOKUPPRIVNAME *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_LOOKUPPRIVNAME(struct ndr_pull *ndr, struct LOOKUPPRIVNAME *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_PRIV_GET_DISPNAME(struct ndr_push *ndr, struct PRIV_GET_DISPNAME *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_PRIV_GET_DISPNAME(struct ndr_pull *ndr, struct PRIV_GET_DISPNAME *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_DELETEOBJECT(struct ndr_push *ndr, struct DELETEOBJECT *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_DELETEOBJECT(struct ndr_pull *ndr, struct DELETEOBJECT *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_ENUMACCTWITHRIGHT(struct ndr_push *ndr, struct ENUMACCTWITHRIGHT *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_ENUMACCTWITHRIGHT(struct ndr_pull *ndr, struct ENUMACCTWITHRIGHT *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_ENUMACCTRIGHTS(struct ndr_push *ndr, struct ENUMACCTRIGHTS *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_ENUMACCTRIGHTS(struct ndr_pull *ndr, struct ENUMACCTRIGHTS *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_ADDACCTRIGHTS(struct ndr_push *ndr, struct ADDACCTRIGHTS *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_ADDACCTRIGHTS(struct ndr_pull *ndr, struct ADDACCTRIGHTS *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_REMOVEACCTRIGHTS(struct ndr_push *ndr, struct REMOVEACCTRIGHTS *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_REMOVEACCTRIGHTS(struct ndr_pull *ndr, struct REMOVEACCTRIGHTS *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_QUERYTRUSTDOMINFO(struct ndr_push *ndr, struct QUERYTRUSTDOMINFO *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_QUERYTRUSTDOMINFO(struct ndr_pull *ndr, struct QUERYTRUSTDOMINFO *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_SETTRUSTDOMINFO(struct ndr_push *ndr, struct SETTRUSTDOMINFO *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_SETTRUSTDOMINFO(struct ndr_pull *ndr, struct SETTRUSTDOMINFO *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_DELETETRUSTDOM(struct ndr_push *ndr, struct DELETETRUSTDOM *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_DELETETRUSTDOM(struct ndr_pull *ndr, struct DELETETRUSTDOM *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_STOREPRIVDATA(struct ndr_push *ndr, struct STOREPRIVDATA *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_STOREPRIVDATA(struct ndr_pull *ndr, struct STOREPRIVDATA *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_RETRPRIVDATA(struct ndr_push *ndr, struct RETRPRIVDATA *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_RETRPRIVDATA(struct ndr_pull *ndr, struct RETRPRIVDATA *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_lsa_OpenPolicy2(struct ndr_push *ndr, struct lsa_OpenPolicy2 *r) +{ + NDR_CHECK(ndr_push_ptr(ndr, r->in.system_name)); + if (r->in.system_name) { + NDR_CHECK(ndr_push_unistr(ndr, r->in.system_name)); + } + NDR_CHECK(ndr_push_lsa_ObjectAttribute(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.attr)); + NDR_CHECK(ndr_push_uint32(ndr, r->in.desired_access)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_lsa_OpenPolicy2(struct ndr_pull *ndr, struct lsa_OpenPolicy2 *r) +{ + NDR_CHECK(ndr_pull_policy_handle(ndr, r->out.handle)); + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_UNK_GET_CONNUSER(struct ndr_push *ndr, struct UNK_GET_CONNUSER *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_UNK_GET_CONNUSER(struct ndr_pull *ndr, struct UNK_GET_CONNUSER *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + +NTSTATUS ndr_push_QUERYINFO2(struct ndr_push *ndr, struct QUERYINFO2 *r) +{ + + return NT_STATUS_OK; +} + +NTSTATUS ndr_pull_QUERYINFO2(struct ndr_pull *ndr, struct QUERYINFO2 *r) +{ + NDR_CHECK(ndr_pull_NTSTATUS(ndr, &r->out.result)); + + return NT_STATUS_OK; +} + diff --git a/source4/librpc/ndr/ndr_lsa.h b/source4/librpc/ndr/ndr_lsa.h index ddb0eed323..92f596b692 100644 --- a/source4/librpc/ndr/ndr_lsa.h +++ b/source4/librpc/ndr/ndr_lsa.h @@ -1,5 +1,66 @@ /* header auto-generated by pidl */ +struct lsa_Close { + struct { + struct policy_handle *handle; + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct lsa_Delete { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct lsa_EnumPrivs { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct lsa_QuerySecObj { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct lsa_SetSecObj { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct lsa_ChangePassword { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + struct lsa_QosInfo { uint16 impersonation_level; uint8 context_mode; @@ -28,15 +89,41 @@ struct lsa_OpenPolicy { }; -struct lsa_OpenPolicy2 { +struct lsa_QueryInfoPolicy { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct lsa_SetInfoPolicy { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct lsa_ClearAuditLog { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct lsa_CreateAccount { struct { - const char *system_name; - struct lsa_ObjectAttribute *attr; - uint32 desired_access; } in; struct { - struct policy_handle *handle; NTSTATUS result; } out; @@ -51,7 +138,7 @@ struct lsa_SidArray { struct lsa_SidPtr *sids; }; -struct lsa_EnumSids { +struct lsa_EnumAccounts { struct { struct policy_handle *handle; uint32 *resume_handle; @@ -66,21 +153,41 @@ struct lsa_EnumSids { }; +struct lsa_CreateTrustDom { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct lsa_EnumTrustDom { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + struct lsa_Name { uint16 name_len; uint16 name_size; const char *name; }; -struct lsa_TranslatedName { +struct lsa_TranslatedSid { uint16 sid_type; - struct lsa_Name name; + uint32 rid; uint32 sid_index; }; -struct lsa_TransNameArray { +struct lsa_TransSidArray { uint32 count; - struct lsa_TranslatedName *names; + struct lsa_TranslatedSid *sids; }; struct lsa_TrustInformation { @@ -94,56 +201,412 @@ struct lsa_RefDomainList { uint32 max_count; }; -struct lsa_LookupSids { +struct lsa_LookupNames { struct { struct policy_handle *handle; - struct lsa_SidArray *sids; - struct lsa_TransNameArray *names; + uint32 num_names; + struct lsa_Name *names; + struct lsa_TransSidArray *sids; uint16 level; uint32 *count; } in; struct { struct lsa_RefDomainList *domains; - struct lsa_TransNameArray *names; + struct lsa_TransSidArray *sids; uint32 *count; NTSTATUS result; } out; }; -struct lsa_TranslatedSid { +struct lsa_TranslatedName { uint16 sid_type; - uint32 rid; + struct lsa_Name name; uint32 sid_index; }; -struct lsa_TransSidArray { +struct lsa_TransNameArray { uint32 count; - struct lsa_TranslatedSid *sids; + struct lsa_TranslatedName *names; }; -struct lsa_LookupNames { +struct lsa_LookupSids { struct { struct policy_handle *handle; - uint32 num_names; - struct lsa_Name *names; - struct lsa_TransSidArray *sids; + struct lsa_SidArray *sids; + struct lsa_TransNameArray *names; uint16 level; uint32 *count; } in; struct { struct lsa_RefDomainList *domains; - struct lsa_TransSidArray *sids; + struct lsa_TransNameArray *names; uint32 *count; NTSTATUS result; } out; }; -#define DCERPC_LSA_OPENPOLICY 0 -#define DCERPC_LSA_OPENPOLICY2 1 -#define DCERPC_LSA_ENUMSIDS 2 -#define DCERPC_LSA_LOOKUPSIDS 3 -#define DCERPC_LSA_LOOKUPNAMES 4 +struct CREATESECRET { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct OPENACCOUNT { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct ENUMPRIVSACCOUNT { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct ADDPRIVS { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct REMOVEPRIVS { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct GETQUOTAS { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct SETQUOTAS { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct GETSYSTEMACCOUNT { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct SETSYSTEMACCOUNT { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct OPENTRUSTDOM { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct QUERYTRUSTDOM { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct SETINFOTRUSTDOM { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct OPENSECRET { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct SETSECRET { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct QUERYSECRET { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct LOOKUPPRIVVALUE { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct LOOKUPPRIVNAME { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct PRIV_GET_DISPNAME { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct DELETEOBJECT { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct ENUMACCTWITHRIGHT { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct ENUMACCTRIGHTS { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct ADDACCTRIGHTS { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct REMOVEACCTRIGHTS { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct QUERYTRUSTDOMINFO { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct SETTRUSTDOMINFO { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct DELETETRUSTDOM { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct STOREPRIVDATA { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct RETRPRIVDATA { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct lsa_OpenPolicy2 { + struct { + const char *system_name; + struct lsa_ObjectAttribute *attr; + uint32 desired_access; + } in; + + struct { + struct policy_handle *handle; + NTSTATUS result; + } out; + +}; + +struct UNK_GET_CONNUSER { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +struct QUERYINFO2 { + struct { + } in; + + struct { + NTSTATUS result; + } out; + +}; + +#define DCERPC_LSA_CLOSE 0 +#define DCERPC_LSA_DELETE 1 +#define DCERPC_LSA_ENUMPRIVS 2 +#define DCERPC_LSA_QUERYSECOBJ 3 +#define DCERPC_LSA_SETSECOBJ 4 +#define DCERPC_LSA_CHANGEPASSWORD 5 +#define DCERPC_LSA_OPENPOLICY 6 +#define DCERPC_LSA_QUERYINFOPOLICY 7 +#define DCERPC_LSA_SETINFOPOLICY 8 +#define DCERPC_LSA_CLEARAUDITLOG 9 +#define DCERPC_LSA_CREATEACCOUNT 10 +#define DCERPC_LSA_ENUMACCOUNTS 11 +#define DCERPC_LSA_CREATETRUSTDOM 12 +#define DCERPC_LSA_ENUMTRUSTDOM 13 +#define DCERPC_LSA_LOOKUPNAMES 14 +#define DCERPC_LSA_LOOKUPSIDS 15 +#define DCERPC_CREATESECRET 16 +#define DCERPC_OPENACCOUNT 17 +#define DCERPC_ENUMPRIVSACCOUNT 18 +#define DCERPC_ADDPRIVS 19 +#define DCERPC_REMOVEPRIVS 20 +#define DCERPC_GETQUOTAS 21 +#define DCERPC_SETQUOTAS 22 +#define DCERPC_GETSYSTEMACCOUNT 23 +#define DCERPC_SETSYSTEMACCOUNT 24 +#define DCERPC_OPENTRUSTDOM 25 +#define DCERPC_QUERYTRUSTDOM 26 +#define DCERPC_SETINFOTRUSTDOM 27 +#define DCERPC_OPENSECRET 28 +#define DCERPC_SETSECRET 29 +#define DCERPC_QUERYSECRET 30 +#define DCERPC_LOOKUPPRIVVALUE 31 +#define DCERPC_LOOKUPPRIVNAME 32 +#define DCERPC_PRIV_GET_DISPNAME 33 +#define DCERPC_DELETEOBJECT 34 +#define DCERPC_ENUMACCTWITHRIGHT 35 +#define DCERPC_ENUMACCTRIGHTS 36 +#define DCERPC_ADDACCTRIGHTS 37 +#define DCERPC_REMOVEACCTRIGHTS 38 +#define DCERPC_QUERYTRUSTDOMINFO 39 +#define DCERPC_SETTRUSTDOMINFO 40 +#define DCERPC_DELETETRUSTDOM 41 +#define DCERPC_STOREPRIVDATA 42 +#define DCERPC_RETRPRIVDATA 43 +#define DCERPC_LSA_OPENPOLICY2 44 +#define DCERPC_UNK_GET_CONNUSER 45 +#define DCERPC_QUERYINFO2 46 |