Full_Name: Cyril COUPEL
Version: 2.3.30-r2
OS: Gentoo
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (82.241.40.178)
Since the openldap update 2.3.30-r2, le LDAP URL are no more recognized in the
bind 9.3.4 named.conf.
Reproducible: Always
Steps to Reproduce:
1. compile BIND with DLZ and LDAP
2. add dlz "ldap zone" {
database "ldap 2
v3 simple {} {} {10.1.2.253}
ldap:///dlzZoneName=%zone%,ou=dns,o=bind-dlz???objectclass=dlzZone
ldap:///dlzHostName=%record%,dlzZoneName=%zone%,ou=dns,o=bind-dlz?dlzTTL,dlzType,dlzPreference,dlzData,dlzIPAddr?sub?(&(objectclass=dlzAbstractRecord)(!(dlzType=soa)))
ldap:///dlzHostName=@,dlzZoneName=%zone%,ou=dns,o=bind-dlz?dlzTTL,dlzType,dlzData,dlzPrimaryNS,dlzAdminEmail,dlzSerial,dlzRefresh,dlzRetry,dlzExpire,dlzMinimum?sub?(&(objectclass=dlzAbstractRecord)(dlzType=soa))
ldap:///dlzZoneName=%zone%,ou=dns,o=bind-dlz?dlzTTL,dlzType,dlzHostName,dlzPreference,dlzData,dlzIPAddr,dlzPrimaryNS,dlzAdminEmail,dlzSerial,dlzRefresh,dlzRetry,dlzExpire,dlzMinimum?sub?(&(objectclass=dlzAbstractRecord)(!(dlzType=soa)))
ldap:///dlzZoneName=%zone%,ou=dns,o=bind-dlz???(&(objectclass=dlzXFR)(dlzIPAddr=%client%))
";
};
to /etc/bind/named.conf
3. start named
Actual Results:
the log says :"failed to parse ldap URL"
Expected Results:
eb 15 16:51:35 sc1 process `named' is using obsolete setsockopt SO_BSDCOMPAT
Feb 15 16:51:35 sc1 named[2220]: Loading 'ldap zone' using driver ldap
Feb 15 16:51:35 sc1 named[2220]: command channel listening on 127.0.0.1#953
Feb 15 16:51:35 sc1 named[2220]: zone 127.in-addr.arpa/IN: loaded serial
2002081601
Feb 15 16:51:35 sc1 named[2220]: zone localhost/IN: loaded serial 2002081601
Feb 15 16:51:35 sc1 named[2220]: running
<quote who="ando(a)sys-net.it">
> ghenry(a)suretecsystems.com wrote:
>
>> Just a quick to note that there are some overlays missing from
>> slapd.overlays.5
>> in 2.4.4alpha and actual man pages.
>
> Please enumerate them; some are intentionally not present because they
> are not intended for real use.
Certainly. Will do in the morning.
>
>> Also, relay and rwm are still marked as experimental in some places.
>
>> grep experimental doc/man/man5/*
>>
>> doc/man/man5/slapd-relay.5:This backend and the above mentioned overlay
>> are
>> experimental.
>>
>> doc/man/man5/slapo-rwm.5:This overlay is experimental.
>>
>> I'll help where I can,
>
> Sure. I believe they are no longer experimental, but they still do not
> support back-config, so better wait until they're complete.
Understood.
>
> p.
>
>
>
> Ing. Pierangelo Masarati
> OpenLDAP Core Team
>
> SysNet s.n.c.
> Via Dossi, 8 - 27100 Pavia - ITALIA
> http://www.sys-net.it
> ------------------------------------------
> Office: +39.02.23998309
> Mobile: +39.333.4963172
> Email: pierangelo.masarati(a)sys-net.it
> ------------------------------------------
>
>
>
kiwi(a)oav.net wrote:
> Full_Name: Xavier Beaudouin
> Version: 2.3.33
> OS: FreeBSD 6.2
> URL: http://www.oav.net/tmp/openldap/
> Submission from: (NULL) (82.225.248.92)
> Sending -> dn : uid=kiwi(a)oav.net,ou=mailboxes,dc=kazar,dc=net
> objectClass : top
> objectClass : kazarPerson
> uid : kiwi(a)oav.net
> cn : Nom Prenom
> description : Sample description
> uidNumber : 10
> gidNumber : 10
> userPassword : Password
> homeDirectory : /home/test
> mailQuota : 50
> CouriermailQuota : 50S
>
> str2entry: entry -1 has no dn
> str2entry(dn) failed
> send_ldap_result: err=0 matched="" text=""
> connection_get(8)
If the above is the way your LDIF is formatted, then back-perl
(actually, str2entry, a helper function in the core of slapd) is working
as intended. There's supposed to be no space between attribute names or
"dn" and the colon ":". Please fix you PERL and report.
p.
Ing. Pierangelo Masarati
OpenLDAP Core Team
SysNet s.n.c.
Via Dossi, 8 - 27100 Pavia - ITALIA
http://www.sys-net.it
------------------------------------------
Office: +39.02.23998309
Mobile: +39.333.4963172
Email: pierangelo.masarati(a)sys-net.it
------------------------------------------
ghenry(a)suretecsystems.com wrote:
> Just a quick to note that there are some overlays missing from slapd.overlays.5
> in 2.4.4alpha and actual man pages.
Please enumerate them; some are intentionally not present because they
are not intended for real use.
> Also, relay and rwm are still marked as experimental in some places.
> grep experimental doc/man/man5/*
>
> doc/man/man5/slapd-relay.5:This backend and the above mentioned overlay are
> experimental.
>
> doc/man/man5/slapo-rwm.5:This overlay is experimental.
>
> I'll help where I can,
Sure. I believe they are no longer experimental, but they still do not
support back-config, so better wait until they're complete.
p.
Ing. Pierangelo Masarati
OpenLDAP Core Team
SysNet s.n.c.
Via Dossi, 8 - 27100 Pavia - ITALIA
http://www.sys-net.it
------------------------------------------
Office: +39.02.23998309
Mobile: +39.333.4963172
Email: pierangelo.masarati(a)sys-net.it
------------------------------------------
Hello Howard,
i'm surely using slurpd. The replication part in slapd.conf of the master is:
replogfile /home/ldap/de/secartis.replog
replica uri=ldap://10.36.125.15:389
bindmethod=simple
binddn="cn=admin,o=secartis,c=de"
credentials=secartis
attrs!=structuralObjectClass
attrs!=entryUUID
attrs!=creatorsName
attrs!=createTimestamp
attrs!=entryCSN
attrs!=modifiersName
attrs!=modifyTimestamp
i.e. i'm using the root account for replication. And that's the mistake. I changed the binddn to a user account and now it works.
Thanks a lot
Kind Regards Wolfgang
-----Original Message-----
From: Howard Chu [mailto:hyc@symas.com]
Sent: Wed 2007-02-21 14:20
To: Christ, Wolfgang
Cc: openldap-its(a)openldap.org
Subject: Re: (ITS#4846) attribute 'objectClass' provided more than once
wolfgang.christ(a)secunet.com wrote:
> Full_Name: Wolfgang Christ
> Version: 2.3.32
> OS: linux
> URL: ftp://ftp.openldap.org/incoming/
> Submission from: (NULL) (213.68.205.167)
>
>
> I'm trying to replicate an OpenLDAP DB using slurpd. But even a simple ldapadd
> with an LDIF file like this:
>
> dn: cn=wolfgang,ou=organization unit,o=organization,c=de
> objectClass: inetOrgPerson
> objectClass: person
> cn: wolfgang
> sn: hilfe
> userCertificate;binary:< file:///cert.crt
>
> OpenLDAP returns an error "attribute 'objectClass' provided more than once". If
> I
> remove the second objectclass with certificate and and add these in a seperate
> modify step, everything is fine.
>
> If i modify "servers/slapd/add.c" in line 318:
>
> /* check for unmodifiable attributes */
> /*rs->sr_err = slap_mods_no_repl_user_mod_check( op,
> modlist, &rs->sr_text, textbuf, textlen );
> if ( rs->sr_err != LDAP_SUCCESS ) {
> send_ldap_result( op, rs );
> goto done;
> }*/
>
> and prevent calling of slap_mods_no_repl_user_mod_check(), replication works.
>
> Could you explain, what is the sense of slap_mods_no_repl_user_mod_check()
> and why it causes slurpd not to work.
Your post makes no sense. That function is only called when a normal user is
trying to add an entry. It is skipped when the replication user is doing the
add. So this should have nothing to do with slurpd.
What are you using to perform the Add operation? Certainly OpenLDAP's ldapadd
tool won't generate an error like this; it can only arise because of a
malformed Add request packet.
--
-- Howard Chu
Chief Architect, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc
Chief Architect, OpenLDAP http://www.openldap.org/project/
wolfgang.christ(a)secunet.com wrote:
> Full_Name: Wolfgang Christ
> Version: 2.3.32
> OS: linux
> URL: ftp://ftp.openldap.org/incoming/
> Submission from: (NULL) (213.68.205.167)
>
>
> I'm trying to replicate an OpenLDAP DB using slurpd. But even a simple ldapadd
> with an LDIF file like this:
>
> dn: cn=wolfgang,ou=organization unit,o=organization,c=de
> objectClass: inetOrgPerson
> objectClass: person
> cn: wolfgang
> sn: hilfe
> userCertificate;binary:< file:///cert.crt
>
> OpenLDAP returns an error "attribute 'objectClass' provided more than once". If
> I
> remove the second objectclass with certificate and and add these in a seperate
> modify step, everything is fine.
>
> If i modify "servers/slapd/add.c" in line 318:
>
> /* check for unmodifiable attributes */
> /*rs->sr_err = slap_mods_no_repl_user_mod_check( op,
> modlist, &rs->sr_text, textbuf, textlen );
> if ( rs->sr_err != LDAP_SUCCESS ) {
> send_ldap_result( op, rs );
> goto done;
> }*/
>
> and prevent calling of slap_mods_no_repl_user_mod_check(), replication works.
>
> Could you explain, what is the sense of slap_mods_no_repl_user_mod_check()
> and why it causes slurpd not to work.
Your post makes no sense. That function is only called when a normal user is
trying to add an entry. It is skipped when the replication user is doing the
add. So this should have nothing to do with slurpd.
What are you using to perform the Add operation? Certainly OpenLDAP's ldapadd
tool won't generate an error like this; it can only arise because of a
malformed Add request packet.
--
-- Howard Chu
Chief Architect, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc
Chief Architect, OpenLDAP http://www.openldap.org/project/
Full_Name: Wolfgang Christ
Version: 2.3.32
OS: linux
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (213.68.205.167)
I'm trying to replicate an OpenLDAP DB using slurpd. But even a simple ldapadd
with an LDIF file like this:
dn: cn=wolfgang,ou=organization unit,o=organization,c=de
objectClass: inetOrgPerson
objectClass: person
cn: wolfgang
sn: hilfe
userCertificate;binary:< file:///cert.crt
OpenLDAP returns an error "attribute 'objectClass' provided more than once". If
I
remove the second objectclass with certificate and and add these in a seperate
modify step, everything is fine.
If i modify "servers/slapd/add.c" in line 318:
/* check for unmodifiable attributes */
/*rs->sr_err = slap_mods_no_repl_user_mod_check( op,
modlist, &rs->sr_text, textbuf, textlen );
if ( rs->sr_err != LDAP_SUCCESS ) {
send_ldap_result( op, rs );
goto done;
}*/
and prevent calling of slap_mods_no_repl_user_mod_check(), replication works.
Could you explain, what is the sense of slap_mods_no_repl_user_mod_check()
and why it causes slurpd not to work.
kind regards
Wolfgang Christ