- fixed lsa_EnumTrustDom
[ira/wip.git] / source / librpc / rpc / rpc_lsa.c
index 2eff2838fc2f286d502de09029d852f5ffb8dc4f..c5c18fe7ea3c87e360a287e7a59a0e449b658863 100644 (file)
-/* 
-   Unix SMB/CIFS implementation.
-
-   rpc lsa pipe calls
-
-   Copyright (C) Andrew Tridgell 2003
-   
-   This program is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2 of the License, or
-   (at your option) any later version.
-   
-   This program is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-   GNU General Public License for more details.
-   
-   You should have received a copy of the GNU General Public License
-   along with this program; if not, write to the Free Software
-   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-*/
+/* dcerpc client calls auto-generated by pidl */
 
 #include "includes.h"
 
 
-/*
-  OpenPolicy interface
-*/
-NTSTATUS dcerpc_lsa_OpenPolicy(struct dcerpc_pipe *p,
-                              const char *server,
-                              struct lsa_ObjectAttribute *attr,
-                              uint32 access_mask,
-                              struct policy_handle *handle)
+NTSTATUS dcerpc_lsa_Close(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct lsa_Close *r)
 {
-       struct lsa_OpenPolicy r;
        NTSTATUS status;
-       TALLOC_CTX *mem_ctx;
-       uint16 s;
+       status = dcerpc_ndr_request(p, DCERPC_LSA_CLOSE, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_lsa_Close,
+                                   (ndr_pull_fn_t) ndr_pull_lsa_Close,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
 
-       mem_ctx = talloc_init("dcerpc_lsa_openpolicy");
-       if (!mem_ctx) {
-               return NT_STATUS_NO_MEMORY;
+NTSTATUS dcerpc_lsa_Delete(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct lsa_Delete *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_LSA_DELETE, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_lsa_Delete,
+                                   (ndr_pull_fn_t) ndr_pull_lsa_Delete,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
        }
+       
+       return r->out.result;
+}
 
-       /* fill the .in side of the call */
-       s = server[0];
-       r.in.system_name = &s;
-       r.in.attr = attr;
-       r.in.desired_access = access_mask;
-       r.out.handle = handle;
+NTSTATUS dcerpc_lsa_EnumPrivs(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct lsa_EnumPrivs *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_LSA_ENUMPRIVS, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_lsa_EnumPrivs,
+                                   (ndr_pull_fn_t) ndr_pull_lsa_EnumPrivs,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_lsa_QuerySecObj(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct lsa_QuerySecObj *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_LSA_QUERYSECOBJ, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_lsa_QuerySecObj,
+                                   (ndr_pull_fn_t) ndr_pull_lsa_QuerySecObj,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_lsa_SetSecObj(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct lsa_SetSecObj *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_LSA_SETSECOBJ, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_lsa_SetSecObj,
+                                   (ndr_pull_fn_t) ndr_pull_lsa_SetSecObj,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_lsa_ChangePassword(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct lsa_ChangePassword *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_LSA_CHANGEPASSWORD, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_lsa_ChangePassword,
+                                   (ndr_pull_fn_t) ndr_pull_lsa_ChangePassword,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
 
-       /* make the call */
-       status = dcerpc_ndr_request(p, LSA_OPENPOLICY, mem_ctx,
+NTSTATUS dcerpc_lsa_OpenPolicy(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct lsa_OpenPolicy *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_LSA_OPENPOLICY, mem_ctx,
                                    (ndr_push_fn_t) ndr_push_lsa_OpenPolicy,
                                    (ndr_pull_fn_t) ndr_pull_lsa_OpenPolicy,
-                                   &r);
+                                   r);
        if (!NT_STATUS_IS_OK(status)) {
-               goto done;
+               return status;
        }
        
-       /* and extract the .out parameters */
-       status = r.out.result;
+       return r->out.result;
+}
 
-done:
-       talloc_destroy(mem_ctx);
-       return status;
+NTSTATUS dcerpc_lsa_QueryInfoPolicy(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct lsa_QueryInfoPolicy *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_LSA_QUERYINFOPOLICY, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_lsa_QueryInfoPolicy,
+                                   (ndr_pull_fn_t) ndr_pull_lsa_QueryInfoPolicy,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
 }
 
+NTSTATUS dcerpc_lsa_SetInfoPolicy(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct lsa_SetInfoPolicy *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_LSA_SETINFOPOLICY, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_lsa_SetInfoPolicy,
+                                   (ndr_pull_fn_t) ndr_pull_lsa_SetInfoPolicy,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
 
-/*
-  OpenPolicy2 interface
-*/
-NTSTATUS dcerpc_lsa_OpenPolicy2(struct dcerpc_pipe *p,
-                               const char *server,
-                               struct lsa_ObjectAttribute *attr,
-                               uint32 access_mask,
-                               struct policy_handle *handle)
+NTSTATUS dcerpc_lsa_ClearAuditLog(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct lsa_ClearAuditLog *r)
 {
-       struct lsa_OpenPolicy2 r;
        NTSTATUS status;
-       TALLOC_CTX *mem_ctx;
+       status = dcerpc_ndr_request(p, DCERPC_LSA_CLEARAUDITLOG, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_lsa_ClearAuditLog,
+                                   (ndr_pull_fn_t) ndr_pull_lsa_ClearAuditLog,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
 
-       mem_ctx = talloc_init("dcerpc_lsa_openpolicy2");
-       if (!mem_ctx) {
-               return NT_STATUS_NO_MEMORY;
+NTSTATUS dcerpc_lsa_CreateAccount(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct lsa_CreateAccount *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_LSA_CREATEACCOUNT, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_lsa_CreateAccount,
+                                   (ndr_pull_fn_t) ndr_pull_lsa_CreateAccount,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
        }
+       
+       return r->out.result;
+}
 
-       /* fill the .in side of the call */
-       r.in.system_name = server;
-       r.in.attr = attr;
-       r.in.desired_access = access_mask;
-       r.out.handle = handle;
+NTSTATUS dcerpc_lsa_EnumAccounts(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct lsa_EnumAccounts *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_LSA_ENUMACCOUNTS, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_lsa_EnumAccounts,
+                                   (ndr_pull_fn_t) ndr_pull_lsa_EnumAccounts,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
 
-       /* make the call */
-       status = dcerpc_ndr_request(p, LSA_OPENPOLICY2, mem_ctx,
-                                   (ndr_push_fn_t) ndr_push_lsa_OpenPolicy2,
-                                   (ndr_pull_fn_t) ndr_pull_lsa_OpenPolicy2,
-                                   &r);
+NTSTATUS dcerpc_lsa_CreateTrustDom(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct lsa_CreateTrustDom *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_LSA_CREATETRUSTDOM, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_lsa_CreateTrustDom,
+                                   (ndr_pull_fn_t) ndr_pull_lsa_CreateTrustDom,
+                                   r);
        if (!NT_STATUS_IS_OK(status)) {
-               goto done;
+               return status;
        }
        
-       /* and extract the .out parameters */
-       status = r.out.result;
+       return r->out.result;
+}
 
-done:
-       talloc_destroy(mem_ctx);
-       return status;
+NTSTATUS dcerpc_lsa_EnumTrustDom(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct lsa_EnumTrustDom *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_LSA_ENUMTRUSTDOM, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_lsa_EnumTrustDom,
+                                   (ndr_pull_fn_t) ndr_pull_lsa_EnumTrustDom,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
 }
 
-/*
-  EnumSids interface
-*/
-NTSTATUS dcerpc_lsa_EnumSids(struct dcerpc_pipe *p,
-                            TALLOC_CTX *mem_ctx,
-                            struct policy_handle *handle,
-                            uint32 *resume_handle,
-                            uint32 num_entries,
-                            struct lsa_SidArray *sids)
+NTSTATUS dcerpc_lsa_LookupNames(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct lsa_LookupNames *r)
 {
-       struct lsa_EnumSids r;
        NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_LSA_LOOKUPNAMES, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_lsa_LookupNames,
+                                   (ndr_pull_fn_t) ndr_pull_lsa_LookupNames,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
 
-       /* fill the .in side of the call */
-       r.in.handle = handle;
-       r.in.resume_handle = resume_handle;
-       r.in.num_entries = num_entries;
+NTSTATUS dcerpc_lsa_LookupSids(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct lsa_LookupSids *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_LSA_LOOKUPSIDS, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_lsa_LookupSids,
+                                   (ndr_pull_fn_t) ndr_pull_lsa_LookupSids,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_CREATESECRET(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct CREATESECRET *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_CREATESECRET, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_CREATESECRET,
+                                   (ndr_pull_fn_t) ndr_pull_CREATESECRET,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_lsa_OpenAccount(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct lsa_OpenAccount *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_LSA_OPENACCOUNT, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_lsa_OpenAccount,
+                                   (ndr_pull_fn_t) ndr_pull_lsa_OpenAccount,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_ENUMPRIVSACCOUNT(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct ENUMPRIVSACCOUNT *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_ENUMPRIVSACCOUNT, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_ENUMPRIVSACCOUNT,
+                                   (ndr_pull_fn_t) ndr_pull_ENUMPRIVSACCOUNT,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
 
-       r.out.resume_handle = resume_handle;
-       r.out.sids = sids;
+NTSTATUS dcerpc_ADDPRIVS(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct ADDPRIVS *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_ADDPRIVS, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_ADDPRIVS,
+                                   (ndr_pull_fn_t) ndr_pull_ADDPRIVS,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
 
-       /* make the call */
-       status = dcerpc_ndr_request(p, LSA_ENUM_ACCOUNTS, mem_ctx,
-                                   (ndr_push_fn_t) ndr_push_lsa_EnumSids,
-                                   (ndr_pull_fn_t) ndr_pull_lsa_EnumSids,
-                                   &r);
+NTSTATUS dcerpc_REMOVEPRIVS(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct REMOVEPRIVS *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_REMOVEPRIVS, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_REMOVEPRIVS,
+                                   (ndr_pull_fn_t) ndr_pull_REMOVEPRIVS,
+                                   r);
        if (!NT_STATUS_IS_OK(status)) {
-               goto done;
+               return status;
        }
        
-       /* and extract the .out parameters */
-       status = r.out.result;
+       return r->out.result;
+}
 
-done:
-       return status;
+NTSTATUS dcerpc_GETQUOTAS(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct GETQUOTAS *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_GETQUOTAS, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_GETQUOTAS,
+                                   (ndr_pull_fn_t) ndr_pull_GETQUOTAS,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
 }
 
-/*
-  LookupSids interface
-*/
-NTSTATUS dcerpc_lsa_LookupSids(struct dcerpc_pipe *p,
-                              TALLOC_CTX *mem_ctx,
-                              struct lsa_LookupSids *r)
+NTSTATUS dcerpc_SETQUOTAS(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct SETQUOTAS *r)
 {
        NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_SETQUOTAS, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_SETQUOTAS,
+                                   (ndr_pull_fn_t) ndr_pull_SETQUOTAS,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
 
-       status = dcerpc_ndr_request(p, LSA_LOOKUPSIDS, mem_ctx,
-                                   (ndr_push_fn_t) ndr_push_lsa_LookupSids,
-                                   (ndr_pull_fn_t) ndr_pull_lsa_LookupSids,
+NTSTATUS dcerpc_GETSYSTEMACCOUNT(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct GETSYSTEMACCOUNT *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_GETSYSTEMACCOUNT, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_GETSYSTEMACCOUNT,
+                                   (ndr_pull_fn_t) ndr_pull_GETSYSTEMACCOUNT,
                                    r);
        if (!NT_STATUS_IS_OK(status)) {
                return status;
@@ -165,18 +339,320 @@ NTSTATUS dcerpc_lsa_LookupSids(struct dcerpc_pipe *p,
        return r->out.result;
 }
 
-/*
-  LookupNames interface
-*/
-NTSTATUS dcerpc_lsa_LookupNames(struct dcerpc_pipe *p,
-                              TALLOC_CTX *mem_ctx,
-                              struct lsa_LookupNames *r)
+NTSTATUS dcerpc_SETSYSTEMACCOUNT(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct SETSYSTEMACCOUNT *r)
 {
        NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_SETSYSTEMACCOUNT, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_SETSYSTEMACCOUNT,
+                                   (ndr_pull_fn_t) ndr_pull_SETSYSTEMACCOUNT,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
 
-       status = dcerpc_ndr_request(p, LSA_LOOKUPNAMES, mem_ctx,
-                                   (ndr_push_fn_t) ndr_push_lsa_LookupNames,
-                                   (ndr_pull_fn_t) ndr_pull_lsa_LookupNames,
+NTSTATUS dcerpc_OPENTRUSTDOM(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct OPENTRUSTDOM *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_OPENTRUSTDOM, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_OPENTRUSTDOM,
+                                   (ndr_pull_fn_t) ndr_pull_OPENTRUSTDOM,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_QUERYTRUSTDOM(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct QUERYTRUSTDOM *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_QUERYTRUSTDOM, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_QUERYTRUSTDOM,
+                                   (ndr_pull_fn_t) ndr_pull_QUERYTRUSTDOM,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_SETINFOTRUSTDOM(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct SETINFOTRUSTDOM *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_SETINFOTRUSTDOM, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_SETINFOTRUSTDOM,
+                                   (ndr_pull_fn_t) ndr_pull_SETINFOTRUSTDOM,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_OPENSECRET(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct OPENSECRET *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_OPENSECRET, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_OPENSECRET,
+                                   (ndr_pull_fn_t) ndr_pull_OPENSECRET,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_SETSECRET(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct SETSECRET *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_SETSECRET, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_SETSECRET,
+                                   (ndr_pull_fn_t) ndr_pull_SETSECRET,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_QUERYSECRET(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct QUERYSECRET *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_QUERYSECRET, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_QUERYSECRET,
+                                   (ndr_pull_fn_t) ndr_pull_QUERYSECRET,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_LOOKUPPRIVVALUE(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct LOOKUPPRIVVALUE *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_LOOKUPPRIVVALUE, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_LOOKUPPRIVVALUE,
+                                   (ndr_pull_fn_t) ndr_pull_LOOKUPPRIVVALUE,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_LOOKUPPRIVNAME(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct LOOKUPPRIVNAME *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_LOOKUPPRIVNAME, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_LOOKUPPRIVNAME,
+                                   (ndr_pull_fn_t) ndr_pull_LOOKUPPRIVNAME,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_PRIV_GET_DISPNAME(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct PRIV_GET_DISPNAME *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_PRIV_GET_DISPNAME, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_PRIV_GET_DISPNAME,
+                                   (ndr_pull_fn_t) ndr_pull_PRIV_GET_DISPNAME,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_DELETEOBJECT(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct DELETEOBJECT *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_DELETEOBJECT, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_DELETEOBJECT,
+                                   (ndr_pull_fn_t) ndr_pull_DELETEOBJECT,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_ENUMACCTWITHRIGHT(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct ENUMACCTWITHRIGHT *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_ENUMACCTWITHRIGHT, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_ENUMACCTWITHRIGHT,
+                                   (ndr_pull_fn_t) ndr_pull_ENUMACCTWITHRIGHT,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_ENUMACCTRIGHTS(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct ENUMACCTRIGHTS *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_ENUMACCTRIGHTS, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_ENUMACCTRIGHTS,
+                                   (ndr_pull_fn_t) ndr_pull_ENUMACCTRIGHTS,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_ADDACCTRIGHTS(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct ADDACCTRIGHTS *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_ADDACCTRIGHTS, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_ADDACCTRIGHTS,
+                                   (ndr_pull_fn_t) ndr_pull_ADDACCTRIGHTS,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_REMOVEACCTRIGHTS(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct REMOVEACCTRIGHTS *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_REMOVEACCTRIGHTS, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_REMOVEACCTRIGHTS,
+                                   (ndr_pull_fn_t) ndr_pull_REMOVEACCTRIGHTS,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_QUERYTRUSTDOMINFO(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct QUERYTRUSTDOMINFO *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_QUERYTRUSTDOMINFO, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_QUERYTRUSTDOMINFO,
+                                   (ndr_pull_fn_t) ndr_pull_QUERYTRUSTDOMINFO,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_SETTRUSTDOMINFO(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct SETTRUSTDOMINFO *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_SETTRUSTDOMINFO, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_SETTRUSTDOMINFO,
+                                   (ndr_pull_fn_t) ndr_pull_SETTRUSTDOMINFO,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_DELETETRUSTDOM(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct DELETETRUSTDOM *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_DELETETRUSTDOM, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_DELETETRUSTDOM,
+                                   (ndr_pull_fn_t) ndr_pull_DELETETRUSTDOM,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_STOREPRIVDATA(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct STOREPRIVDATA *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_STOREPRIVDATA, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_STOREPRIVDATA,
+                                   (ndr_pull_fn_t) ndr_pull_STOREPRIVDATA,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_RETRPRIVDATA(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct RETRPRIVDATA *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_RETRPRIVDATA, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_RETRPRIVDATA,
+                                   (ndr_pull_fn_t) ndr_pull_RETRPRIVDATA,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_lsa_OpenPolicy2(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct lsa_OpenPolicy2 *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_LSA_OPENPOLICY2, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_lsa_OpenPolicy2,
+                                   (ndr_pull_fn_t) ndr_pull_lsa_OpenPolicy2,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_UNK_GET_CONNUSER(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct UNK_GET_CONNUSER *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_UNK_GET_CONNUSER, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_UNK_GET_CONNUSER,
+                                   (ndr_pull_fn_t) ndr_pull_UNK_GET_CONNUSER,
+                                   r);
+       if (!NT_STATUS_IS_OK(status)) {
+               return status;
+       }
+       
+       return r->out.result;
+}
+
+NTSTATUS dcerpc_QUERYINFO2(struct dcerpc_pipe *p, TALLOC_CTX *mem_ctx, struct QUERYINFO2 *r)
+{
+       NTSTATUS status;
+       status = dcerpc_ndr_request(p, DCERPC_QUERYINFO2, mem_ctx,
+                                   (ndr_push_fn_t) ndr_push_QUERYINFO2,
+                                   (ndr_pull_fn_t) ndr_pull_QUERYINFO2,
                                    r);
        if (!NT_STATUS_IS_OK(status)) {
                return status;