[Freeipa-devel] [PATCH] Add group plugin port to new LDAP backend.
Jason Gerard DeRose
jderose at redhat.com
Thu May 14 19:59:32 UTC 2009
On Wed, 2009-05-13 at 20:56 +0200, Pavel Zuna wrote:
> Rob Crittenden wrote:
> > Pavel Zuna wrote:
> >> Rob Crittenden wrote:
> >>> Pavel Zuna wrote:
> >>>> Rob Crittenden wrote:
> >>>>> Pavel Zuna wrote:
> >>>>>> By the way, there's a little bug I discovered while testing this
> >>>>>> plugin. It affects the old group plugin as well. When trying to
> >>>>>> modify a group into a posixGroup, gidNumber doesn't get generated
> >>>>>> automatically resulting in a object violation LDAP error. Solution
> >>>>>> is to generate it ourselves, but I didn't know how it works, so I
> >>>>>> commented that part out for now. (/FIXME in vim)
> >>>>>>
> >>>>>
> >>>>> This should be fixed in FDS 1.2. Can you update and give it a try?
> >>>>>
> >>>>> rob
> >>>> Sure, just updated and you're right, it works. :)
> >>>> Updated patch attached.
> >>>>
> >>>> Pavel
> >>>
> >>> nack. This won't handle someone using group-mod to set a specific
> >>> gidnumber. The posixGroup objectclass won't be added.
> >>>
> >>> rob
> >> Fixed patch attached.
> >>
> >> Pavel
> >
> > The basegroup2 part looks ok but nack on group2.
> >
> > I think we should stick with using lower-case attribute names as a rule
> > of thumb rather than camel case. In any case you test for the string
> > posixGroup is in the list of objectclasses, this test needs to be case
> > insensitive.
> When no attributes to retrieve are specified, python-ldap retrieves them all in
> the original form - camel case. If we specify them, then it returns them in the
> same form as we requested them. The new LDAP backend doesn't use CIDicts
> anymore, but only the normal python dict type, so everything is case sensitive.
> Of course I can make it return attribute names always as lowercase if that's
> what we want.
+1. I personally think this is the best approach.
> > I also wonder if we should be using ldap.get_entry(). Why use this over
> > group-show?
> It's faster, because we call get_entry directly and because we can request
> objectClass attribute only. Why invoke an IPA command instead of a making a
> direct call?
>
> > I'm not sure if the logic around setting gidnumber is right. If you set
> > the gidnumber but aren't using the --posix flag it looks like it will
> > always append posixgroup to the list of objectclasses. I'm pretty sure
> > the LDAP server is going to reject the update. I suppose making a
> > list(set(objectclasses)) would work for de-duping.
> You're right, it's broken. I'll fix it.
>
> Pavel
>
> _______________________________________________
> Freeipa-devel mailing list
> Freeipa-devel at redhat.com
> https://www.redhat.com/mailman/listinfo/freeipa-devel
More information about the Freeipa-devel
mailing list