diff options
author | Günther Deschner <gd@samba.org> | 2009-03-26 10:35:55 +0100 |
---|---|---|
committer | Karolin Seeger <kseeger@samba.org> | 2009-03-27 14:15:54 +0100 |
commit | e26d948fa6efd43cd734494744ee4cd5b7833fea (patch) | |
tree | b4673e5a8870b1eda70f84caf790b011d317bd30 | |
parent | ff258d7afb5feaf60e537ec647a1835f18bb8a1f (diff) | |
download | samba-e26d948fa6efd43cd734494744ee4cd5b7833fea.tar.gz samba-e26d948fa6efd43cd734494744ee4cd5b7833fea.tar.xz samba-e26d948fa6efd43cd734494744ee4cd5b7833fea.zip |
s3-net: Fix Bug #6102. NetQueryDisplayInformation could return wrong information.
Guenther
(cherry picked from commit fe102f53d1ac6f888bd559eaf52b6a166d5f78d3)
-rw-r--r-- | source/lib/netapi/user.c | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/source/lib/netapi/user.c b/source/lib/netapi/user.c index 84d32dc1d55..2c78f6f8ada 100644 --- a/source/lib/netapi/user.c +++ b/source/lib/netapi/user.c @@ -1510,6 +1510,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); @@ -1554,15 +1557,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 (!cli) { return werr; |