You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
calculate-overlay/sys-process/vixie-cron/files/vixie-cron-4.1-crontabrace....

30 lines
658 B

--- vixie-cron-4.1/crontab.c
+++ vixie-cron-4.1/crontab.c
@@ -314,8 +314,6 @@
perror("fstat");
goto fatal;
}
- utimebuf.actime = statbuf.st_atime;
- utimebuf.modtime = statbuf.st_mtime;
/* Turn off signals. */
(void)signal(SIGHUP, SIG_IGN);
@@ -374,6 +372,17 @@
perror(Filename);
exit(ERROR_EXIT);
}
+ if (swap_uids() < OK) {
+ perror("swapping uids");
+ exit(ERROR_EXIT);
+ }
+ utimebuf.actime = statbuf.st_atime;
+ utimebuf.modtime = statbuf.st_mtime;
+ utime(Filename, &utimebuf);
+ if (swap_uids_back() < OK) {
+ perror("swapping uids back");
+ exit(ERROR_EXIT);
+ }
utime(Filename, &utimebuf);
again:
rewind(NewCrontab);