Thanks everybody for your feedback. If I understand things correctly, there is really nothing much that one can do in the OpenLDAP, for the attribute I am interested in is defined to have case-insensitive values already. Since the string comparison carried out by getpwnam() in Linux is case-sensitive, my only way out seems to be to use 'ignorecase yes' in my /etc/nslcd.conf file - not really that desirable, for a number of reasons, but probably OKin my case.
On Tuesday, August 13, 2019, 05:09:54 PM MDT, Quanah Gibson-Mount quanah@symas.com wrote:
--On Tuesday, August 13, 2019 4:25 PM +0000 JC lovecraftesque@yahoo.com wrote:
Now it seems to be the case that, with a user entry in OpenLDAP as described above, getpwnam("james") will look for an entry such that the its uid attribute takes the value "james". I.e. if the value of uid is, say, "James" then it will be ignored. Which, following the discussion above, doesn't fit my goal.
The "uid" attribute is explicitly defined to be case insensitive in RFC1274, see section 9.3.1 "userid". This is reflected in the OpenLDAP core schema:
#attributetype ( 0.9.2342.19200300.100.1.1 # NAME ( 'uid' 'userid' ) # DESC 'RFC1274: user identifier' # EQUALITY caseIgnoreMatch # SUBSTR caseIgnoreSubstringsMatch # SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
Regards, Quanah
--
Quanah Gibson-Mount Product Architect Symas Corporation Packaged, certified, and supported LDAP solutions powered by OpenLDAP: http://www.symas.com