diff options
author | Günther Deschner <gd@samba.org> | 2009-10-07 10:43:53 +0200 |
---|---|---|
committer | Karolin Seeger <kseeger@samba.org> | 2009-11-26 11:39:10 +0100 |
commit | 701ace11bea4f0d63efb95d77f881f354d87d68e (patch) | |
tree | 5644361f88f2c3e2050e92fa1bd29335f3432f09 /nsswitch | |
parent | 824142cb957a62242dcf66ec9ce13edd6fd50bad (diff) | |
download | samba-701ace11bea4f0d63efb95d77f881f354d87d68e.tar.gz |
wbinfo: allow to check trusts via "wbinfo -t --domain DOMAINNAME".
Guenther
(cherry picked from commit 7b3501200c55d7844c4d697456dbfa2b86cfdcc8)
(cherry picked from commit 69ba747df1b861da70da6682e36b095ac565f83e)
Diffstat (limited to 'nsswitch')
-rw-r--r-- | nsswitch/wbinfo.c | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/nsswitch/wbinfo.c b/nsswitch/wbinfo.c index a80b69f2b6b..7410a744f39 100644 --- a/nsswitch/wbinfo.c +++ b/nsswitch/wbinfo.c @@ -724,15 +724,23 @@ static bool wbinfo_dsgetdcname(const char *domain_name, uint32_t flags) /* Check trust account password */ -static bool wbinfo_check_secret(void) +static bool wbinfo_check_secret(const char *domain) { wbcErr wbc_status = WBC_ERR_UNKNOWN_FAILURE; struct wbcAuthErrorInfo *error = NULL; + const char *domain_name; - wbc_status = wbcCheckTrustCredentials(NULL, &error); + if (domain) { + domain_name = domain; + } else { + domain_name = get_winbind_domain(); + } - d_printf("checking the trust secret via RPC calls %s\n", - WBC_ERROR_IS_OK(wbc_status) ? "succeeded" : "failed"); + wbc_status = wbcCheckTrustCredentials(domain_name, &error); + + d_printf("checking the trust secret for domain %s via RPC calls %s\n", + domain_name, + WBC_ERROR_IS_OK(wbc_status) ? "succeeded" : "failed"); if (wbc_status == WBC_ERR_AUTH_ERROR) { d_fprintf(stderr, "error code was %s (0x%x)\n", @@ -1950,7 +1958,7 @@ int main(int argc, char **argv, char **envp) } break; case 't': - if (!wbinfo_check_secret()) { + if (!wbinfo_check_secret(opt_domain_name)) { d_fprintf(stderr, "Could not check secret\n"); goto done; } |