File vixie-cron-4.1-initgroups_check.patch of Package cron
Index: vixie-cron-4.1/do_command.c
===================================================================
--- vixie-cron-4.1.orig/do_command.c
+++ vixie-cron-4.1/do_command.c
@@ -331,8 +331,12 @@ child_process(entry *e, user *u) {
}
}
#else
-
- initgroups(usernm, e->pwd->pw_gid);
+ if (initgroups(usernm, e->pwd->pw_gid) !=0) {
+ char msg[256];
+ snprintf(msg, 256, "do_command:initgroups(%lu) failed: %s",(unsigned long) e->pwd->pw_gid, strerror(errno));
+ log_it("CRON",getpid(),"error",msg);
+ exit(ERROR_EXIT);
+ }
#if (defined(BSD)) && (BSD >= 199103)
setlogin(usernm);
#endif /* BSD */