more crond+crontab integrating with loginutil libbb functions and deleted
patch from Thomas Gleixner to init. Viodz last_patch_108
This commit is contained in:
@@ -40,15 +40,23 @@
|
||||
|
||||
|
||||
/* Become the user and group(s) specified by PW. */
|
||||
void change_identity ( const struct passwd *pw )
|
||||
const char *change_identity_e2str ( const struct passwd *pw )
|
||||
{
|
||||
if ( initgroups ( pw-> pw_name, pw-> pw_gid ) == -1 )
|
||||
bb_perror_msg_and_die ( "cannot set groups" );
|
||||
return "cannot set groups";
|
||||
endgrent ( );
|
||||
|
||||
if ( setgid ( pw-> pw_gid ))
|
||||
bb_perror_msg_and_die ( "cannot set group id" );
|
||||
return "cannot set group id";
|
||||
if ( setuid ( pw->pw_uid ))
|
||||
bb_perror_msg_and_die ( "cannot set user id" );
|
||||
return "cannot set user id";
|
||||
return NULL;
|
||||
}
|
||||
|
||||
void change_identity ( const struct passwd *pw )
|
||||
{
|
||||
const char *err_msg = change_identity_e2str(pw);
|
||||
|
||||
if(err_msg)
|
||||
bb_perror_msg_and_die ( "%s", err_msg );
|
||||
}
|
||||
|
Reference in New Issue
Block a user