Bug 14235 - String-Custom-Attribute lässt sich nicht leersetzen
String-Custom-Attribute lässt sich nicht leersetzen
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: UDM - Extended Attributes
UCS 2.2
All All
: P5 normal (vote)
: UCS 2.4-2
Assigned To: Sönke Schwardt-Krummrich
Felix Botner
:
: 22204 (view as bug list)
Depends on:
Blocks: 26958
  Show dependency treegraph
 
Reported: 2009-04-21 07:47 CEST by Ingo Steuwer
Modified: 2012-05-02 09:43 CEST (History)
2 users (show)

See Also:
What kind of report is it?: ---
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ingo Steuwer univentionstaff 2009-04-21 07:47:04 CEST
Ich habe in UCS 2.2 das organizationalPerson-Attribut "audio" an einem User als Custom Attribute mit der Syntax String angelegt, damit lassen sich auch Werte setzen.

Versucht man aber den String zu entfernen kommt der LDAP-Fehler "Inappropriate matching".

Ich glaube dass ich das als multivalue angelegt habe.
Comment 1 Janis Meybohm univentionstaff 2010-08-05 10:38:03 CEST
 Ticket#: 2010072710001621

Das tritt auch unter 2.3-2 mit extendet Attributes auf. Der letze Wert eines Multivalue-String EA lässt sich nicht über den UDM löschen ( "Inappropriate matching")


# udm settings/extended_attribute create --position "cn=custom
attributes,cn=univention,dc=univention,dc=qa" --set name=fax --set
shortDescription=FaxNumber --set tabName=Contact --set
translationTabName="de_DE Kontakt" --set CLIName=fax --set mayChange=1 --set
multivalue=1 --set module="users/user" --set objectClass=inetOrgPerson --set
ldapMapping=facsimileTelephoneNumber
Comment 2 Sönke Schwardt-Krummrich univentionstaff 2011-02-22 12:31:25 CET
facsimileTelephoneNumber besitzt keine equality- oder substr-Rule. python-ldap versucht jedoch, den letzten Wert gezielt unter Angabe des Wertes aus dem LDAP zu entfernen, was dann zu dem Fehler "Inappropriate matching" führt.
Die Syntax 1.3.6.1.4.1.1466.115.121.1.22 (FAX-Nummer) bietet nicht die Möglichkeit, eine equality-Regel anzugeben. Daher wurde der Datentyp des Attributs auf String (max Länge: 64) geändert und mit entsprechenden equality- und substr-Rules versehen.
Die Änderung wurde als Patch gegen das Paket openldap realisiert.

Das "audio"-Attribut ist laut http://www.ietf.org/rfc/rfc1274.txt darauf ausgelegt, u-law Audio-Daten zu speichern. Das ergibt als Custom Attribute keinen Sinn. Daher wurde dieses Attribut nicht angepasst.

Paket wurde im 2.4-2 Scope neu gebaut. Changelogeintrag wurde vorgenommen.
Comment 3 Felix Botner univentionstaff 2011-03-04 12:13:24 CET
Mit facsimileTelephoneNumber funktioniert es nun (audio sollte kein multivalue sein):

-> udm settings/extended_attribute create \
   --position "cn=custom attributes,cn=univention,dc=univention,dc=qa" \
   --set name=fax --set shortDescription=FaxNumber \
   --set tabName=Contact --set translationTabName="de_DE Kontakt" \
   --set CLIName=fax --set mayChange=1 --set multivalue=1 \
   --set module="users/user" --set objectClass=inetOrgPerson \
   --set ldapMapping=facsimileTelephoneNumber

-> udm users/user modify --dn uid=Administrator,cn=users,dc=univention,dc=qa \
  --append fax=1
-> udm users/user modify --dn uid=Administrator,cn=users,dc=univention,dc=qa \
  --append fax=2
-> udm users/user modify --dn uid=Administrator,cn=users,dc=univention,dc=qa \
  --append fax=3

-> ldapsearch -x uid=Administrator facsimileTelephoneNumber -LLL
dn: uid=Administrator,cn=users,dc=univention,dc=qa
facsimileTelephoneNumber: 1
facsimileTelephoneNumber: 2
facsimileTelephoneNumber: 3

-> udm users/user modify --dn uid=Administrator,cn=users,dc=univention,dc=qa \
   --remove fax=1
-> udm users/user modify --dn uid=Administrator,cn=users,dc=univention,dc=qa \
   --remove fax=2
-> udm users/user modify --dn uid=Administrator,cn=users,dc=univention,dc=qa \
   --remove fax=3

-> ldapsearch -x uid=Administrator facsimileTelephoneNumber -LLL
dn: uid=Administrator,cn=users,dc=univention,dc=qa

-> cat /etc/ldap/schema/core.schema
attributetype ( 2.5.4.23 NAME ( 'facsimileTelephoneNumber' 'fax' )
        DESC 'RFC2256: Facsimile (Fax) Telephone Number'
        EQUALITY caseIgnoreMatch
        SUBSTR caseIgnoreSubstringsMatch
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{64} )

Changelog Eintrag vorhanden.
Comment 4 Sönke Schwardt-Krummrich univentionstaff 2011-04-04 15:47:13 CEST
UCS 2.4-2 wurde veröffentlicht. Sollte der hier beschriebene Bug mit einer
neueren Version von UCS erneut auftreten, so sollte der Bug dupliziert werden:
"Clone This Bug".
Comment 5 Jan Christoph Ebersbach univentionstaff 2011-04-14 11:45:17 CEST
*** Bug 22204 has been marked as a duplicate of this bug. ***