[Freeipa-devel] [PATCH 0236] ipaldap: Fallback to string if datetime conversion went wrong

Petr Viktorin pviktori at redhat.com
Wed Jun 25 16:25:48 UTC 2014


On 06/25/2014 05:29 PM, Jan Cholasta wrote:
> Hi,
>
> On 25.6.2014 17:17, Tomas Babej wrote:
>> Hi,
>>
>> Our datetime conversion does not support full LDAP Generalized
>> time syntax. In the unsupported cases, we should fall back
>> to string representation of the attribute.
>>
>> In particular, '0' is used to denote no value of LDAP generalized
>> time attribute.
>>
>> https://fedorahosted.org/freeipa/ticket/4350
>
> NACK, this beats the purpose of decoding of the values, because it
> requires you to check the type of the value before using it.
>
> Instead, you should either fix the code that uses the
> nsds5ReplicaLastUpdate{Start,End} attributes to access their raw value
> directly, or exclude the attributes from decoding to datetime by
> overriding their type in IPASimpleLDAPObject._SYNTAX_OVERRIDE.
>
> Honza
>

I agree that just returning a string when conversion fails is the wrong 
thing to do.

I think that if LDAP generalized can contain the empty/invalid value, we 
should convert the '0' to what Python uses for that -- None.

-- 
Petr³




More information about the Freeipa-devel mailing list