Тайм-аут Python-LDAP simple_bind_s - PullRequest
6 голосов
/ 13 июля 2011

Есть ли способ установить тайм-аут для "simple_bind_s" в python-LDAP вручную? Я протестировал ldapObject.timeout = 10, он не работал для меня. Есть идеи?

Заранее спасибо ..

Ответы [ 2 ]

10 голосов
/ 17 ноября 2011

Установите параметр ldap.OPT_NETWORK_TIMEOUT для объекта ldap.

import ldap

l = ldap.initialize('ldap://servername:389')
l.set_option(ldap.OPT_NETWORK_TIMEOUT, 10.0)
l.simple_bind_s('username', 'password')

Это вызовет исключение ldap.SERVER_DOWN, если достигнуто указанное время ожидания.

3 голосов
/ 02 апреля 2013

По какой-то причине ldap.OPT_NETWORK_TIMEOUT, кажется, никогда не истекает для меня, поэтому я использовал ldap.OPT_TIMEOUT вместо этого (что повысит ldap.TIMEOUT):

import ldap

l = ldap.initialize('ldaps://ldap.example.com')
l.set_option(ldap.OPT_TIMEOUT, 10)
l.simple_bind_s('username', 'password')
...