tech-userlevel archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

nss-pam-ldapd port: testing getpwnam_r() and friends



Nearly a year ago, I wrote:
> I'm currently porting nss-pam-ldapd to NetBSD and need some advice.
> 
> The nss-pam-ldapd clients have originally been designed for glibc and then 
> extended to support Solaris and FreeBSD NSS via compatibility shims. For 
> FreeBSD, this is made easier by __nss_compat_xxx() functions in their libc 
> (lib/libc/net/nss_compat.c) emulating the FreeBSD NSS interface on top of 
> glibc's.
[...]
> I do have a working (at least for NSS and as far as I can currently tell) 
> package, but I would like someone to have a look at my code, especially the 
> xxx_r() functions.

I still would need some help with getpwnam_r(), getgrnam_r() and friends:
either by someone reading and verifying my code or by someone telling me
how I can test that the _r functions I wrote are really re-entrant.

I'm increasingly running into linking issues due to nss_ldap pulling in 
libldap and that pulling in openssl; I'd rather sooner than later get rid of 
nss_ldap and switch to nss-pam-ldapd; I think NetBSD would benefit from 
a more modern LDAP-to-NSS interface. But NSS is a delicate thing, and I'm 
far from confident that my code wouldn't introduce some subtle bugs.

I attach what I've got as a pkgsrc package. I'd relly like to persue this 
further, but I'm stuck without some expert's advice.

Attachment: nss-pam-ldapd.tgz
Description: application/tar-gz



Home | Main Index | Thread Index | Old Index