diff options
author | Arthur de Jong <arthur@arthurdejong.org> | 2010-10-08 13:56:56 +0200 |
---|---|---|
committer | Arthur de Jong <arthur@arthurdejong.org> | 2010-10-08 13:56:56 +0200 |
commit | 611dc583a05914f81c97c165163bcce021b0dfac (patch) | |
tree | 7136faabebdef16fc8690f1fee37d209a53fa7dd /nss/networks.c | |
parent | 5afa471c1b514d82da2fde66fbed699a2e2862fa (diff) |
re-introduce {set,get,end}**ent() file handle in Solaris code path and some other miscellaneous small fixes
git-svn-id: http://arthurdejong.org/svn/nss-pam-ldapd/nss-pam-ldapd-solaris@1246 ef36b2f9-881f-0410-afb5-c4e39611909c
Diffstat (limited to 'nss/networks.c')
-rw-r--r-- | nss/networks.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/nss/networks.c b/nss/networks.c index 923f562..d25f8ad 100644 --- a/nss/networks.c +++ b/nss/networks.c @@ -179,7 +179,6 @@ static nss_status_t _xnss_ldap_getnetbyname_r(nss_backend_t UNUSED(*be),void *ar { struct netent priv_network; struct netent *network=NSS_ARGS(args)->buf.result?(struct netent *)NSS_ARGS(args)->buf.result:&priv_network; - char *name=(char *)NSS_ARGS(args)->key.name; int af=NSS_ARGS(args)->key.netaddr.type; char *buffer=NSS_ARGS(args)->buf.buffer; size_t buflen=NSS_ARGS(args)->buf.buflen; @@ -191,7 +190,7 @@ static nss_status_t _xnss_ldap_getnetbyname_r(nss_backend_t UNUSED(*be),void *ar NSS_ARGS(args)->erange=1; return NSS_STATUS_TRYAGAIN; } - status=_nss_nslcd_getnetbyname_r(name,network,buffer, + status=_nss_nslcd_getnetbyname_r(NSS_ARGS(args)->key.name,network,buffer, buflen,&errno,&h_errno); if (status!=NSS_STATUS_SUCCESS) { @@ -202,7 +201,7 @@ static nss_status_t _xnss_ldap_getnetbyname_r(nss_backend_t UNUSED(*be),void *ar { /* result==NULL, return file format */ data_ptr=(char *)malloc(buflen); - sprintf(data_ptr,"%s %s",name,inet_ntoa(network->n_net)); /* ipNetworkNumber */ + sprintf(data_ptr,"%s %s",network->n_name,inet_ntoa(network->n_net)); /* ipNetworkNumber */ if (network->n_aliases) { int i; @@ -291,6 +290,9 @@ static nss_status_t _xnss_ldap_getnetbyaddr_r(nss_backend_t UNUSED(*be),void *ar return status; } +/* thread-local file pointer to an ongoing request */ +static __thread TFILE *netentfp; + static nss_status_t _xnss_ldap_setnetent(nss_backend_t UNUSED(*be),void UNUSED(*args)) { NSS_SETENT(netentfp); |