summaryrefslogtreecommitdiffstats
path: root/source/winbindd/winbindd_misc.c
diff options
context:
space:
mode:
authorGerald W. Carter <jerry@samba.org>2008-04-22 15:29:53 -0500
committerGerald W. Carter <jerry@samba.org>2008-04-23 13:11:48 -0500
commite71ceebea239d3331a1c7f413da6b867acb11cd1 (patch)
tree6b47a2ef8be2180e31965933b4e409f75b5712e5 /source/winbindd/winbindd_misc.c
parentce0a5aae3e4fdae1dfcaf211f8642dcd8580df7d (diff)
downloadsamba-e71ceebea239d3331a1c7f413da6b867acb11cd1.tar.gz
samba-e71ceebea239d3331a1c7f413da6b867acb11cd1.tar.xz
samba-e71ceebea239d3331a1c7f413da6b867acb11cd1.zip
Mark a domain offline in the wbcDomainInfo structure using the domain_flags.
Use the existing domain_flags fiueld in wbcDomainInfo to set a bit if the domain is marked as offline by Winbind. (cherry picked from commit 59cfba2c3d6d4594f08cbe3b7295ab36a7cfb044)
Diffstat (limited to 'source/winbindd/winbindd_misc.c')
-rw-r--r--source/winbindd/winbindd_misc.c18
1 files changed, 14 insertions, 4 deletions
diff --git a/source/winbindd/winbindd_misc.c b/source/winbindd/winbindd_misc.c
index 93986d174e5..f63aa168904 100644
--- a/source/winbindd/winbindd_misc.c
+++ b/source/winbindd/winbindd_misc.c
@@ -173,20 +173,29 @@ void winbindd_list_trusted_domains(struct winbindd_cli_state *state)
}
for ( i = 0; i < num_domains; i++ ) {
+ struct winbindd_domain *domain;
+ bool is_online = true;
+
d = &dom_list[i];
+ domain = find_domain_from_name_noinit(d->domain_name);
+ if (domain) {
+ is_online = domain->online;
+ }
+
if ( !extra_data ) {
extra_data = talloc_asprintf(state->mem_ctx,
- "%s\\%s\\%s\\%s\\%s\\%s\\%s",
+ "%s\\%s\\%s\\%s\\%s\\%s\\%s\\%s",
d->domain_name,
d->dns_name ? d->dns_name : d->domain_name,
sid_string_talloc(state->mem_ctx, &d->sid),
get_trust_type_string(d),
trust_is_transitive(d) ? "Yes" : "No",
trust_is_inbound(d) ? "Yes" : "No",
- trust_is_outbound(d) ? "Yes" : "No");
+ trust_is_outbound(d) ? "Yes" : "No",
+ is_online ? "Online" : "Offline" );
} else {
extra_data = talloc_asprintf(state->mem_ctx,
- "%s\n%s\\%s\\%s\\%s\\%s\\%s\\%s",
+ "%s\n%s\\%s\\%s\\%s\\%s\\%s\\%s\\%s",
extra_data,
d->domain_name,
d->dns_name ? d->dns_name : d->domain_name,
@@ -194,7 +203,8 @@ void winbindd_list_trusted_domains(struct winbindd_cli_state *state)
get_trust_type_string(d),
trust_is_transitive(d) ? "Yes" : "No",
trust_is_inbound(d) ? "Yes" : "No",
- trust_is_outbound(d) ? "Yes" : "No");
+ trust_is_outbound(d) ? "Yes" : "No",
+ is_online ? "Online" : "Offline" );
}
}