[SCM] Samba Shared Repository - branch v3-5-test updated

Karolin Seeger kseeger at samba.org
Tue Jul 5 11:45:26 MDT 2011


The branch, v3-5-test has been updated
       via  12a4b56 s3:librpc/gen_ndr: regen after wbint.idl changes
      from  48355da s3:nmbd_subnetdb: close all sockets attached to a subnet in close_subnet() (bug #8276)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-5-test


- Log -----------------------------------------------------------------
commit 12a4b5633d5c3488f48f3e7a5084402f6eeeb9c5
Author: Stefan Metzmacher <metze at samba.org>
Date:   Mon Jul 4 11:47:24 2011 +0200

    s3:librpc/gen_ndr: regen after wbint.idl changes
    
    metze
    
    Part of a fix for bug #7841 (WINBINDD_LOOKUPRIDS asks the wrong domain).

-----------------------------------------------------------------------

Summary of changes:
 source3/librpc/gen_ndr/cli_wbint.c |    4 ++++
 source3/librpc/gen_ndr/cli_wbint.h |    2 ++
 source3/librpc/gen_ndr/ndr_wbint.c |   16 ++++++++++++++++
 source3/librpc/gen_ndr/wbint.h     |    1 +
 4 files changed, 23 insertions(+), 0 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/librpc/gen_ndr/cli_wbint.c b/source3/librpc/gen_ndr/cli_wbint.c
index 7200d2a..bf6b04b 100644
--- a/source3/librpc/gen_ndr/cli_wbint.c
+++ b/source3/librpc/gen_ndr/cli_wbint.c
@@ -2508,6 +2508,7 @@ static void rpccli_wbint_LookupRids_done(struct tevent_req *subreq);
 struct tevent_req *rpccli_wbint_LookupRids_send(TALLOC_CTX *mem_ctx,
 						struct tevent_context *ev,
 						struct rpc_pipe_client *cli,
+						struct dom_sid *_domain_sid /* [in] [ref] */,
 						struct wbint_RidArray *_rids /* [in] [ref] */,
 						const char **_domain_name /* [out] [ref,charset(UTF8)] */,
 						struct wbint_Principals *_names /* [out] [ref] */)
@@ -2525,6 +2526,7 @@ struct tevent_req *rpccli_wbint_LookupRids_send(TALLOC_CTX *mem_ctx,
 	state->dispatch_recv = cli->dispatch_recv;
 
 	/* In parameters */
+	state->orig.in.domain_sid = _domain_sid;
 	state->orig.in.rids = _rids;
 
 	/* Out parameters */
@@ -2614,6 +2616,7 @@ NTSTATUS rpccli_wbint_LookupRids_recv(struct tevent_req *req,
 
 NTSTATUS rpccli_wbint_LookupRids(struct rpc_pipe_client *cli,
 				 TALLOC_CTX *mem_ctx,
+				 struct dom_sid *domain_sid /* [in] [ref] */,
 				 struct wbint_RidArray *rids /* [in] [ref] */,
 				 const char **domain_name /* [out] [ref,charset(UTF8)] */,
 				 struct wbint_Principals *names /* [out] [ref] */)
@@ -2622,6 +2625,7 @@ NTSTATUS rpccli_wbint_LookupRids(struct rpc_pipe_client *cli,
 	NTSTATUS status;
 
 	/* In parameters */
+	r.in.domain_sid = domain_sid;
 	r.in.rids = rids;
 
 	status = cli->dispatch(cli,
diff --git a/source3/librpc/gen_ndr/cli_wbint.h b/source3/librpc/gen_ndr/cli_wbint.h
index c4f9a81..6470816 100644
--- a/source3/librpc/gen_ndr/cli_wbint.h
+++ b/source3/librpc/gen_ndr/cli_wbint.h
@@ -223,6 +223,7 @@ NTSTATUS rpccli_wbint_DsGetDcName(struct rpc_pipe_client *cli,
 struct tevent_req *rpccli_wbint_LookupRids_send(TALLOC_CTX *mem_ctx,
 						struct tevent_context *ev,
 						struct rpc_pipe_client *cli,
+						struct dom_sid *_domain_sid /* [in] [ref] */,
 						struct wbint_RidArray *_rids /* [in] [ref] */,
 						const char **_domain_name /* [out] [ref,charset(UTF8)] */,
 						struct wbint_Principals *_names /* [out] [ref] */);
@@ -231,6 +232,7 @@ NTSTATUS rpccli_wbint_LookupRids_recv(struct tevent_req *req,
 				      NTSTATUS *result);
 NTSTATUS rpccli_wbint_LookupRids(struct rpc_pipe_client *cli,
 				 TALLOC_CTX *mem_ctx,
+				 struct dom_sid *domain_sid /* [in] [ref] */,
 				 struct wbint_RidArray *rids /* [in] [ref] */,
 				 const char **domain_name /* [out] [ref,charset(UTF8)] */,
 				 struct wbint_Principals *names /* [out] [ref] */);
diff --git a/source3/librpc/gen_ndr/ndr_wbint.c b/source3/librpc/gen_ndr/ndr_wbint.c
index 5bb6832..27c668e 100644
--- a/source3/librpc/gen_ndr/ndr_wbint.c
+++ b/source3/librpc/gen_ndr/ndr_wbint.c
@@ -2076,6 +2076,10 @@ _PUBLIC_ void ndr_print_wbint_DsGetDcName(struct ndr_print *ndr, const char *nam
 static enum ndr_err_code ndr_push_wbint_LookupRids(struct ndr_push *ndr, int flags, const struct wbint_LookupRids *r)
 {
 	if (flags & NDR_IN) {
+		if (r->in.domain_sid == NULL) {
+			return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
+		}
+		NDR_CHECK(ndr_push_dom_sid(ndr, NDR_SCALARS, r->in.domain_sid));
 		if (r->in.rids == NULL) {
 			return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 		}
@@ -2104,6 +2108,7 @@ static enum ndr_err_code ndr_push_wbint_LookupRids(struct ndr_push *ndr, int fla
 static enum ndr_err_code ndr_pull_wbint_LookupRids(struct ndr_pull *ndr, int flags, struct wbint_LookupRids *r)
 {
 	uint32_t _ptr_domain_name;
+	TALLOC_CTX *_mem_save_domain_sid_0;
 	TALLOC_CTX *_mem_save_rids_0;
 	TALLOC_CTX *_mem_save_domain_name_0;
 	TALLOC_CTX *_mem_save_domain_name_1;
@@ -2112,6 +2117,13 @@ static enum ndr_err_code ndr_pull_wbint_LookupRids(struct ndr_pull *ndr, int fla
 		ZERO_STRUCT(r->out);
 
 		if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
+			NDR_PULL_ALLOC(ndr, r->in.domain_sid);
+		}
+		_mem_save_domain_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
+		NDR_PULL_SET_MEM_CTX(ndr, r->in.domain_sid, LIBNDR_FLAG_REF_ALLOC);
+		NDR_CHECK(ndr_pull_dom_sid(ndr, NDR_SCALARS, r->in.domain_sid));
+		NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_sid_0, LIBNDR_FLAG_REF_ALLOC);
+		if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 			NDR_PULL_ALLOC(ndr, r->in.rids);
 		}
 		_mem_save_rids_0 = NDR_PULL_GET_MEM_CTX(ndr);
@@ -2170,6 +2182,10 @@ _PUBLIC_ void ndr_print_wbint_LookupRids(struct ndr_print *ndr, const char *name
 	if (flags & NDR_IN) {
 		ndr_print_struct(ndr, "in", "wbint_LookupRids");
 		ndr->depth++;
+		ndr_print_ptr(ndr, "domain_sid", r->in.domain_sid);
+		ndr->depth++;
+		ndr_print_dom_sid(ndr, "domain_sid", r->in.domain_sid);
+		ndr->depth--;
 		ndr_print_ptr(ndr, "rids", r->in.rids);
 		ndr->depth++;
 		ndr_print_wbint_RidArray(ndr, "rids", r->in.rids);
diff --git a/source3/librpc/gen_ndr/wbint.h b/source3/librpc/gen_ndr/wbint.h
index 2add7fc..4ba45ad 100644
--- a/source3/librpc/gen_ndr/wbint.h
+++ b/source3/librpc/gen_ndr/wbint.h
@@ -276,6 +276,7 @@ struct wbint_DsGetDcName {
 
 struct wbint_LookupRids {
 	struct {
+		struct dom_sid *domain_sid;/* [ref] */
 		struct wbint_RidArray *rids;/* [ref] */
 	} in;
 


-- 
Samba Shared Repository


More information about the samba-cvs mailing list