File ncpfs-hg-commit-451.patch of Package ncpfs

changeset:   451:4d7bb63d7050
user:        Petr Vandrovec <petr@vandrovec.name>
date:        Sun Oct 16 04:07:06 2005 +0200
files:       contrib/ncp_nss_lib/nss_cfgfile.c contrib/ncp_nss_lib/nss_cfgfile.h contrib/ncp_nss_lib/nss_ncp.c contrib/ncp_nss_lib/nss_ncp.h contrib/ncp_nss_lib/test_ncp_nss.c
description:
Fix warnings in the nss module.  Tweak some functions to not take useless
arguments.  Fix some bugs where long ints are printed by %d...


diff -r f18f9f05b9b8 -r 4d7bb63d7050 contrib/ncp_nss_lib/nss_cfgfile.c
--- a/contrib/ncp_nss_lib/nss_cfgfile.c	Sun Oct 16 02:52:35 2005 +0200
+++ b/contrib/ncp_nss_lib/nss_cfgfile.c	Sun Oct 16 04:07:06 2005 +0200
@@ -40,6 +40,7 @@
 #include <sys/syslog.h>
 
 #include "nss_cfgfile.h"
+#include "nss_ncp.h"
 // temporary define (waiting for a better Makefile)
 #define GLOBALCFGFILE "/etc/ncpfs.conf"
 #ifndef GLOBALCFGFILE
@@ -49,7 +50,7 @@
 
 // #define DEBUG 1
 
-static struct nss_ncp_conf* alloc_nss_ncp_conf (){
+static struct nss_ncp_conf* alloc_nss_ncp_conf (void){
 	struct nss_ncp_conf * conf;
 
 	conf= (struct nss_ncp_conf *)malloc(sizeof(*conf));
@@ -61,7 +62,7 @@ static struct nss_ncp_conf* alloc_nss_nc
 
 void free_nss_ncp_conf (struct nss_ncp_conf *conf){
 #define FREEFIELD(x) do if (conf->x) {free(conf->x) ; conf->x=NULL;} while (0);
-	if (conf && conf !=&defConf) {
+	if (conf) {
 		FREEFIELD(server);
 		FREEFIELD(startCtx);
 		FREEFIELD(ctrlGroup);
@@ -107,7 +108,7 @@ struct check {
         const char *option; 	/* configuration option */
         int mandatory; 		/* can be empty or null */
 	int found;		/*set to TRUE if found in cfg file */
-        void ** value_ptr; 	/* temporary storage place */
+        char ** value_ptr; 	/* temporary storage place */
 	int isNum;		/* 1 is numeric, 0 is string*/
 	const char* defValue;
 };
@@ -120,10 +121,10 @@ void printResults (const char * infos,st
 	for  (ptr=results; ptr->option; ptr++) {
 		if (ptr->isNum)
 			printf ("option=%s mandatory=%d found=%d value=%d isNum=%d defvalue=%s\n",
-				ptr->option,ptr->mandatory,ptr->found,(int*)*ptr->value_ptr,ptr->isNum,ptr->defValue);
+				ptr->option,ptr->mandatory,ptr->found,*(int**)ptr->value_ptr,ptr->isNum,ptr->defValue);
 		else
 			printf ("option=%s mandatory=%d found=%d value=%s isNum=%d defvalue=%s\n",
-				ptr->option,ptr->mandatory,ptr->found,(char*)*ptr->value_ptr,ptr->isNum,ptr->defValue);
+				ptr->option,ptr->mandatory,ptr->found,*ptr->value_ptr,ptr->isNum,ptr->defValue);
 	}
 
 }
@@ -175,13 +176,13 @@ static int process_line (char* cptr, str
 	}
 	*eptr = 0;
 	if (ptr->isNum) {
-		*(int**)ptr->value_ptr=strtoul (sptr,&errPtr,0);
+		*(int*)ptr->value_ptr=strtoul (sptr,&errPtr,0);
 		ptr->found= ((*sptr) && !(*errPtr)); //not empty and no error
 	} else {
 		if (eptr>sptr) { // do not take an empty string value
 			char *v=strdup(sptr);
 			if (v) {
-				*(char**)ptr->value_ptr=v;
+				*ptr->value_ptr=v;
 				ptr->found= TRUE;
 			}else
 				return 1;
@@ -201,11 +202,11 @@ static int fix_conf (struct check *resul
 				return 1;
 			}
 			if (ptr->isNum) {
-				*(int**)ptr->value_ptr=strtoul (ptr->defValue,NULL,0);
+				*(int*)ptr->value_ptr=strtoul (ptr->defValue,NULL,0);
 			}else {
 				char * v=strdup(ptr->defValue);
 				if (v)
-					*(char**)ptr->value_ptr=v;
+					*ptr->value_ptr=v;
 				else
 					return 1;
 			}
@@ -223,22 +224,21 @@ static struct nss_ncp_conf *read_conf_fi
 	if (!conf)
 		return NULL;
 	{
-		struct nss_ncp_conf * pconf=conf;
 		struct check check_confs[] = {
 		/*option	mandat	found	value_ptr		isNum	defValue */
-                {"debug",	FALSE,FALSE,(void**)&conf->debug,	TRUE,	"0"},
-                {"useTree",	FALSE,FALSE,(void**)&conf->useTree,	TRUE,	"0"},
-                {"server",	TRUE,FALSE, (void**)&conf->server,	FALSE,	""},
-                {"startCtx",	FALSE,FALSE,(void**)&conf->startCtx,	FALSE,	""},
-                {"ctrlGroup",	FALSE,FALSE,(void**)&conf->ctrlGroup,	FALSE,	""},
-                {"defGid",	FALSE,FALSE,(void**)&conf->defGid,	TRUE,	"100"},
-		{"defShell",	FALSE,FALSE,(void**)&conf->defShell,	FALSE,	"/bin/bash"},
-                {"fallbackUid",	FALSE,FALSE,(void**)&conf->fallbackUid,	TRUE,	"-1"},
-		{"fallbackGid",	FALSE,FALSE,(void**)&conf->fallbackGid,	TRUE,	"-1"},
-                {"doPasswd",	FALSE,FALSE,(void**)&conf->doPassword,	TRUE,	"0"},
-                {"doGroup",	FALSE,FALSE,(void**)&conf->doGroup,	TRUE,	"0"},
-                {"doShadow",	FALSE,FALSE,(void**)&conf->doShadow,	TRUE,	"0"},
-		{NULL	,	FALSE,FALSE,NULL,			FALSE,	NULL}
+                {"debug",	FALSE,FALSE,(char**)&conf->debug,	TRUE,	"0"},
+                {"useTree",	FALSE,FALSE,(char**)&conf->useTree,	TRUE,	"0"},
+                {"server",	TRUE, FALSE,        &conf->server,	FALSE,	""},
+                {"startCtx",	FALSE,FALSE,        &conf->startCtx,	FALSE,	""},
+                {"ctrlGroup",	FALSE,FALSE,        &conf->ctrlGroup,	FALSE,	""},
+                {"defGid",	FALSE,FALSE,(char**)&conf->defGid,	TRUE,	"100"},
+		{"defShell",	FALSE,FALSE,        &conf->defShell,	FALSE,	"/bin/bash"},
+                {"fallbackUid",	FALSE,FALSE,(char**)&conf->fallbackUid,	TRUE,	"-1"},
+		{"fallbackGid",	FALSE,FALSE,(char**)&conf->fallbackGid,	TRUE,	"-1"},
+                {"doPasswd",	FALSE,FALSE,(char**)&conf->doPassword,	TRUE,	"0"},
+                {"doGroup",	FALSE,FALSE,(char**)&conf->doGroup,	TRUE,	"0"},
+                {"doShadow",	FALSE,FALSE,(char**)&conf->doShadow,	TRUE,	"0"},
+		{NULL	,	FALSE,FALSE,        NULL,		FALSE,	NULL}
 		};
 
 		char cfgline[16384];
@@ -259,7 +259,6 @@ static struct nss_ncp_conf *read_conf_fi
 			cptr++;
 			if (*cptr != '[')
 				continue;
-sstart:;
 			if (strncasecmp(++cptr, mySection, seclen))
 				continue;
 			if (cptr[seclen] != ']')
@@ -299,7 +298,6 @@ ssend:
 			return conf;
 		}
 
-error:
 #ifdef DEBUG
 		printResults("after reading CFG error",check_confs);
 #endif
@@ -310,14 +308,12 @@ error:
 
 }
 
-struct nss_ncp_conf * parse_conf (char * confFile) {
-
+struct nss_ncp_conf* parse_conf(void) {
 	struct cfgFile *cfg;
 	struct nss_ncp_conf *conf;
 #ifdef DEBUG
 	printf("entering parse_conf\n");
 #endif
-	//return &defConf;
 	cfg = cfgOpenFile(GLOBALCFGFILE, FALSE);
 	if (!cfg)
 		return NULL;
diff -r f18f9f05b9b8 -r 4d7bb63d7050 contrib/ncp_nss_lib/nss_cfgfile.h
--- a/contrib/ncp_nss_lib/nss_cfgfile.h	Sun Oct 16 02:52:35 2005 +0200
+++ b/contrib/ncp_nss_lib/nss_cfgfile.h	Sun Oct 16 04:07:06 2005 +0200
@@ -20,11 +20,7 @@ struct nss_ncp_conf {
         int     doShadow;       // if  0, will return immediarly NSS_STATUS_UNAVAILABLE even if ncp is listed in /etc/nsswitch.conf
 };
 
-
-
-static struct nss_ncp_conf defConf ={0,TRUE,"INSA_ROOT","[Root]",NULL,100,"/bin/bash",-1,-1,TRUE,TRUE,TRUE};
-
-struct nss_ncp_conf * parse_conf (char * confFile);
-void free_nss_ncp_conf (struct nss_ncp_conf *conf);
+struct nss_ncp_conf* parse_conf(void);
+void free_nss_ncp_conf(struct nss_ncp_conf *conf);
 
 #endif
diff -r f18f9f05b9b8 -r 4d7bb63d7050 contrib/ncp_nss_lib/nss_ncp.c
--- a/contrib/ncp_nss_lib/nss_ncp.c	Sun Oct 16 02:52:35 2005 +0200
+++ b/contrib/ncp_nss_lib/nss_ncp.c	Sun Oct 16 04:07:06 2005 +0200
@@ -77,7 +77,7 @@
 #include "nss_cfgfile.h"
 
 // only if logfile has been opened by nss API functions (debug mode)
-void trace (int debugMode,int err,const char * format,... ) {
+static void trace (int debugMode,int err,const char * format,... ) {
 	va_list args;
 	if (debugMode)  {
 		va_start(args,format);
@@ -219,7 +219,7 @@ static int fix_nw_user_info (struct nw_u
 		return 1;
 	}
 	}else {
-		ui->uid== (uid_t)-1; // unable to read CN (NDS browse rights not set) , skip it !
+		ui->uid = (uid_t)-1; // unable to read CN (NDS browse rights not set) , skip it !
 	}
 	return 0;
 }
@@ -343,7 +343,7 @@ static int fix_nw_group_info (struct nw_
 			}
 		}
 	}else {
-		gi->gid== (gid_t)-1; // unable to read CN (NDS browse rights not set) , skip it !
+		gi->gid = (gid_t)-1; // unable to read CN (NDS browse rights not set) , skip it !
 	}
 	return 0;
 }
@@ -514,7 +514,7 @@ static int fix_nw_shadow_info (struct nw
 
 		}
 	}else {
-		si->uid== (uid_t)-1; // unable to read CN (NDS browse rights not set) , skip it !
+		si->uid = (uid_t)-1; // unable to read CN (NDS browse rights not set) , skip it !
 	}
 	return 0;
 }
@@ -564,7 +564,7 @@ outnomem:
 
 static void print_nw_shadow_info (struct nw_shadow_info si){
 
-	printf("%s[%d]:%s:%d:%d:%d:%d:%d:%d:%d\n",si.cn,si.uid,si.passwd,si.lstchg,si.sp_min,si.sp_max,si.sp_warn,si.sp_inact,si.sp_expire,si.sp_flag);
+	printf("%s[%d]:%s:%ld:%ld:%ld:%ld:%ld:%ld:%ld\n",si.cn,si.uid,si.passwd,si.lstchg,si.sp_min,si.sp_max,si.sp_warn,si.sp_inact,si.sp_expire,si.sp_flag);
 }
 
 static void print_shadow (struct spwd spw){
@@ -579,8 +579,8 @@ struct nw_user_group_info {
 		uid_t	uid;
 		gid_t*	groups;
 		size_t	used;
-		size_t alloc;
-		int qflag;
+		size_t  alloc;
+		int     qflag;
 	};
 
 
@@ -614,7 +614,7 @@ static int fix_nw_user_group_info (struc
   		if (ui->uid== (uid_t)-1)
 			ui->uid=conf->fallbackUid;
 	}else {
-		ui->uid== (uid_t)-1; // unable to read CN (NDS browse rights not set) , skip it !
+		ui->uid = (uid_t)-1; // unable to read CN (NDS browse rights not set) , skip it !
 	}
 	return 0;
 }
@@ -628,11 +628,11 @@ static enum nss_status nw_user_group_inf
 		 long int *size, gid_t * groups,long int limit,int *errnop,struct nss_ncp_conf * conf) {
 
 	if (ui.uid != (uid_t)-1) {
-		int i;
-		for (i=0; i<ui.used; i++) {
+		size_t i;
+		for (i=0; i < ui.used; i++) {
 			gid_t gid=ui.groups[i];
 			if (gid != group) {  // group number to skip
-				if (*start == *size)
+				if (*start == *size) {
 					if  (limit <=0) {  // no more space, realloc if permitted (limit <=0)
 						gid_t* ngroups=realloc(groups, 2* *size * sizeof(*groups));
 						if (!ngroups) {
@@ -642,6 +642,7 @@ static enum nss_status nw_user_group_inf
 						*size *=2;
 					}else  // no reallocation permitted, leave returning found groups so far
 						break;
+				}
 				groups[*start]=gid;
 				*start +=1;
 				if (*start ==limit) {
@@ -663,7 +664,7 @@ outnomem:
 }
 
 static void print_nw_user_group_info (struct nw_user_group_info ui){
-	int i;
+	size_t i;
 
 	printf("%s:%d:%d:%d:",ui.cn,ui.uid,ui.used,ui.alloc);
 	for (i=0;i <ui.used;i++)
@@ -672,8 +673,8 @@ static void print_nw_user_group_info (st
 }
 
 static void print_user_groups(gid_t * groups, long int start, long int size){
-	int i;
-	printf("start=%d size=%d\n",start,size);
+	long int i;
+	printf("start=%ld size=%ld\n",start,size);
 	for (i=0; i<start; i++)
 		printf("%d ",groups[i]);
 	printf("\n");
@@ -1018,9 +1019,7 @@ static NWDSCCODE nds_user_location2(NWDS
 static NWDSCCODE nds_user_location2(NWDSContextHandle ctx, const void *val, void *arg){
 	struct nw_user_info *ui = (struct nw_user_info *) arg;
 	const char *pt = (const char *) val;
-	char *v;
 	int n;
-	int err;
 
 	trace(ui->qflag,LOG_NOTICE, "start of NW location got %s\n ", pt);
 
@@ -1318,9 +1317,7 @@ static NWDSCCODE nds_shadow_location(NWD
 
 	struct nw_shadow_info *si = (struct nw_shadow_info *) arg;
 	const char *pt = (const char *) val;
-	char *v;
 	int n;
-	int err;
 
 	trace(si->qflag & QF_DEBUG,LOG_NOTICE, "shadow: start of NW location got %s\n ", pt);
 
@@ -1434,10 +1431,7 @@ static NWDSCCODE nds_user_location3(NWDS
 static NWDSCCODE nds_user_location3(NWDSContextHandle ctx, const void *val, void *arg){
 	struct nw_user_group_info *ui = (struct nw_user_group_info *) arg;
 	const char *pt = (const char *) val;
-	char *v;
 	int n;
-	int err;
-
 
 	trace(ui->qflag & QF_DEBUG,LOG_NOTICE, "start of NW location got %s\n ", pt);
 
@@ -1814,7 +1808,6 @@ getgroupmembers(NWDSContextHandle *conte
 		{ ATTR_MEMBERS,		nds_get_group_members,	SYN_MEMBERS},
 		{ NULL,			NULL,			SYN_UNKNOWN }};
 
-	NWDSCCODE err;
 	trace(conf->debug, LOG_NOTICE,"entering getgroupmembers for group %s",groupName);
 	ccode=CreateContextAndConn ( context,conn,conf);
 	if (ccode)
@@ -1834,12 +1827,12 @@ static struct ObjectList* ndsShadows=NUL
 
 // description of a NDS class to be searched by getentbyxx
 struct class_info {
-	char * className;
-	char *  nds8Attribute; //name of ID attribute in NDS8
-	char *  LID1;  	// markers in L attribute for ID (U: or G:)
-	char *  LID2;	// markers in L attribute for ID (u: or g:), may be in lower case
-	char *  LAlias1;// markers in L attribute for alias (N:)
-	char *  LAlias2; // markers in L attribute for alias (n:)  may be in lower case
+	const char * className;
+	const char * nds8Attribute; // name of ID attribute in NDS8
+	const char * LID1;          // markers in L attribute for ID (U: or G:)
+	const char * LID2;          // markers in L attribute for ID (u: or g:), may be in lower case
+	const char * LAlias1;       // markers in L attribute for alias (N:)
+	const char * LAlias2;       // markers in L attribute for alias (n:)  may be in lower case
 
 };
 
@@ -1879,17 +1872,12 @@ static NWDSCCODE getentbyxx(
 	NWDSContextHandle context;
 	NWCONN_HANDLE conn;
 	NWDSCCODE ccode;
-	nint32	iterationHandle= NO_MORE_ITERATIONS; // to be set as such at Exit4
-	nint32	countObjectsSearched;
-	nuint32	objCntr,attrCntr,valCntr;
+	nuint32	iterationHandle = NO_MORE_ITERATIONS; // to be set as such at Exit4
+	nuint32	countObjectsSearched;
+	nuint32	objCntr;
 	nuint32	objCount;
 	nuint32	attrCount;
 	char	objectName[MAX_DN_CHARS+1];
-	char	attrName[MAX_SCHEMA_NAME_CHARS+1];
-	nuint32	attrValCount;
-	nuint32	syntaxID;
-	nuint32	attrValSize;
-	char*	attrVal;
 
 	// buffers
 	pBuf_T	searchFilter=NULL;	// search filter
@@ -2259,14 +2247,14 @@ static NWDSCCODE getentbyxx(
 			}
 		}
 		trace(conf->debug, LOG_NOTICE,"callback return OK");
-	} while ((nuint32)iterationHandle != NO_MORE_ITERATIONS);
+	} while (iterationHandle != NO_MORE_ITERATIONS);
 
 	trace(conf->debug, LOG_NOTICE,"End of iteration  attrNamesOK");
 
 Exit4:
-	if ((nuint32)iterationHandle != NO_MORE_ITERATIONS){
+	if (iterationHandle != NO_MORE_ITERATIONS){
 		NWDSCCODE ccode2;
-		if (ccode2=NWDSCloseIteration(context,iterationHandle,DSV_SEARCH)) {
+		if ((ccode2=NWDSCloseIteration(context,iterationHandle,DSV_SEARCH)) != 0) {
 				traceForce(conf->debug,LOG_WARNING,"NWDSCloseIteration  returned: %d\n", ccode2);
 		}
 	}
@@ -2291,7 +2279,6 @@ Exit3:
 	}else
 		if (retConn)
 			*retConn=conn;
-Exit2:
 	if (ccode || !retContext) {
 	 	NWDSCCODE ccode2=NWDSFreeContext(context);
 		trace(conf->debug, LOG_NOTICE,"Freeing context");
@@ -2300,7 +2287,6 @@ Exit2:
 	}else
 		if (retContext)
 			*retContext=context;
-Exit1:
 	trace(conf->debug, LOG_NOTICE,"Leaving ...");
 	return ccode;
 }
@@ -2417,7 +2403,7 @@ enum nss_status _nss_ncp_initgroups (con
 
 	struct nw_user_group_info inf;
 	NWDSCCODE err;
-	struct nss_ncp_conf *conf= parse_conf(CNF_FILE);
+	struct nss_ncp_conf* conf = parse_conf();
 
 	if (!conf || !conf->doGroup)
 		return NSS_STATUS_UNAVAIL;
@@ -2460,7 +2446,7 @@ enum nss_status _nss_ncp_getpwnam_r (con
 
 	struct nw_user_info inf;
 	NWDSCCODE err;
-	struct nss_ncp_conf *conf= parse_conf(CNF_FILE);
+	struct nss_ncp_conf* conf = parse_conf();
 
 	if (!conf || !conf->doPassword)
 		return NSS_STATUS_UNAVAIL;
@@ -2503,7 +2489,7 @@ enum nss_status _nss_ncp_getpwuid_r (uid
 
 	struct nw_user_info inf;
 	NWDSCCODE err;
-	struct nss_ncp_conf *conf= parse_conf(CNF_FILE);
+	struct nss_ncp_conf* conf = parse_conf();
 
 	if (!conf || !conf->doPassword)
 		return NSS_STATUS_UNAVAIL;
@@ -2546,7 +2532,7 @@ enum nss_status _nss_ncp_getgrnam_r (con
 
 	struct nw_group_info inf;
 	NWDSCCODE err;
-	struct nss_ncp_conf *conf= parse_conf(CNF_FILE);
+	struct nss_ncp_conf* conf = parse_conf();
 
 	if (!conf || !conf->doGroup)
 		return NSS_STATUS_UNAVAIL;
@@ -2588,7 +2574,7 @@ enum nss_status _nss_ncp_getspnam_r (con
                 char *buffer, size_t buflen,int * errnop) {
 	struct nw_shadow_info inf;
 	NWDSCCODE err;
-	struct nss_ncp_conf *conf= parse_conf(CNF_FILE);
+	struct nss_ncp_conf* conf = parse_conf();
 
 	if (!conf || !conf->doShadow)
 		return NSS_STATUS_UNAVAIL;
@@ -2631,7 +2617,7 @@ enum nss_status _nss_ncp_getgrgid_r (gid
 				char * buffer, size_t buflen, int * errnop) {
 	struct nw_group_info inf;
 	NWDSCCODE err;
-	struct nss_ncp_conf *conf= parse_conf(CNF_FILE);
+	struct nss_ncp_conf* conf = parse_conf();
 
 	if (!conf || !conf->doGroup)
 		return NSS_STATUS_UNAVAIL;
@@ -2673,7 +2659,7 @@ enum nss_status _nss_ncp_setpwent(void) 
 	NWDSContextHandle context;
 	NWCONN_HANDLE conn;
 	NWDSCCODE ccode;
-	struct nss_ncp_conf *conf= parse_conf(CNF_FILE);
+	struct nss_ncp_conf* conf = parse_conf();
 
 	if (!conf || !conf->doPassword)
 		return NSS_STATUS_UNAVAIL;
@@ -2715,7 +2701,7 @@ enum nss_status _nss_ncp_setgrent(void) 
 	NWDSContextHandle context;
 	NWCONN_HANDLE conn;
 	enum nss_status ccode;
-	struct nss_ncp_conf *conf= parse_conf(CNF_FILE);
+	struct nss_ncp_conf* conf = parse_conf();
 
 	if (!conf || !conf->doGroup)
 		return NSS_STATUS_UNAVAIL;
@@ -2753,7 +2739,7 @@ enum nss_status _nss_ncp_setspent (void)
 	NWDSContextHandle context;
 	NWCONN_HANDLE conn;
 	NWDSCCODE ccode;
-	struct nss_ncp_conf *conf= parse_conf(CNF_FILE);
+	struct nss_ncp_conf* conf = parse_conf();
 
 	if (!conf || !conf->doShadow)
 		return NSS_STATUS_UNAVAIL;
diff -r f18f9f05b9b8 -r 4d7bb63d7050 contrib/ncp_nss_lib/nss_ncp.h
--- a/contrib/ncp_nss_lib/nss_ncp.h	Sun Oct 16 02:52:35 2005 +0200
+++ b/contrib/ncp_nss_lib/nss_ncp.h	Sun Oct 16 04:07:06 2005 +0200
@@ -121,6 +121,7 @@
 
 
 
+void traceForce(int debugMode, int err, const char* format, ...);
 
 /******************************* NSS API ***************************************/
 
diff -r f18f9f05b9b8 -r 4d7bb63d7050 contrib/ncp_nss_lib/test_ncp_nss.c
--- a/contrib/ncp_nss_lib/test_ncp_nss.c	Sun Oct 16 02:52:35 2005 +0200
+++ b/contrib/ncp_nss_lib/test_ncp_nss.c	Sun Oct 16 04:07:06 2005 +0200
@@ -67,6 +67,7 @@
 #include "nss_cfgfile.h"
 
 
+static struct nss_ncp_conf defConf ={0, TRUE, NULL, NULL, NULL, 100, NULL, -1, -1, TRUE, TRUE, TRUE};
 
 /**************** TESTING ******************/
 
@@ -94,13 +95,13 @@ static void print_shadow (struct spwd sp
 
 static void print_user_groups(gid_t * groups, long int start, long int size){
 	int i;
-	printf("start=%d size=%d\n",start,size);
+	printf("start=%ld size=%ld\n",start,size);
 	for (i=0; i<start; i++)
 		printf("%d ",groups[i]);
 	printf("\n");
 }
 
-void give_details_on_user_groups(gid_t *groups, long int start){
+static void give_details_on_user_groups(gid_t *groups, long int start){
 	struct group grp;
 	char buffer[65000];
 	long int i;
@@ -148,11 +149,6 @@ static void help(void)
 	exit (1);
 }
 
-static void error ( char * s) {
-	printf (_("\n%s\n"),s);
-	exit (1);
-}
-
 /*************************************************************************
 ** main
 */
@@ -174,7 +170,6 @@ int main (int argc, char** argv) {
 	struct passwd pwd;
 	struct group grp;
 	struct spwd spw;
-	enum nss_status err;
 
 	progname = argv[0];
 	while ((opt = getopt(argc, argv, "h?u:n:g:i:s:m:T:B:C:O:f:UGSD2")) != EOF)
@@ -263,7 +258,7 @@ int main (int argc, char** argv) {
 		}
 
 	}
-	if (userId != -1) {
+	if (userId != (uid_t)-1) {
 		printf ("searching in passwd for uid %d\n",userId);
 		if ( _nss_ncp_getpwuid_r (userId, &pwd,buffer,sizeof(buffer),&errno)==NSS_STATUS_SUCCESS)
 			print_passwd(pwd);
@@ -284,7 +279,7 @@ int main (int argc, char** argv) {
 		}
 	}
 
-	if (groupId != -1) {
+	if (groupId != (gid_t)-1) {
 		printf ("searching in group for gid %d\n",groupId);
 		if ( _nss_ncp_getgrgid_r (groupId, &grp,buffer,sizeof(buffer),&errno)==NSS_STATUS_SUCCESS)
 			print_group(grp);

openSUSE Build Service is sponsored by