|
Marcela Mašláňová |
f2de85 |
diff -up at-3.1.11/at.1.in.typo at-3.1.11/at.1.in
|
|
Marcela Mašláňová |
f2de85 |
--- at-3.1.11/at.1.in.typo 2009-08-14 12:49:05.000000000 -0400
|
|
Marcela Mašláňová |
f2de85 |
+++ at-3.1.11/at.1.in 2009-09-29 13:11:37.869869479 -0400
|
|
Marcela Mašláňová |
f2de85 |
@@ -89,7 +89,9 @@ or giving a date of the form
|
|
Marcela Mašláňová |
f2de85 |
or
|
|
Marcela Mašláňová |
f2de85 |
.B MM/DD/YY
|
|
Marcela Mašláňová |
f2de85 |
or
|
|
Marcela Mašláňová |
f2de85 |
-.B DD.MM.YY.
|
|
Marcela Mašláňová |
f2de85 |
+.B DD.MM.YY
|
|
Marcela Mašláňová |
f2de85 |
+or
|
|
Marcela Mašláňová |
f2de85 |
+.B YYYY-MM-DD.
|
|
Marcela Mašláňová |
f2de85 |
The specification of a date
|
|
Marcela Mašláňová |
f2de85 |
.I must
|
|
Marcela Mašláňová |
f2de85 |
follow the specification of the time of day.
|
|
Marcela Mašláňová |
f2de85 |
@@ -119,7 +121,7 @@ and to run a job at 1am tomorrow, you wo
|
|
Marcela Mašláňová |
f2de85 |
.B at 1am tomorrow.
|
|
Marcela Mašláňová |
f2de85 |
.PP
|
|
Marcela Mašláňová |
f2de85 |
The exact definition of the time specification can be found in
|
|
Marcela Mašláňová |
f2de85 |
-.IR @prefix@/share/doc/at/timespec .
|
|
Marcela Mašláňová |
f2de85 |
+.IR @prefix@/share/doc/at-@VERSION@/timespec .
|
|
Marcela Mašláňová |
f2de85 |
.PP
|
|
Marcela Mašláňová |
f2de85 |
For both
|
|
Marcela Mašláňová |
f2de85 |
.BR at " and " batch ,
|
|
Marcela Mašláňová |
f2de85 |
diff -up at-3.1.11/atd.c.typo at-3.1.11/atd.c
|
|
Marcela Mašláňová |
f2de85 |
--- at-3.1.11/atd.c.typo 2009-09-29 13:02:17.068860987 -0400
|
|
Marcela Mašláňová |
f2de85 |
+++ at-3.1.11/atd.c 2009-09-29 13:02:17.099881137 -0400
|
|
Marcela Mašláňová |
f2de85 |
@@ -276,6 +276,8 @@ run_file(const char *filename, uid_t uid
|
|
Marcela Mašláňová |
f2de85 |
free(newname);
|
|
Marcela Mašláňová |
f2de85 |
return;
|
|
Marcela Mašláňová |
f2de85 |
}
|
|
Marcela Mašláňová |
f2de85 |
+ (void) setsid(); //own session for process
|
|
Marcela Mašláňová |
f2de85 |
+
|
|
Marcela Mašláňová |
f2de85 |
/* Let's see who we mail to. Hopefully, we can read it from
|
|
Marcela Mašláňová |
f2de85 |
* the command file; if not, send it to the owner, or, failing that,
|
|
Marcela Mašláňová |
f2de85 |
* to root.
|
|
Marcela Mašláňová |
f2de85 |
@@ -497,7 +499,7 @@ run_file(const char *filename, uid_t uid
|
|
Marcela Mašláňová |
f2de85 |
#if defined(SENDMAIL)
|
|
Marcela Mašláňová |
f2de85 |
execl(SENDMAIL, "sendmail", mailname, (char *) NULL);
|
|
Marcela Mašláňová |
f2de85 |
#else
|
|
Marcela Mašláňová |
f2de85 |
-#error "No mail command specified."
|
|
Marcela Mašláňová |
f2de85 |
+ perr("No mail command specified.");
|
|
Marcela Mašláňová |
f2de85 |
#endif
|
|
Marcela Mašláňová |
f2de85 |
perr("Exec failed for mail command");
|
|
Marcela Mašláňová |
f2de85 |
|
|
Marcela Mašláňová |
f2de85 |
@@ -606,6 +608,7 @@ run_loop()
|
|
Marcela Mašláňová |
f2de85 |
* Let's remove the lockfile and reschedule.
|
|
Marcela Mašláňová |
f2de85 |
*/
|
|
Marcela Mašláňová |
f2de85 |
strncpy(lock_name, dirent->d_name, sizeof(lock_name));
|
|
Marcela Mašláňová |
f2de85 |
+ lock_name[sizeof(lock_name)-1] = '\0';
|
|
Marcela Mašláňová |
f2de85 |
lock_name[0] = '=';
|
|
Marcela Mašláňová |
f2de85 |
unlink(lock_name);
|
|
Marcela Mašláňová |
f2de85 |
next_job = now;
|
|
Marcela Mašláňová |
f2de85 |
@@ -640,6 +643,7 @@ run_loop()
|
|
Marcela Mašláňová |
f2de85 |
run_batch++;
|
|
Marcela Mašláňová |
f2de85 |
if (strcmp(batch_name, dirent->d_name) > 0) {
|
|
Marcela Mašláňová |
f2de85 |
strncpy(batch_name, dirent->d_name, sizeof(batch_name));
|
|
Marcela Mašláňová |
f2de85 |
+ batch_name[sizeof(batch_name)-1] = '\0';
|
|
Marcela Mašláňová |
f2de85 |
batch_uid = buf.st_uid;
|
|
Marcela Mašláňová |
f2de85 |
batch_gid = buf.st_gid;
|
|
Marcela Mašláňová |
f2de85 |
batch_queue = queue;
|
|
Marcela Mašláňová |
f2de85 |
|
|
Marcela Mašláňová |
f2de85 |
diff -up at-3.1.11/configure.ac.aaa at-3.1.11/configure.ac
|
|
Marcela Mašláňová |
f2de85 |
--- at-3.1.11/configure.ac.aaa 2009-08-14 12:49:05.000000000 -0400
|
|
Marcela Mašláňová |
f2de85 |
+++ at-3.1.11/configure.ac 2009-09-29 13:35:59.230866054 -0400
|
|
Marcela Mašláňová |
f2de85 |
@@ -5,7 +5,7 @@ AC_CONFIG_SRCDIR(at.c)
|
|
Marcela Mašláňová |
f2de85 |
|
|
Marcela Mašláňová |
f2de85 |
AC_PREFIX_DEFAULT(/usr)
|
|
Marcela Mašláňová |
f2de85 |
AC_CONFIG_HEADER(config.h)
|
|
Marcela Mašláňová |
f2de85 |
-AC_PREREQ([2.64])
|
|
Marcela Mašláňová |
f2de85 |
+AC_PREREQ([2.63])
|
|
Marcela Mašláňová |
f2de85 |
|
|
Marcela Mašláňová |
f2de85 |
VERSION=AC_PACKAGE_VERSION
|
|
Marcela Mašláňová |
f2de85 |
if test "X$CFLAGS" = "X"; then
|
|
Marcela Mašláňová |
f2de85 |
diff -up at-3.1.11/atd.c.seg at-3.1.11/atd.c
|
|
Marcela Mašláňová |
f2de85 |
--- at-3.1.11/atd.c.seg 2009-08-14 12:49:05.000000000 -0400
|
|
Marcela Mašláňová |
f2de85 |
+++ at-3.1.11/atd.c 2009-09-29 12:15:55.200864618 -0400
|
|
Marcela Mašláňová |
f2de85 |
@@ -435,6 +435,9 @@ run_file(const char *filename, uid_t uid
|
|
Marcela Mašláňová |
f2de85 |
if (setuid(uid) < 0)
|
|
Marcela Mašláňová |
f2de85 |
perr("Cannot set user id");
|
|
Marcela Mašláňová |
f2de85 |
|
|
Marcela Mašláňová |
f2de85 |
+ if (SIG_ERR == signal(SIGCHLD, SIG_DFL))
|
|
Marcela Mašláňová |
f2de85 |
+ perr("Cannot reset signal handler to default");
|
|
Marcela Mašláňová |
f2de85 |
+
|
|
Marcela Mašláňová |
f2de85 |
chdir("/");
|
|
Marcela Mašláňová |
f2de85 |
|
|
Marcela Mašláňová |
f2de85 |
if (execle("/bin/sh", "sh", (char *) NULL, nenvp) != 0)
|