X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=contrib%2Fslapd-modules%2Fnssov%2Fservice.c;h=b626825bce0ede5fa18962e8e331562fc3d31cc2;hb=ef3b4213ff3fb8dafe3477fc9006ca13b9f7d168;hp=ac5390a18095854463e1cc226886a447ddb2b43c;hpb=016500f41dc1f87a69997f3ce5d4fbd25ac1c593;p=openldap diff --git a/contrib/slapd-modules/nssov/service.c b/contrib/slapd-modules/nssov/service.c index ac5390a180..b626825bce 100644 --- a/contrib/slapd-modules/nssov/service.c +++ b/contrib/slapd-modules/nssov/service.c @@ -1,7 +1,9 @@ /* service.c - service lookup routines */ /* $OpenLDAP$ */ -/* - * Copyright 2008 by Howard Chu, Symas Corp. +/* This work is part of OpenLDAP Software . + * + * Copyright 2008-2012 The OpenLDAP Foundation. + * Portions Copyright 2008 by Howard Chu, Symas Corp. * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -12,7 +14,7 @@ * top-level directory of the distribution or, alternatively, at * . */ -/* +/* ACKNOWLEDGEMENTS: * This code references portions of the nss-ldapd package * written by Arthur de Jong. The nss-ldapd code was forked * from the nss-ldap library written by Luke Howard. @@ -137,7 +139,7 @@ static int write_service(nssov_service_cbp *cbp,Entry *entry) } else { dupname = -1; for (i=0; ia_nvals[i])) { + if ( bvmatch(&name, &a->a_nvals[i])) { dupname = i; break; } @@ -185,7 +187,7 @@ static int write_service(nssov_service_cbp *cbp,Entry *entry) for (i=0;ifp,NSLCD_RESULT_SUCCESS); + WRITE_INT32(cbp->fp,NSLCD_RESULT_BEGIN); WRITE_BERVAL(cbp->fp,&name); if ( dupname >= 0 ) { WRITE_INT32(cbp->fp,numname-1); @@ -209,10 +211,10 @@ NSSOV_HANDLE( char fbuf[1024]; struct berval filter = {sizeof(fbuf)}; filter.bv_val = fbuf; - READ_STRING_BUF2(fp,cbp.nbuf,sizeof(cbp.nbuf)); + READ_STRING(fp,cbp.nbuf); cbp.name.bv_len = tmpint32; cbp.name.bv_val = cbp.nbuf; - READ_STRING_BUF2(fp,cbp.pbuf,sizeof(cbp.pbuf)); + READ_STRING(fp,cbp.pbuf); cbp.prot.bv_len = tmpint32; cbp.prot.bv_val = tmpint32 ? cbp.pbuf : NULL;, Debug(LDAP_DEBUG_TRACE,"nssov_service_byname(%s,%s)\n",cbp.name.bv_val,cbp.prot.bv_val,0);, @@ -229,7 +231,7 @@ NSSOV_HANDLE( READ_INT32(fp,number); cbp.name.bv_val = cbp.nbuf; cbp.name.bv_len = snprintf(cbp.nbuf,sizeof(cbp.nbuf),"%d",number); - READ_STRING_BUF2(fp,cbp.pbuf,sizeof(cbp.pbuf)); + READ_STRING(fp,cbp.pbuf); cbp.prot.bv_len = tmpint32; cbp.prot.bv_val = tmpint32 ? cbp.pbuf : NULL;, Debug(LDAP_DEBUG_TRACE,"nssov_service_bynumber(%s,%s)\n",cbp.name.bv_val,cbp.prot.bv_val,0);,