[SCM] Samba Shared Repository - branch v3-4-test updated - release-4-0-0alpha7-581-g1de41bb

Günther Deschner gd at samba.org
Thu Mar 26 09:32:01 GMT 2009


The branch, v3-4-test has been updated
       via  1de41bb8d6b9cbf287bad4152e38402201f966d3 (commit)
      from  45726ee52f766350023d85bc38cd803fdd8235a4 (commit)

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


- Log -----------------------------------------------------------------
commit 1de41bb8d6b9cbf287bad4152e38402201f966d3
Author: Günther Deschner <gd at samba.org>
Date:   Thu Mar 26 10:11:59 2009 +0100

    s3-net: Fix Bug #6102. NetQueryDisplayInformation could return wrong information.
    
    Guenther
    (cherry picked from commit 24d5229a81e1067662930d42f8c59b3a0adac1e0)

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

Summary of changes:
 source3/lib/netapi/user.c |   18 ++++++++++++------
 1 files changed, 12 insertions(+), 6 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/lib/netapi/user.c b/source3/lib/netapi/user.c
index e760a8b..1cbb883 100644
--- a/source3/lib/netapi/user.c
+++ b/source3/lib/netapi/user.c
@@ -1497,6 +1497,9 @@ WERROR NetQueryDisplayInformation_r(struct libnetapi_ctx *ctx,
 
 	NTSTATUS status = NT_STATUS_OK;
 	WERROR werr;
+	WERROR werr_tmp;
+
+	*r->out.entries_read = 0;
 
 	ZERO_STRUCT(connect_handle);
 	ZERO_STRUCT(domain_handle);
@@ -1540,15 +1543,18 @@ WERROR NetQueryDisplayInformation_r(struct libnetapi_ctx *ctx,
 					       &total_size,
 					       &returned_size,
 					       &info);
-	if (!NT_STATUS_IS_OK(status)) {
-		werr = ntstatus_to_werror(status);
+	werr = ntstatus_to_werror(status);
+	if (NT_STATUS_IS_ERR(status)) {
 		goto done;
 	}
 
-	werr = convert_samr_dispinfo_to_NET_DISPLAY(ctx, &info,
-						    r->in.level,
-						    r->out.entries_read,
-						    r->out.buffer);
+	werr_tmp = convert_samr_dispinfo_to_NET_DISPLAY(ctx, &info,
+							r->in.level,
+							r->out.entries_read,
+							r->out.buffer);
+	if (!W_ERROR_IS_OK(werr_tmp)) {
+		werr = werr_tmp;
+	}
  done:
 	/* if last query */
 	if (NT_STATUS_IS_OK(status) ||


-- 
Samba Shared Repository


More information about the samba-cvs mailing list