[SCM] Samba Shared Repository - branch master updated

Stefan Metzmacher metze at samba.org
Tue Apr 24 08:44:05 MDT 2012


The branch, master has been updated
       via  84ae92d s4:libnet: pass an explicit mem_ctx to libnet_rpc_userinfo_send() (bug #8889)
      from  d38a171 s3: Attempt to fix the build without kerberos

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 84ae92da6ba4a060bd53cb73c83a86c0cc699115
Author: Stefan Metzmacher <metze at samba.org>
Date:   Tue Apr 24 13:49:52 2012 +0200

    s4:libnet: pass an explicit mem_ctx to libnet_rpc_userinfo_send() (bug #8889)
    
    This hopefully fixes the flakey autobuild.
    
    metze
    
    Autobuild-User: Stefan Metzmacher <metze at samba.org>
    Autobuild-Date: Tue Apr 24 16:43:03 CEST 2012 on sn-devel-104

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

Summary of changes:
 source4/libnet/libnet_user.c      |    8 +++++---
 source4/libnet/userinfo.c         |    5 +++--
 source4/torture/libnet/userinfo.c |    4 ++--
 3 files changed, 10 insertions(+), 7 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/libnet/libnet_user.c b/source4/libnet/libnet_user.c
index dc0691a..eef480a 100644
--- a/source4/libnet/libnet_user.c
+++ b/source4/libnet/libnet_user.c
@@ -423,7 +423,7 @@ struct composite_context *libnet_ModifyUser_send(struct libnet_context *ctx,
 	s->user_info.in.domain_handle = ctx->samr.handle;
 	s->user_info.in.level         = level;
 
-	userinfo_req = libnet_rpc_userinfo_send(ctx->samr.pipe, &s->user_info, monitor);
+	userinfo_req = libnet_rpc_userinfo_send(ctx->samr.pipe, s, &s->user_info, monitor);
 	if (composite_nomem(userinfo_req, c)) return c;
 
 	composite_continue(c, userinfo_req, continue_rpc_userinfo, c);
@@ -455,7 +455,7 @@ static void continue_domain_open_modify(struct composite_context *ctx)
 	s->user_info.in.username       = s->r.in.user_name;
 	s->user_info.in.level          = level;
 
-	userinfo_req = libnet_rpc_userinfo_send(s->ctx->samr.pipe, &s->user_info, s->monitor_fn);
+	userinfo_req = libnet_rpc_userinfo_send(s->ctx->samr.pipe, s, &s->user_info, s->monitor_fn);
 	if (composite_nomem(userinfo_req, c)) return;
 	
 	composite_continue(c, userinfo_req, continue_rpc_userinfo, c);
@@ -687,6 +687,7 @@ struct composite_context* libnet_UserInfo_send(struct libnet_context *ctx,
 
 		/* send the request */
 		info_req = libnet_rpc_userinfo_send(s->ctx->samr.pipe,
+						    s,
 						    &s->userinfo,
 						    s->monitor_fn);
 		if (composite_nomem(info_req, c)) return c;
@@ -743,6 +744,7 @@ static void continue_domain_open_info(struct composite_context *ctx)
 
 		/* send the request */
 		info_req = libnet_rpc_userinfo_send(s->ctx->samr.pipe,
+						    s,
 						    &s->userinfo,
 						    s->monitor_fn);
 		if (composite_nomem(info_req, c)) return;
@@ -782,7 +784,7 @@ static void continue_name_found(struct composite_context *ctx)
 	s->userinfo.in.level = 21;
 
 	/* send the request */
-	info_req = libnet_rpc_userinfo_send(s->ctx->samr.pipe, &s->userinfo, s->monitor_fn);
+	info_req = libnet_rpc_userinfo_send(s->ctx->samr.pipe, s, &s->userinfo, s->monitor_fn);
 	if (composite_nomem(info_req, c)) return;
 
 	/* set the next stage */
diff --git a/source4/libnet/userinfo.c b/source4/libnet/userinfo.c
index ddb249e..75c46e4 100644
--- a/source4/libnet/userinfo.c
+++ b/source4/libnet/userinfo.c
@@ -260,6 +260,7 @@ static void continue_userinfo_closeuser(struct tevent_req *subreq)
  * @param io arguments and results of the call
  */
 struct composite_context *libnet_rpc_userinfo_send(struct dcerpc_pipe *p,
+						   TALLOC_CTX *mem_ctx,
 						   struct libnet_rpc_userinfo *io,
 						   void (*monitor)(struct monitor_msg*))
 {
@@ -270,7 +271,7 @@ struct composite_context *libnet_rpc_userinfo_send(struct dcerpc_pipe *p,
 
 	if (!p || !io) return NULL;
 	
-	c = composite_create(p, dcerpc_event_context(p));
+	c = composite_create(mem_ctx, dcerpc_event_context(p));
 	if (c == NULL) return c;
 	
 	s = talloc_zero(c, struct userinfo_state);
@@ -370,6 +371,6 @@ NTSTATUS libnet_rpc_userinfo(struct dcerpc_pipe *p,
 			     TALLOC_CTX *mem_ctx,
 			     struct libnet_rpc_userinfo *io)
 {
-	struct composite_context *c = libnet_rpc_userinfo_send(p, io, NULL);
+	struct composite_context *c = libnet_rpc_userinfo_send(p, mem_ctx, io, NULL);
 	return libnet_rpc_userinfo_recv(c, mem_ctx, io);
 }
diff --git a/source4/torture/libnet/userinfo.c b/source4/torture/libnet/userinfo.c
index 042212f..3d592b3 100644
--- a/source4/torture/libnet/userinfo.c
+++ b/source4/torture/libnet/userinfo.c
@@ -85,7 +85,7 @@ static bool test_userinfo_async(struct torture_context *tctx,
 
 	torture_comment(tctx, "Testing async libnet_rpc_userinfo (SID argument)\n");
 
-	c = libnet_rpc_userinfo_send(p, &user, msg_handler);
+	c = libnet_rpc_userinfo_send(p, mem_ctx, &user, msg_handler);
 	torture_assert(tctx, c != NULL, "Failed to call async libnet_rpc_userinfo_send");
 
 	status = libnet_rpc_userinfo_recv(c, mem_ctx, &user);
@@ -100,7 +100,7 @@ static bool test_userinfo_async(struct torture_context *tctx,
 
 	torture_comment(tctx, "Testing async libnet_rpc_userinfo (username argument)\n");
 
-	c = libnet_rpc_userinfo_send(p, &user, msg_handler);
+	c = libnet_rpc_userinfo_send(p, mem_ctx, &user, msg_handler);
 	torture_assert(tctx, c != NULL, "Failed to call async libnet_rpc_userinfo_send");
 
 	status = libnet_rpc_userinfo_recv(c, mem_ctx, &user);


-- 
Samba Shared Repository


More information about the samba-cvs mailing list