mirror of
https://github.com/samba-team/samba.git
synced 2025-01-11 05:18:09 +03:00
winbind: Retry after SESSION_EXPIRED error in ping-dc
Trying to establish a netlogon connection when the service ticket expires might fail with NT_STATUS_NETWORK_SESSION_EXPIRED. The underlying client code already marks the session as invalid, so retry the netlogon connect in this case. Signed-off-by: Christof Schmit <cs@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org> Autobuild-User(master): Jeremy Allison <jra@samba.org> Autobuild-Date(master): Tue Jan 6 02:58:57 CET 2015 on sn-devel-104
This commit is contained in:
parent
0f6bf3575e
commit
a2670f15de
@ -677,6 +677,14 @@ NTSTATUS _wbint_PingDc(struct pipes_struct *p, struct wbint_PingDc *r)
|
||||
|
||||
reconnect:
|
||||
status = cm_connect_netlogon(domain, &netlogon_pipe);
|
||||
if (NT_STATUS_EQUAL(status, NT_STATUS_NETWORK_SESSION_EXPIRED)) {
|
||||
/*
|
||||
* Retry to open new connection with new kerberos ticket.
|
||||
*/
|
||||
invalidate_cm_connection(domain);
|
||||
status = cm_connect_netlogon(domain, &netlogon_pipe);
|
||||
}
|
||||
|
||||
reset_cm_connection_on_error(domain, status);
|
||||
if (!NT_STATUS_IS_OK(status)) {
|
||||
DEBUG(3, ("could not open handle to NETLOGON pipe: %s\n",
|
||||
|
Loading…
Reference in New Issue
Block a user