--On Tuesday, September 17, 2019 6:47 PM +0000 krishradhe11(a)gmail.com wrote:
> Full_Name: Radhe Krish
> Version: 2.4.44
> OS: Centos 7
> URL: ftp://ftp.openldap.org/incoming/
> Submission from: (NULL) (139.85.223.11)
Hello,
The ITS system is for reporting bugs, not usage questions. Please redirect
your query to the openldap-technical(a)openldap.org email list for questions
such as yours. I will note that this question has been asked and answered
there already for other individuals, so if you look at the list archives,
you'll find your answer.
<https://www.openldap.org/lists/mm/listinfo/openldap-technical>
<https://www.openldap.org/lists/openldap-technical/>
<https://www.openldap.org/lists/openldap-technical/201908/msg00157.html>
This ITS will be closed.
Regards,
Quanah
--
Quanah Gibson-Mount
Product Architect
Symas Corporation
Packaged, certified, and supported LDAP solutions powered by OpenLDAP:
<http://www.symas.com>
Full_Name: Radhe Krish
Version: 2.4.44
OS: Centos 7
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (139.85.223.11)
Hello ! I 'm using Openldap version 2.4.44 running on my centos 7 machine. In
process to upgrade to the recently released Openldap version 2.4.48, I'm facing
some difficulties while choosing the concerned folder to save executable
libraries. I followed the instructions as in official website but I'm not
positive about how to upgrade from already installed Openldap 2.4.44 to 2.4.48.
I tried to find RPMs supporting this but still no luck.Can you help me with
clear instructions to proceed upgrade from 2.4.44 to 2.4.48 or help me with the
corresponding RPM, that will be really helpful.
Full_Name: Jan Engelhardt
Version: 2.4.48
OS: openSUSE Tumbleweed; Linux 5.3.0-rc7 x86_64
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (2a02:8108:96c0:15fc:2137:8684:9608:51f8)
» cat x.c
#define LDAP_DEPRECATED 1
#include <ldap.h>
int main()
{
LDAP *ld;
ldap_initialize(&ld, "ldapi:///");
ldap_unbind(ld);
}
» gcc x.c -Wall -lldap -ggdb3
» valgrind --leak-check=full ./a.out
==25779== HEAP SUMMARY:
==25779== in use at exit: 26,395 bytes in 85 blocks
==25779== total heap usage: 233 allocs, 148 frees, 177,134 bytes allocated
==25779==
==25779== 40 bytes in 1 blocks are definitely lost in loss record 11 of 24
==25779== at 0x4838B65: calloc (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==25779== by 0x4A8310C: ber_memcalloc_x (memory.c:283)
==25779== by 0x4A84EC0: ber_sockbuf_alloc (sockbuf.c:60)
==25779== by 0x487396A: ldap_create (open.c:172)
==25779== by 0x4873C8D: ldap_initialize (open.c:241)
==25779== by 0x10915F: main (x.c:6)
==25779==
==25779== LEAK SUMMARY:
==25779== definitely lost: 40 bytes in 1 blocks
==25779== indirectly lost: 0 bytes in 0 blocks
==25779== possibly lost: 0 bytes in 0 blocks
==25779== still reachable: 26,355 bytes in 84 blocks
==25779== suppressed: 0 bytes in 0 blocks
==25779== Reachable blocks (those to which a pointer was found) are not shown.
==25779== To see them, rerun with: --leak-check=full --show-leak-kinds=all
==25779==
==25779== For lists of detected and suppressed errors, rerun with: -s
==25779== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
unbind.c:
123 for ( lm = ld->ld_responses; lm != NULL; lm = next ) {
128 if ( ld->ld_abandoned != NULL ) {
132 LDAP_MUTEX_UNLOCK( &ld->ld_res_mutex );
136 ber_int_sb_destroy( ld->ld_sb );
Should this probably be LBER_FREE rather than ber_int_sb_destroy?
I should also note that ITS#4996 (2007, closed) appears to be the issue=20
which resulted in the support for `-H "<proto>:///DN"` being added to=20
the command-line clients.
--=20
Norman Gray : https://nxg.me.uk
SUPA School of Physics and Astronomy, University of Glasgow, UK
Full_Name: Norman Gray
Version: 2.4.47
OS: FreeBSD 12.0 (but not OS-soecific)
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (2001:8b0:df5:af53:c1a5:cbb2:6a6a:3390)
Feature request: support specification of DNS SRV records in ldap.conf, matching
ldapsearch -H
The `ldapsearch` tools supports specifying lookups of SRV records via
a special case syntax in the argument to the `-H` option. A URI such
as ldap:///dc=ldap,dc=example,dc=com (with the commas and equals signs
suitably escaped) prompts ldapsearch to do a lookup of an SRV record
for ldap.example.com.
However the URI synatx in ldap.conf doesn't have a corresponding
special case, so it's not possible to put such a spec in a ldap.conf
file.
The ldap.conf documentation doesn't claim any support for SRV records,
so there isn't a bug here, but on a Principle of Least Astonishment it
would be very useful if the same syntax that -H respects were
respected by ldap.conf as well.
Other LDAP clients have different ways of specifying this (eg,
nslcd.conf supports a `DNS:<domain>` syntax; Linux automount's
`autofs.conf` has a `ldap_uri` attribute which supports a very similar
dc=xxx syntax), so an alternative ldap.conf syntax would be a good
second best.
As an auxiliary point, when `ldapsearch` sees `URI ldap:///dc%3D...`
in the ldap.conf file, it silently ignores it, rather than producing
an error. It doesn't even produce a warning when `ldapsearch` is
invoked with `-d-1`. I had to use strace to reassure myself that the
config file was actually being read. I feel that a library should
make a _lot_ more noise about an attribute in a configuration file
being seen but ignored (I can see that the `ldap://dc...` URI, which
is of course syntactically OK, _might_ be inadvertently meaningful,
and thus not necessarily a detectable error, but even in that case
`-d-1` should produce _something_).
A scan through ITS reports found the following:
* ITS#5919 (2009, still open) discusses a similar request, and
discusses a variety of issues with it. This is a useful cross-reference.
* ITS#6462 (2010, open) and ITS#8610 (2017, open) both touch on SRV records,
but aren't particularly relevant, since they're both about the
handling of ldaps:// URIs specifying a SRV record.
* ITS#7027 (2011, closed) and ITS#8196 (open) are concerned with
the internal handling of SRV records, but not their configuration
$ ldapsearch -VV
ldapsearch: @(#) $OpenLDAP: ldapsearch 2.4.47 (Jul 25 2019 01:30:14) $
root@120amd64-quarterly-job-16:/wrkdirs/usr/ports/net/openldap24-sasl-client/work/openldap-2.4.47/clients/tools
(LDAP library: OpenLDAP 20447)
--On Friday, September 13, 2019 5:54 PM +0000 dpa-openldap(a)aegee.org wrote:
Hello,
The ITS system is for bug reports, not usage questions. Please redirect
your questions to the openldap-technical(a)openldap.org mailing list. This
ITS will be closed.
<https://www.openldap.org/lists/mm/listinfo/openldap-technical>
--Quanah
--
Quanah Gibson-Mount
Product Architect
Symas Corporation
Packaged, certified, and supported LDAP solutions powered by OpenLDAP:
<http://www.symas.com>
Full_Name: Norman Gray
Version: 2.4.48
OS: FreeBSD 12.0
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (130.209.45.140)
Documentation bug
The documentation for the `unique_uri` or `olcUniqueURI` attribute is very
compact, with the result that it is not clear what counts as correct syntax, nor
what are the semantics of the specification.
I'm not suggesting that the text is necessarily _inaccurate_, but that it is too
brief. That is, someone who already understand the syntax and semantics will
probably not notice anything wrong with this paragraph; someone who doesn't
already understand (eg, me) will struggle.
slapo-unique(5) says that the syntax here is:
unique_uri <[strict ][ignore ]URI[URI...]...>
Configure the base, attributes, scope, and filter for uniqueness
checking. Multiple URIs may be specified within a domain,
allowing complex selections of objects. Multiple unique_uri
statements or olcUniqueURI attributes will create independent
domains, each with their own independent lists of URIs and
ignore/strict settings.
Keywords strict and ignore have to be enclosed in quotes (")
together with the URI.
The LDAP URI syntax is a subset of RFC-4516, and takes the form:
ldap:///[base dn]?[attributes...]?scope[?filter]
I understand from this text the following:
* One can specify multiple URIs in the value of a olcUniqueURI attribute. I
_guess_ these can be space-separated, even though that isn't shown in this
syntax.
* Each URI defines a set of object attributes
* One can have multiple olcUniqueURI attributes, _each of which_ creates a
'domain'
* This doesn't say what a 'domain' is, but I _guess_ that it means that all of
the attributes which match the search are forced, by this overlay, to be unique,
but that there are no mutual uniqueness requirements between separate
olcUniqueURI/'domain' specifications
* If multiple URIs are specified in a 'domain', or olcUniqueURI attribute,
then (wild guess) the union of the attributes matched by each URI is unique; I
doubt it means the intersection of the result sets (I guess that because that's
the only thing that sounds sensible; the phrase 'complex selections of objects'
doesn't clarify)
* It's not clear where the quotes go, when combining with 'strict' or 'ignore'
(I guess "strict ldap://...").
* Can 'strict' or 'ignore' be combined with the second or subsequent URIs? The
syntax suggests not.
I don't think the above understanding is correct, because when I specify a
olcUniqueURI attribute with multiple URIs, I get an error (see ITS#9486 and
thread <https://www.openldap.org/lists/openldap-technical/201909/msg00031.html>).
At any rate, I have little confidence that I have interpreted the text
correctly, and the above is the result of several careful readings and some
guesswork.
If the above, or something like it, is roughly correct, I could draft an
alternative paragraph, if that would be useful.
If the manpage included more than one example, that would be _extremely_
useful.
I'll mention in passing that in servers/slapd/overlays/unique.c, the comment
above
`unique_new_domain` says instead
* domain_specs look like
*
* [strict ][ignore ]uri[[ uri]...]
* e.g. "ldap:///ou=foo,o=bar?uid?sub ldap:///ou=baz,o=bar?uid?sub"
* "strict ldap:///ou=accounts,o=bar?uid,uidNumber?one"
* etc