Good day,
Can anyone know how to update the ldap objects in ver 2.4.31.
I have an object:
* dn: cn=crit3,ou=criteria,o=n1,dc=nodomain* * objectClass: top* * objectClass: n1criterion* * cn: crit3* * n1asn: 1004* * n1cc: US* * n1fqdn: nask.pl* * n1iprange: 4000,4004* * * *with def: * * attributetype ( 1.5.2.6.6.6.1 * * NAME 'n1asn' * * DESC 'number Autonomous System' * * SUP cn * * )* * * * attributetype ( 1.5.2.6.6.6.2 * * NAME 'n1cc' * * DESC 'country code' * * SUP cn * * )* * * * attributetype ( 1.5.2.6.6.6.3 * * NAME 'n1fqdn' * * DESC 'domain' * * SUP cn * * )* * * * attributetype ( 1.5.2.6.6.6.4 * * NAME 'n1iprange' * * DESC 'ip range' * * SUP cn * * )* * * * objectclass ( 1.5.2.6.6.7.1 * * NAME 'n1criterion' * * DESC 'criterion' * * SUP top * * STRUCTURAL * * MUST cn * * MAY ( n1asn $ n1cc $ n1fqdn $ n1iprange ) * * )*
and I want to add another attribute, say n1yyy
* attributetype ( 1.3.6.1.4.1.111111.99.7 * * NAME 'n1yyy' * * DESC 'vvvv' * * SUP n1cc * * )* * * * objectclass ( 1.3.6.1.4.1.111111.99.8 * * NAME 'n1CNEWcollect' * * DESC 'cvcxvcxvxc' * * SUP n1criterion * * STRUCTURAL * * MAY n1yyy * * )*
So creating new atrubut, and class it uses, adding to the schema
I want to add to the object dn, a new class, or replace existing it gets the error:
* #!RESULT ERROR* * #!CONNECTION ldap://deb:389* * #!DATE 2013-10-23T10:14:34.751* * #!ERROR [LDAP: error code 69 - structural object class modification from 'n1criterion' to 'n1CNEWcollect' not allowed]* * dn: cn=crit3,ou=criteria,o=n1,dc=nodomain* * changetype: modify* * add: objectClass* * objectClass: n1CNEWcollect* * -* * * * #!RESULT ERROR* * #!CONNECTION ldap://deb:389* * #!DATE 2013-10-23T10:17:33.763* * #!ERROR [LDAP: error code 69 - structural object class modification from 'n1criterion' to 'n1CNEWcollect' not allowed]* * dn: cn=crit3,ou=criteria,o=n1,dc=nodomain* * changetype: modify* * add: n1yyy* * n1yyy: SS* * -* * add: objectClass* * objectClass: n1CNEWcollect* * -* * * * #!RESULT ERROR* * #!CONNECTION ldap://deb:389* * #!DATE 2013-10-23T10:18:15.412* * #!ERROR [LDAP: error code 69 - structural object class modification from 'n1criterion' to 'n1CNEWcollect' not allowed]* * dn: cn=crit3,ou=criteria,o=n1,dc=nodomain* * changetype: modify* * add: cn* * cn: dddd* * -* * add: objectClass* * objectClass: n1CNEWcollect*
The only thing that works is: -export facility to ldif -swapping of a new class (which inherits old) -Remove the item from the tree, -add the ldif (with swapped class)
Maybe I do not understand something, ask for help, how to expand objects
Mariusz
--On Wednesday, October 23, 2013 12:44 PM +0200 Artur Nike opalsie@gmail.com wrote:
The only thing that works is: -export facility to ldif -swapping of a new class (which inherits old) -Remove the item from the tree, -add the ldif (with swapped class)
Maybe I do not understand something, ask for help, how to expand objects
An object can only be of one structural type. I.e., you cannot simply make an apple become an orange. You may wish to look at using an AUXILIARY objectClass to "add-on" attributes to an existing object.
--Quanah
--
Quanah Gibson-Mount Architect - Server Zimbra, Inc. -------------------- Zimbra :: the leader in open source messaging and collaboration
openldap-technical@openldap.org