[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
(ITS#6617) back-sql: 64-bit parent IDs get munged
Full_Name: Andrew Gray
Version: 2.4.23
OS: Debian 5 64-bit
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (131.216.14.1)
64-bit values for (at least) parent IDs do not get resolved correctly - only the
lower 32 bits are preserved. This leads up to a crash as it tries to resolve a
non-existant ID:
To reproduce:
ldap_entries has a row with an ID of 1000000000 with a parent of 9999999999 (and
a row 9999999999 for the parent). When back-sql goes to resolve this, the
following shows in the ODBC trace:
SELECT COUNT(*) FROM ldap_entry_objclasses,ldap_entries,ldap_static_entries
WHERE ldap_static_entries.id=1410065407 AND
ldap_entries.id=ldap_entry_objclasses.entry_id AND
ldap_entries.keyval=ldap_static_entries.id and ldap_entries.oc_map_id=4
(1410065407 = 32-bit rollover of 9999999999).