diff options
author | Gerald Carter <jerry@samba.org> | 2003-07-31 05:43:47 +0000 |
---|---|---|
committer | Gerald Carter <jerry@samba.org> | 2003-07-31 05:43:47 +0000 |
commit | 0d087e3ba28a9061529c95799624ccc4686eb1e9 (patch) | |
tree | 6284d9b57fc77694b6967fc76ce90eadadb5a40b /source3/nsswitch/winbindd_cm.c | |
parent | 48c01deb300b51c97865ec0d738c64c7722da0d7 (diff) | |
download | samba-0d087e3ba28a9061529c95799624ccc4686eb1e9.tar.gz samba-0d087e3ba28a9061529c95799624ccc4686eb1e9.tar.xz samba-0d087e3ba28a9061529c95799624ccc4686eb1e9.zip |
working on transtive trusts issue:
* use DsEnumerateDomainTrusts() instead of LDAP search.
wbinfo -m now lists all trusted downlevel domains and
all domains in the forest.
Thnigs to do:
o Look at Krb5 connection trusted domains
o make sure to initial the trusted domain cache as soon
as possible
(This used to be commit 0ab00ccaedf204b39c86a9e1c2fcac5f15d0e033)
Diffstat (limited to 'source3/nsswitch/winbindd_cm.c')
-rw-r--r-- | source3/nsswitch/winbindd_cm.c | 29 |
1 files changed, 23 insertions, 6 deletions
diff --git a/source3/nsswitch/winbindd_cm.c b/source3/nsswitch/winbindd_cm.c index dbc3062edd..f07117b5ab 100644 --- a/source3/nsswitch/winbindd_cm.c +++ b/source3/nsswitch/winbindd_cm.c @@ -152,7 +152,7 @@ static NTSTATUS cm_open_connection(const char *domain, const int pipe_index, result = cli_full_connection(&new_conn->cli, global_myname(), new_conn->controller, &dc_ip, 0, "IPC$", "IPC", ipc_username, ipc_domain, - ipc_password, CLI_FULL_CONNECTION_ANNONYMOUS_FALLBACK, + ipc_password, CLI_FULL_CONNECTION_ANNONYMOUS_FALLBACK, Undefined, &retry); secrets_named_mutex_release(new_conn->controller); @@ -194,6 +194,25 @@ static NTSTATUS cm_open_connection(const char *domain, const int pipe_index, return NT_STATUS_OK; } +/************************************************************************ + Wrapper around statuc cm_open_connection to retreive a freshly + setup cli_state struct +************************************************************************/ + +NTSTATUS cm_fresh_connection(const char *domain, const int pipe_index, + struct cli_state **cli) +{ + NTSTATUS result; + struct winbindd_cm_conn conn; + + result = cm_open_connection( domain, pipe_index, &conn ); + + if ( NT_STATUS_IS_OK(result) ) + *cli = conn.cli; + + return result; +} + /* Return true if a connection is still alive */ static BOOL connection_ok(struct winbindd_cm_conn *conn) @@ -326,13 +345,11 @@ BOOL cm_check_for_native_mode_win2k( const char *domain ) done: -#if 0 - /* - * I don't think we need to shutdown here ? JRA. - */ + /* close the connection; no other cals use this pipe and it is called only + on reestablishing the domain list --jerry */ + if ( conn.cli ) cli_shutdown( conn.cli ); -#endif return ret; } |