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

Replication: class filter.



Hello,

i have problems concerning replication and class filter...

If my filter contains only names of attributes, the replication goes.
If it contains the name of a class, I have an object class violation
error...

ex :
DIT of the master :

dc=xxx,dc=fr
      |
      |
    ou=people
      |
      |-----------------------------
      |       |
    ou=employes                  ou=students
      |
  -----------
  |      |  |
 uid=... uid=...



DIT of the slave :



ou=employes,dc=xxx,dc=fr
       |
       |
  -----------
  |      |  |
 uid=... uid=...


*********************
i want to add :
*********************

dn: sn=zozo,ou=employes,ou=people,dc=xxx,dc=fr
objectclass: top
objectclass: person
objectclass: organizationalPerson
objectclass: inetOrgPerson
objectclass: rearsitexxx1
objectclass: webMailxxx1
uid: eiei
cn: zozo eiei
sn:  zozo
givenName: Jean
mail: zozo@ui.xxx.fr
l: France
rearsiteLogin: fantoche
rearsitePassword: cestlepass
rearsiteHomeDirectory: /home/monhome
webMailMail: pouet@pouet.fr
webMailMailDrop: dropdrop
webMailPassword: passdrop

*********************
filter :
*********************

replica host=slave.xxx.fr:389
 suffix="ou=employes,ou=people,dc=xxx,dc=fr"
 binddn="cn=replicator,ou=employes,ou=people,dc=xxx,dc=fr"
 attr!=givenName,mail,uid,l
 bindmethod=simple credentials=secretreplicator

=> All occurs well...

*********************
I want to add :
*********************

dn: uid=lester,ou=employes,ou=people,dc=xxx,dc=fr
objectClass: top
objectClass: posixGroup
objectClass: posixAccount
objectClass: shadowAccount
uid: lester
cn: Lester the Nightfly
userPassword: {crypt}X5/DBrWPOQQaI
gecos: Lester
loginShell: /bin/csh
uidNumber: 10
gidNumber: 10
homeDirectory: /home/lester

**********************
filter rules are :
**********************

replica host=slave.yyy.xxx.fr:389
 suffix="ou=employes,ou=people,dc=xxx,dc=fr"
 binddn="cn=replicator,ou=employes,ou=people,dc=xxx,dc=fr"
 attr!="posixAccount,shadowAccount,loginShell,homeDirectory,uidNumber,gidNumber,gecos"

 bindmethod=simple credentials=secretreplicator

**********************
Extract of the slurpd in debug mode :
*********************

#########################
As soon as slurpd want to replicate the root of my DIT, dang, error...
#########################

replica slave.yyy.xxx.fr:389 - add dn
"ou=employes,ou=people,dc=xxx,dc=fr"
ldap_add_ext
ldap_send_initial_request
ldap_send_server_request
ber_flush: 432 bytes to sd 6
  0000:  30 82 01 ac 02 01 02 68  82 01 88 04 2a 6f 75 3d
0......h....*ou=
  0010:  65 6d 70 6c 6f 79 65 73  2c 6f 75 3d 70 65 6f 70
employes,ou=peop
  0020:  6c 65 2c 64 63 3d 75 2d  62 6f 72 64 65 61 75 78   le,dc=xxx

[...]

ldap_read: want=9, got=9
  0000:  30 24 02 01 02 69 1f 0a  01                        0$...i...
ldap_read: want=29, got=29
  0000:  41 04 00 04 18 6e 6f 20  6f 62 6a 65 63 74 43 6c   A....no
objectCl
  0010:  61 73 73 20 61 74 74 72  69 62 75 74 65            ass
attribute
ber_get_next: tag 0x30 len 36 contents:
ber_dump: buf=0x08082420 ptr=0x08082420 end=0x08082444 len=36
  0000:  02 01 02 69 1f 0a 01 41  04 00 04 18 6e 6f 20 6f
...i...A....no o
  0010:  62 6a 65 63 74 43 6c 61  73 73 20 61 74 74 72 69   bjectClass
attri
  0020:  62 75 74 65                                        bute
ldap_read: message type add msgid 2, original id 2
ber_scanf fmt ({iaa) ber:
ber_dump: buf=0x08082420 ptr=0x08082423 end=0x08082444 len=33
  0000:  69 1f 0a 01 41 04 00 04  18 6e 6f 20 6f 62 6a 65   i...A....no
obje
  0010:  63 74 43 6c 61 73 73 20  61 74 74 72 69 62 75 74   ctClass
attribut
  0020:  65                                                 e
read1msg:  0 new referrals
read1msg:  mark request completed, id = 2
request 2 done
res_errno: 0, res_error: <>, res_matched: <>
ldap_free_request (origid 2, msgid 2)
ldap_free_connection
ldap_free_connection: refcnt 1
ldap_parse_result
ber_scanf fmt ({iaa) ber:
ber_dump: buf=0x08082420 ptr=0x08082423 end=0x08082444 len=33
  0000:  69 1f 0a 01 41 04 00 04  18 6e 6f 20 6f 62 6a 65   i...A....no
obje
  0010:  63 74 43 6c 61 73 73 20  61 74 74 72 69 62 75 74   ctClass
attribut
  0020:  65                                                 e
ber_scanf fmt (}) ber:
ber_dump: buf=0x08082420 ptr=0x08082444 end=0x08082444 len=0

ldap_msgfree
ldap_err2string
Error: ldap_add_s failed adding "Object class violation":
ou=employes,ou=people,dc=xxx,dc=fr
ldap_err2string




Any idea ?


--
Marco Marçal