98 lines
2.6 KiB
Diff
98 lines
2.6 KiB
Diff
diff -uNr at-3.2.1/at.c at-3.2.1.mod/at.c
|
|
--- at-3.2.1/at.c 2019-08-04 15:16:16.000000000 +0300
|
|
+++ at-3.2.1.mod/at.c 2020-01-02 20:33:14.106959504 +0200
|
|
@@ -81,6 +81,11 @@
|
|
#include "posixtm.h"
|
|
#include "privs.h"
|
|
|
|
+#ifdef PIDFILE
|
|
+#undef PIDFILE
|
|
+#define PIDFILE "@TERMUX_PREFIX@/var/run/atd.pid"
|
|
+#endif
|
|
+
|
|
/* Macros */
|
|
|
|
#ifndef ATJOB_MX
|
|
@@ -151,9 +156,9 @@
|
|
We need the unprivileged uid here since the file is owned by the real
|
|
(not effective) uid.
|
|
*/
|
|
- setregid(real_gid, effective_gid);
|
|
+// setregid(real_gid, effective_gid);
|
|
unlink(atfile);
|
|
- setregid(effective_gid, real_gid);
|
|
+// setregid(effective_gid, real_gid);
|
|
/*
|
|
PRIV_END
|
|
*/
|
|
@@ -389,7 +394,7 @@
|
|
perr("Cannot open input file %.500s", atinput);
|
|
}
|
|
|
|
- fprintf(fp, "#!/bin/sh\n# atrun uid=%d gid=%d\n# mail %s %d\n",
|
|
+ fprintf(fp, "#!@TERMUX_PREFIX@/bin/sh\n# atrun uid=%d gid=%d\n# mail %s %d\n",
|
|
real_uid, real_gid, mailname, send_mail);
|
|
|
|
/* Write out the umask at the time of invocation
|
|
@@ -694,7 +699,7 @@
|
|
We need the unprivileged uid here since the file is owned by the real
|
|
(not effective) uid.
|
|
*/
|
|
- setregid(real_gid, effective_gid);
|
|
+ //setregid(real_gid, effective_gid);
|
|
|
|
if (queue == '=') {
|
|
fprintf(stderr, "Warning: deleting running job\n");
|
|
@@ -704,7 +709,7 @@
|
|
rc = EXIT_FAILURE;
|
|
}
|
|
|
|
- setregid(effective_gid, real_gid);
|
|
+ //setregid(effective_gid, real_gid);
|
|
done = 1;
|
|
|
|
break;
|
|
@@ -714,7 +719,7 @@
|
|
FILE *fp;
|
|
int ch;
|
|
|
|
- setregid(real_gid, effective_gid);
|
|
+ //setregid(real_gid, effective_gid);
|
|
fp = fopen(dirent->d_name, "r");
|
|
|
|
if (fp) {
|
|
@@ -727,7 +732,7 @@
|
|
perr("Cannot open %.500s", dirent->d_name);
|
|
rc = EXIT_FAILURE;
|
|
}
|
|
- setregid(effective_gid, real_gid);
|
|
+ //setregid(effective_gid, real_gid);
|
|
}
|
|
break;
|
|
|
|
@@ -778,6 +783,7 @@
|
|
|
|
RELINQUISH_PRIVS
|
|
|
|
+#ifndef __ANDROID__
|
|
if ((pwe = getpwnam(DAEMON_USERNAME)) == NULL)
|
|
perr("Cannot get uid for " DAEMON_USERNAME);
|
|
|
|
@@ -787,6 +793,7 @@
|
|
perr("Cannot get gid for " DAEMON_GROUPNAME);
|
|
|
|
daemon_gid = ge->gr_gid;
|
|
+#endif
|
|
|
|
/* Eat any leading paths
|
|
*/
|
|
@@ -969,7 +976,7 @@
|
|
It also alows a warning diagnostic to be printed. Because of the
|
|
possible variance, we always output the diagnostic. */
|
|
|
|
- fprintf(stderr, "warning: commands will be executed using /bin/sh\n");
|
|
+ fprintf(stderr, "warning: commands will be executed using @TERMUX_PREFIX@/bin/sh\n");
|
|
|
|
writefile(timer, queue);
|
|
break;
|