hyc(a)symas.com wrote:
> Right. I think we'll go with another approach instead - Samba will always spit
> out moduleload directives. We'll change moduleload to check for
> already-existing backends or overlays, and silently succeed in those cases.
Well, I think we could also provide sort of an off-line means to check
what is statically built-in and what's not. In principle, one could
implement tool mode in back-monitor and perform a
echo "database monitor" > slapd.conf
slapcat -f slapd.conf -s "cn=Backends,cn=Monitor" | grep whatever
slapcat -f slapd.conf -s "cn=Overlays,cn=Monitor" | grep whatever
to find what's available. If it fails, back-monitor itself is needed; then
echo "modulepath path/to/back-monitor" > slapd.conf
echo "moduleload back_monitor.la" >> slapd.conf
echo "database monitor" >> slapd.conf
slapcat -f slapd.conf -s "cn=Backends,cn=Monitor" | grep whatever
slapcat -f slapd.conf -s "cn=Overlays,cn=Monitor" | grep whatever
Looks like an overkill, but it might be of general usefulness.
p.
Ing. Pierangelo Masarati
OpenLDAP Core Team
SysNet s.r.l.
via Dossi, 8 - 27100 Pavia - ITALIA
http://www.sys-net.it
-----------------------------------
Office: +39 02 23998309
Mobile: +39 333 4963172
Fax: +39 0382 476497
Email: ando(a)sys-net.it
-----------------------------------
Pierangelo Masarati wrote:
> hyc(a)symas.com wrote:
>> As a further clarification - we're only considering this for backends and
>> overlays; other dynamically loaded elements' (like syntaxes, password hashes,
>> whatever) behavior will not be changed.
>
> I see quite a few issues (unless already discussed). For example, one
> would typically discover the need to load back_monitor.la only close to
> the end of the configuration, while the module defines some specific
> schema and even some specific calls that may be needed by other backends
> instantiated earlier in order to allow custom monitoring. I guess the
> problem can be generalized.
Right. I think we'll go with another approach instead - Samba will always spit
out moduleload directives. We'll change moduleload to check for
already-existing backends or overlays, and silently succeed in those cases.
--
-- Howard Chu
CTO, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc/
Chief Architect, OpenLDAP http://www.openldap.org/project/
hyc(a)symas.com wrote:
> abartlet(a)samba.org wrote:
>> Full_Name: Andrew Bartlett
>> Version: 2.4.15
>> OS: Fedora 9
>> URL: ftp://ftp.openldap.org/incoming/
>> Submission from: (NULL) (59.167.251.137)
>>
>>
>> In Samba4, we generate a slapd.conf for OpenLDAP as part of our
>> provision-backend process. This avoids administrators needing to guess at
>> Samba's specific requirements.
>>
>> However, this places the Samba4 software in the position of having to guess how
>> this host's OpenLDAP installation was compiled. In particular, we need to guess
>> if the required overlays are built in, or modules.
>>
>> Work was done a while back to avoid us having to guess what the module path is
>> (the default is is now hard-coded in the binary), but we still have to guess
>> which set of modules to load. Currently this is done in 'make test' by guessing
>> different sets of modules in an included 'modules.conf' and running slaptest
>> until we find a combination that works.
>>
>> We (Samba4) would really like it if the slapd binary would load modules
>> (assuming a one-to-one mapping between overlay/backend names and modules) from
>> that default path, if not found static in the binary.
>>
>> This way, Samba would not specify modules at all in the slapd.conf, but they
>> would be loaded as required, if required.
>>
>> Thanks,
>>
>> Andrew Bartlett
>>
>> (As discussed with Howard Chu on #openldap-devel)
>>
> As a further clarification - we're only considering this for backends and
> overlays; other dynamically loaded elements' (like syntaxes, password hashes,
> whatever) behavior will not be changed.
I see quite a few issues (unless already discussed). For example, one
would typically discover the need to load back_monitor.la only close to
the end of the configuration, while the module defines some specific
schema and even some specific calls that may be needed by other backends
instantiated earlier in order to allow custom monitoring. I guess the
problem can be generalized.
> And before we go there, what if we just provided a slapd option to dump out
> all of its compiled-in paths? Then you could inspect the modulepath and see
> whether any modules of interest reside there. ?
p.
Ing. Pierangelo Masarati
OpenLDAP Core Team
SysNet s.r.l.
via Dossi, 8 - 27100 Pavia - ITALIA
http://www.sys-net.it
-----------------------------------
Office: +39 02 23998309
Mobile: +39 333 4963172
Fax: +39 0382 476497
Email: ando(a)sys-net.it
-----------------------------------
--=-IfMlemfEuIIh4cVKP58C
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable
I found the formal spec in MS-ADTS:
It currently reads:
3.1.1.4.5.28 parentGUID
This attribute is not present on an object that is the root of an NC.
For all other objects, let TO be
the object from which the parentGUID attribute is being read and let
TP be TO!parent.
TO!parentGUID is equal to TP!objectGUID.
--=20
Andrew Bartlett
http://samba.org/~abartlet/
Authentication Developer, Samba Team http://samba.org
Samba Developer, Red Hat Inc.
--=-IfMlemfEuIIh4cVKP58C
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: This is a digitally signed message part
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
iD8DBQBJuINDz4A8Wyi0NrsRAovEAJ9ENJCjmWM0oiK43uK9GWLOWzhzBACbBGpS
geE0JFNIqoWTAWYGV5JpJNo=
=l42G
-----END PGP SIGNATURE-----
--=-IfMlemfEuIIh4cVKP58C--
Full_Name: Andrew Bartlett
Version: 2.4.15
OS: Fedora 9
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (59.167.251.137)
Samba4 would find it most helpful if OpenLDAP would be able to present an
operational attribute 'parentGUID' similar to the one that Windows 2008 has
implemented in AD.
http://msdn.microsoft.com/en-us/library/cc221277(PROT.13).aspx
Formalised details of the required semantics are not very clear at this point (I
will request clarification from Microsoft on this), but for now:
The root entries on a partition have no parentGUID
All other entries have a value parentGUID equal to the objectGUID of the parent
This value is available in search results if requested.
As Samba handles the translation from text to binary, feel free to use the
existing entryUUID formatting.
Implementing this would avoid Samba having to perform an auxillary search to
find this information, which should be very cheaply available to hdb when it is
resolving the DN.
Thanks,
Andrew Bartlett
(Discussed with Howard Chu on #openldap-devel)
abartlet(a)samba.org wrote:
> Full_Name: Andrew Bartlett
> Version: 2.4.15
> OS: Fedora 9
> URL: ftp://ftp.openldap.org/incoming/
> Submission from: (NULL) (59.167.251.137)
>
>
> In Samba4, we generate a slapd.conf for OpenLDAP as part of our
> provision-backend process. This avoids administrators needing to guess at
> Samba's specific requirements.
>
> However, this places the Samba4 software in the position of having to guess how
> this host's OpenLDAP installation was compiled. In particular, we need to guess
> if the required overlays are built in, or modules.
>
> Work was done a while back to avoid us having to guess what the module path is
> (the default is is now hard-coded in the binary), but we still have to guess
> which set of modules to load. Currently this is done in 'make test' by guessing
> different sets of modules in an included 'modules.conf' and running slaptest
> until we find a combination that works.
>
> We (Samba4) would really like it if the slapd binary would load modules
> (assuming a one-to-one mapping between overlay/backend names and modules) from
> that default path, if not found static in the binary.
>
> This way, Samba would not specify modules at all in the slapd.conf, but they
> would be loaded as required, if required.
>
> Thanks,
>
> Andrew Bartlett
>
> (As discussed with Howard Chu on #openldap-devel)
>
As a further clarification - we're only considering this for backends and
overlays; other dynamically loaded elements' (like syntaxes, password hashes,
whatever) behavior will not be changed.
And before we go there, what if we just provided a slapd option to dump out
all of its compiled-in paths? Then you could inspect the modulepath and see
whether any modules of interest reside there. ?
--
-- Howard Chu
CTO, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc/
Chief Architect, OpenLDAP http://www.openldap.org/project/
Full_Name: Andrew Bartlett
Version: 2.4.15
OS: Fedora 9
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (59.167.251.137)
In Samba4, we generate a slapd.conf for OpenLDAP as part of our
provision-backend process. This avoids administrators needing to guess at
Samba's specific requirements.
However, this places the Samba4 software in the position of having to guess how
this host's OpenLDAP installation was compiled. In particular, we need to guess
if the required overlays are built in, or modules.
Work was done a while back to avoid us having to guess what the module path is
(the default is is now hard-coded in the binary), but we still have to guess
which set of modules to load. Currently this is done in 'make test' by guessing
different sets of modules in an included 'modules.conf' and running slaptest
until we find a combination that works.
We (Samba4) would really like it if the slapd binary would load modules
(assuming a one-to-one mapping between overlay/backend names and modules) from
that default path, if not found static in the binary.
This way, Samba would not specify modules at all in the slapd.conf, but they
would be loaded as required, if required.
Thanks,
Andrew Bartlett
(As discussed with Howard Chu on #openldap-devel)
Full_Name: Arun Patel
Version: 2.2.13
OS: linux
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (135.207.175.192)
Here is the scenario.
1) Add new user (example testid)
dn: uid=testid,o=xyz.com (with the attibutes and its values, etc)
2) ldapsearch -LLL -x -b uid=tesid,xyz.com
finds the testid
3) Delete the user (testid)
dn: uid=testid,o=xyz.com
changemodify: delete
4) ldapsearch -LLL -x -b uid=tesid,xyz.com
No match for DN (Good)
5) Add same user back (testid)
dn: uid=testid,o=xyz.com (with the attibutes and its values, etc)
6) ldapsearch -LLL -x -b uid=tesid,xyz.com
unable to retrieve the testid (Problem)
I know the testid is in ldap, because went thru ldap browser and did see the
entry.
I then did /etc/init.d/ldap stop and /etc/init.d/ldap start
After entering ldapsearch -LLL -x -b uid=tesid,xyz.com, it works,
Why does this happen?
Help is highly appreciated.
Arun