X-Git-Url: http://ftp.carnet.hr/carnet-debian/scm?p=ossec-hids.git;a=blobdiff_plain;f=src%2Fshared%2Fprivsep_op.c;h=b24cb31d6a93150cd467309ea55af9b505365e8b;hp=1e0ce18db63dd82bf64a71b0d86875eb0d483f8b;hb=6ef2f786c6c8ead94841b5f93baf9f43421f08c8;hpb=301048b51990573e58a30dc4a5bb4ec285cad554 diff --git a/src/shared/privsep_op.c b/src/shared/privsep_op.c index 1e0ce18..b24cb31 100755 --- a/src/shared/privsep_op.c +++ b/src/shared/privsep_op.c @@ -29,30 +29,30 @@ int Privsep_GetUser(char * name) { int os_uid = -1; - + struct passwd *pw; pw = getpwnam(name); if(pw == NULL) return(OS_INVALID); os_uid = (int)pw->pw_uid; - endpwent(); - + endpwent(); + return(os_uid); } int Privsep_GetGroup(char * name) { int os_gid = -1; - + struct group *grp; grp = getgrnam(name); if(grp == NULL) return(OS_INVALID); os_gid = (int)grp->gr_gid; - endgrent(); - + endgrent(); + return(os_gid); } @@ -72,16 +72,16 @@ int Privsep_SetUser(uid_t uid) int Privsep_SetGroup(gid_t gid) { if (setgroups(1, &gid) == -1) - return(OS_INVALID); - + return(OS_INVALID); + #ifndef HPUX if(setegid(gid) < 0) return(OS_INVALID); #endif - + if(setgid(gid) < 0) return(OS_INVALID); - + return(OS_SUCCESS); } @@ -89,12 +89,12 @@ int Privsep_Chroot(char * path) { if(chdir(path) < 0) return(OS_INVALID); - + if(chroot(path) < 0) return(OS_INVALID); - + chdir("/"); - + return(OS_SUCCESS); }