[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: modrdn



Well there is a problem with your data ..... the new value you are trying to use as the rdn is
already
a value of the entry so when I check for it already existing then it gives me problems so I say
already exist.


Kurt (and the other LDAP gurus!) could you please glance through this case and let me know what the
standard says about this case...I dont seem to find anything saying that this should be allowed....



Juan








Don Badrak wrote:

> All,
>
> Ok, I tried the modrdn patch Juan Gomeze submitted against 1.2.1.
> Everything compiled fine, and it passed the modrdn tests.
>
> When I tried to modify a entry, I get this error:
>
> ldap_modrdn2_s: Type or value exists
>
> Here's the entry I was modifying.
>
>         dn: cn=C H Monk Jr,ou=People,o=U.S. Census Bureau,c=US
>         sn: Monk
>         cn: C Harvey Monk Jr
>         givenname: C
>         initials: Harvey
>         generationqualifier: Jr
>         telephonenumber: +1 301 457 2255
>         flastname: cmonk
>         ccmailpostoffice: FTD1
>         department: FTD
>         physicaldeliveryofficename: 3-2104
>         mail: C.Harvey.Monk.Jr@ccMail.Census.GOV
>         mailacceptinggeneralid: charveymonkjr
>         maildrop: C.Harvey.Monk.Jr@ccMail.Census.GOV
>         objectclass: top
>         objectclass: person
>
> And the modification I was trying to make (this is the file ldapmodrdn.19990519.1):
>
>         cn=C H Monk Jr,ou=People,o=U.S. Census Bureau,c=US
>         cn=C Harvey Monk Jr
>
> It did the same thing both with and without the -r flag.  Here is the output
> from the ldapmodrn -d 15:
>
> % ldapmodrdn -v -d 15 -D "cn=Manager,o=U.S. Census Bureau,c=US" -w xxxxxx -f ldapmodrdn.19990519.1
>
> ldap_init
> ldap_bind_s
> ldap_simple_bind_s
> ldap_simple_bind
> ldap_send_initial_request
> open_ldap_connection
> ldap_connect_to_host: ldap-master.geo.census.gov:389
> sd 4 connected to: 148.129.238.22
> ldap_delayed_open successful, ld_host is (null)
> ldap_send_server_request
> ber_flush: 56 bytes to sd 4
>          0  6 02 01 01  `  1 02 01 02 04  $  c  n  =  M
>          a  n  a  g  e  r  ,  o  =  U  .  S  . 20  C  e
>          n  s  u  s 20  B  u  r  e  a  u  ,  c  =  U  S
>         80 06  x  x  x  x  x  x
> ldap_result
> wait4msg (infinite timeout)
> ** Connections:
> * host: ldap-master.geo.census.gov  port: 389  (default)
>   refcnt: 2  status: Connected
>   last used: Wed May 19 16:49:01 1999
>
> ** Outstanding Requests:
>  * msgid 1,  origid 1, status InProgress
>    outstanding referrals 0, parent count 0
> ** Response Queue:
>    Empty
> do_ldap_select
> read1msg
> ber_get_next
> ber_get_next: tag 0x30 len 12 contents:
> ber_dump: buf 0x1003e8a8, ptr 0x1003e8a8, end 0x1003e8b4
>           current len 12, contents:
>         02 01 01  a 07 0a 01 00 04 00 04 00
> got result msgid 1, original id 1
> new result:  res_errno: 0, res_error: <>, res_matched: <>
> read1msg:  0 new referrals
> request 1 done
> res_errno: 0, res_error: <>, res_matched: <>
> ldap_free_request (origid 1, msgid 1)
> ldap_free_connection
> ldap_free_connection: refcnt 1
> ldap_result2error
> ldap_msgfree
> modrdn cn=C H Monk Jr,ou=People,o=U.S. Census Bureau,c=US:
>         cn=C Harvey Monk Jr
> keeping old RDN
> ldap_modrdn
> ldap_send_initial_request
> ldap_send_server_request
> ber_flush: 83 bytes to sd 4
>          0  Q 02 01 02  l  L 04  2  c  n  =  C 20  H 20
>          M  o  n  k 20  J  r  ,  o  u  =  P  e  o  p  l
>          e  ,  o  =  U  .  S  . 20  C  e  n  s  u  s 20
>          B  u  r  e  a  u  ,  c  =  U  S 04 13  c  n  =
>          C 20  H  a  r  v  e  y 20  M  o  n  k 20  J  r
>         01 01 00
> ldap_result
> wait4msg (infinite timeout)
> ** Connections:
> * host: ldap-master.geo.census.gov  port: 389  (default)
>   refcnt: 2  status: Connected
>   last used: Wed May 19 16:49:01 1999
>
> ** Outstanding Requests:
>  * msgid 2,  origid 2, status InProgress
>    outstanding referrals 0, parent count 0
> ** Response Queue:
>    Empty
> do_ldap_select
> read1msg
> ber_get_next
> ber_get_next: tag 0x30 len 12 contents:
> ber_dump: buf 0x1003e8a8, ptr 0x1003e8a8, end 0x1003e8b4
>           current len 12, contents:
>         02 01 02  m 07 0a 01 14 04 00 04 00
> got result msgid 2, original id 2
> ldap_chase_referrals
> new result:  res_errno: 20, res_error: <>, res_matched: <>
> read1msg:  0 new referrals
> request 2 done
> res_errno: 20, res_error: <>, res_matched: <>
> ldap_free_request (origid 2, msgid 2)
> ldap_free_connection
> ldap_free_connection: refcnt 1
> ldap_result2error
> ldap_msgfree
> ldap_perror
> ldap_modrdn2_s: Type or value exists
> ldap_unbind
> ldap_free_connection
> ldap_send_unbind
> ber_flush: 7 bytes to sd 4
>          0 05 02 01 03  B 00
> ldap_free_connection: actually freed
>
> --
> This is the same way I was doing it in prior versions of OpenLDAP, which
> had modrdn working correctly.
>
> Any ideas?
>
> Don
> --
> Don Badrak <dbadrak@census.gov>              301.457.8263 work
> Telecommunications Office                    301.457.4438 fax
> U.S. Bureau of the Census
> Suitland MD, USA