[SCM] Samba Shared Repository - branch master updated
Volker Lendecke
vlendec at samba.org
Sun Nov 22 14:42:36 MST 2009
The branch, master has been updated
via 579bb30... s3: Fix bug 6338 -- net rpc trustdom list always display "none"
from 03b6e6e... s4:netlogon RPC - Remove trailing whitespace
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit 579bb30188eac3393dfa0d72fd825b7acf8444c9
Author: Volker Lendecke <vl at samba.org>
Date: Sun Nov 22 22:38:45 2009 +0100
s3: Fix bug 6338 -- net rpc trustdom list always display "none"
-----------------------------------------------------------------------
Summary of changes:
source3/utils/net_rpc.c | 33 +++++++++++++++++++++++----------
1 files changed, 23 insertions(+), 10 deletions(-)
Changeset truncated at 500 lines:
diff --git a/source3/utils/net_rpc.c b/source3/utils/net_rpc.c
index 4ef86d1..910d782 100644
--- a/source3/utils/net_rpc.c
+++ b/source3/utils/net_rpc.c
@@ -6018,6 +6018,7 @@ static int rpc_trustdom_list(struct net_context *c, int argc, const char **argv)
int i;
struct lsa_DomainList dom_list;
fstring pdc_name;
+ bool found_domain;
/* trusting domains listing variables */
struct policy_handle domain_hnd;
@@ -6099,9 +6100,11 @@ static int rpc_trustdom_list(struct net_context *c, int argc, const char **argv)
* Keep calling LsaEnumTrustdom over opened pipe until
* the end of enumeration is reached
*/
-
+
d_printf(_("Trusted domains list:\n\n"));
+ found_domain = false;
+
do {
nt_status = rpccli_lsa_EnumTrustDom(pipe_hnd, mem_ctx,
&connect_hnd,
@@ -6119,16 +6122,20 @@ static int rpc_trustdom_list(struct net_context *c, int argc, const char **argv)
for (i = 0; i < dom_list.count; i++) {
print_trusted_domain(dom_list.domains[i].sid,
dom_list.domains[i].name.string);
+ found_domain = true;
};
- /*
- * in case of no trusted domains say something rather
- * than just display blank line
- */
- if (!dom_list.count) d_printf(_("none\n"));
} while (NT_STATUS_EQUAL(nt_status, STATUS_MORE_ENTRIES));
+ /*
+ * in case of no trusted domains say something rather
+ * than just display blank line
+ */
+ if (!found_domain) {
+ d_printf(_("none\n"));
+ }
+
/* close this connection before doing next one */
nt_status = rpccli_lsa_Close(pipe_hnd, mem_ctx, &connect_hnd);
if (NT_STATUS_IS_ERR(nt_status)) {
@@ -6191,6 +6198,8 @@ static int rpc_trustdom_list(struct net_context *c, int argc, const char **argv)
* perform actual enumeration
*/
+ found_domain = false;
+
enum_ctx = 0; /* reset enumeration context from last enumeration */
do {
@@ -6213,6 +6222,8 @@ static int rpc_trustdom_list(struct net_context *c, int argc, const char **argv)
char *str = CONST_DISCARD(char *, trusts->entries[i].name.string);
+ found_domain = true;
+
/*
* get each single domain's sid (do we _really_ need this ?):
* 1) connect to domain's pdc
@@ -6251,13 +6262,15 @@ static int rpc_trustdom_list(struct net_context *c, int argc, const char **argv)
"responding: %s\n"),
nt_errstr(nt_status));
d_printf(_("couldn't get domain's sid\n"));
- };
- };
-
- if (!num_domains) d_printf("none\n");
+ }
+ }
} while (NT_STATUS_EQUAL(nt_status, STATUS_MORE_ENTRIES));
+ if (!found_domain) {
+ d_printf("none\n");
+ }
+
/* close opened samr and domain policy handles */
nt_status = rpccli_samr_Close(pipe_hnd, mem_ctx, &domain_hnd);
if (!NT_STATUS_IS_OK(nt_status)) {
--
Samba Shared Repository
More information about the samba-cvs
mailing list