Consistently use size_t for buflen
[hcoop/debian/libnss-afs.git] / nss_afs.c
index aa9ed1a..ebd527a 100644 (file)
--- a/nss_afs.c
+++ b/nss_afs.c
@@ -110,7 +110,7 @@ int cpstr( char *str, char **buf, size_t *buflen) {
 /**
  * Look up the name corresponding to uid, store in buffer.
  */
-enum nss_status ptsid2name(int uid, char **buffer, int *buflen) {
+enum nss_status ptsid2name(int uid, char **buffer, size_t *buflen) {
   int ret, i;
   idlist lid;
   namelist lnames;
@@ -138,7 +138,7 @@ enum nss_status ptsid2name(int uid, char **buffer, int *buflen) {
   ret = NSS_STATUS_NOTFOUND;
   for (i=0;i<lnames.namelist_len;i++) {
     int delta = strlen(lnames.namelist_val[i]);
-    if ( (delta < buflen) && islower(*(lnames.namelist_val[i])) ) {
+    if ( (delta < *buflen) && islower(*(lnames.namelist_val[i])) ) {
       cpstr(lnames.namelist_val[i], buffer, buflen);
       ret = NSS_STATUS_SUCCESS;
     }
@@ -324,7 +324,7 @@ int get_shell(char *name, char **buffer, size_t *buflen) {
   int temp;
   char *b;
   char* bufx = buf;
-  int bufxlen = 256;
+  size_t bufxlen = 256;
   b=*buffer;
 
   switch (shells_method) {
@@ -390,7 +390,7 @@ enum nss_status _nss_afs_getgrgid_r (gid_t gid,
     if (!cpstr("z",&buffer,&buflen)) break;
 
     if (buflen < sizeof(char*)) break;
-    result->gr_mem=buffer;
+    result->gr_mem=&buffer;
     result->gr_mem[0] = NULL;
 
     *errnop=errno;