When editing the entry:
version: 1 # LDIF Export for: dc=. # Generated by phpLDAPadmin ( http://phpldapadmin.sourceforge.net/ ) on July 20, 2008 6:00 pm # Server: My LDAP Server, base: dc=. (localhost) # Search Scope: base # Search Filter: (objectClass=*) # Total Entries: 1 dn: dc=. entryUUID: f574c7ee-c7d0-1028-90fa-db388d9c243a creatorsName: cn=admin,dc=jamie-thompson,dc=co,dc=uk,dc=. createTimestamp: 20041111015842Z objectClass: dNSDomain2 dc: . structuralObjectClass: dNSDomain2 entryCSN: 20080720172423.973583Z#000000#000#000000 modifiersName: cn=admin,dc=jamie-thompson,dc=co,dc=uk,dc=. modifyTimestamp: 20080720172423Z entryDN: dc=. subschemaSubentry: cn=Subschema hasSubordinates: TRUE
I get the errors in question. I've put some debugging dumps in @ line 27 of add_attr_form.php, and I get this: > debug_dump( $entry ); gives:
Array ( [dn] => Array ( [string] => dc=. ) [rdn] => dc=. )
> debug_dump( $dn ); gives: > dc=. > debug_dump( $ldapserver->getDNAttrs($entry['dn']['string']) ); gives:
Array ( [dn] => Array ( [0] => dc=. ) [objectClass] => Array ( [0] => dNSDomain2 ) [dc] => Array ( [0] => . ) )
So, given that I know nothing of how phpldapadmin works, I gather that the problem is that line 27's:
> $dn['attrs'] = ......is going to blow up as it's a string ("dc=."), and not an array. Likewise, the second error I get is on lines 28 & 31, which do much the same:
> $dn['oclasses'] = ...$dn doesn't seem to be populated in that file, so I've no idea if it's meant to be an array or a string, but that would seem to point towards the problem.
- Jamie
signature.asc
Description: OpenPGP digital signature