]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
join: Fix join large-DB timeout against Windows
authorTim Beale <timbeale@catalyst.net.nz>
Mon, 5 Nov 2018 01:30:14 +0000 (14:30 +1300)
committerTim Beale <timbeale@samba.org>
Tue, 6 Nov 2018 02:39:11 +0000 (03:39 +0100)
The LDAP connection can also timeout when trying to join a Windows DC
with a very large database. However, in this case Windows gives a
slightly different error message (NT_STATUS_CONNECTION_RESET instead of
NT_STATUS_CONNECTION_DISCONNECTED).

BUG: https://bugzilla.samba.org/show_bug.cgi?id=13612

Signed-off-by: Tim Beale <timbeale@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
python/samba/join.py

index c2d92547d58c0ed8e65f2bbcb52ac981a2466f7f..343b1a50934f0e44848e61a6c82f0119133864a8 100644 (file)
@@ -1031,7 +1031,8 @@ class DCJoinContext(object):
 
             # if the connection was disconnected, then reconnect
             if (enum == ldb.ERR_OPERATIONS_ERROR and
-                'NT_STATUS_CONNECTION_DISCONNECTED' in estr):
+                ('NT_STATUS_CONNECTION_DISCONNECTED' in estr or
+                 'NT_STATUS_CONNECTION_RESET' in estr)):
                 ctx.logger.warning("LDB connection disconnected. Reconnecting")
                 ctx.samdb = SamDB(url="ldap://%s" % ctx.server,
                                   session_info=system_session(),