[Freeipa-devel] [PATCH 0116] Refactoring of service autobind
Jan Cholasta
jcholast at redhat.com
Fri Sep 19 12:30:03 UTC 2014
Dne 19.9.2014 v 13:32 Martin Basti napsal(a):
> On 01/09/14 16:26, Martin Basti wrote:
>> On 28/08/14 14:01, Jan Cholasta wrote:
>>> Hi,
>>>
>>> Dne 27.8.2014 v 15:22 Martin Basti napsal(a):
>>>> Patch attached.
>>>>
>>>
>>> 1) Please rename object_exists to entry_exists.
>>>
>>>
>>> 2) Use empty attribute list in get_entry() in
>>> object_exists/entry_exists.
>>>
>>>
>>> 3) Please update LDAPObject.get_dn_if_exists() to use
>>> object_exists/entry_exists.
>>>
>>>
>>> 4) I'm not a fan of how do_bind() is laid out, IMHO something like
>>> this would be better (untested):
>>>
>>> + def do_bind(self, dm_password=None, autobind=AUTOBIND_AUTO,
>>> timeout=DEFAULT_TIMEOUT):
>>> + if dm_password:
>>> + self.do_simple_bind(bindpw=dm_password, timeout=timeout)
>>> + return
>>> +
>>> + if autobind != AUTOBIND_DISABLED and os.getegid() == 0 and
>>> self.ldapi:
>>> + try:
>>> + # autobind
>>> + pw_name = pwd.getpwuid(os.geteuid()).pw_name
>>> + self.do_external_bind(pw_name, timeout=timeout)
>>> + return
>>> + except errors.NotFound:
>>> + if autobind == AUTOBIND_ENABLED:
>>> + # autobind was required and failed, raise
>>> + # exception that it failed
>>> + raise
>>> +
>>> + # Fall back
>>> + self.do_sasl_gssapi_bind(timeout=timeout)
>>>
>>>
>>> Honza
>>>
>> 3) skipped as we discuss on IRC
>>
>> Updated patch attached
>>
>>
>>
>> _______________________________________________
>> Freeipa-devel mailing list
>> Freeipa-devel at redhat.com
>> https://www.redhat.com/mailman/listinfo/freeipa-devel
> Please review, this should be in 4.1
1) The patch need a rebase on top of current ipa-4-1.
2) You can remove import pwd from service.py, it is no longer used there.
3) Are named constants for the autobind argument the right thing to do?
It is a tri-state which can be expressed with None/True/False. (I'm just
asking, I don't have a strong opinion on this.)
--
Jan Cholasta
More information about the Freeipa-devel
mailing list