patch file cleanup... ick.. kaloz you owe me some love
git-svn-id: svn://svn.openwrt.org/openwrt/packages@6526 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
54
utils/logrotate/patches/004-no_tmpdir.patch
Normal file
54
utils/logrotate/patches/004-no_tmpdir.patch
Normal file
@ -0,0 +1,54 @@
|
||||
diff -u -ruN logrotate-3.7.1-cur/logrotate.c logrotate-3.7.1/logrotate.c
|
||||
--- logrotate-3.7.1-cur/logrotate.c 2005-05-25 18:20:41.000000000 -0400
|
||||
+++ logrotate-3.7.1/logrotate.c 2005-05-25 18:21:10.000000000 -0400
|
||||
@@ -90,10 +90,7 @@
|
||||
}
|
||||
|
||||
static int runScript(char * logfn, char * script) {
|
||||
- int fd;
|
||||
- char *filespec;
|
||||
int rc;
|
||||
- char buf[256];
|
||||
|
||||
if (debug) {
|
||||
message(MESS_DEBUG, "running script with arg %s: \"%s\"\n",
|
||||
@@ -101,38 +98,12 @@
|
||||
return 0;
|
||||
}
|
||||
|
||||
- filespec = buf;
|
||||
- snprintf(buf, sizeof(buf), "%s/logrotate.XXXXXX", getenv("TMPDIR") ?: "/tmp");
|
||||
- fd = -1;
|
||||
- if (!filespec || (fd = mkstemp(filespec)) < 0 || fchmod(fd, 0700)) {
|
||||
- message(MESS_DEBUG, "error creating %s: %s\n", filespec,
|
||||
- strerror(errno));
|
||||
- if (fd >= 0) {
|
||||
- close(fd);
|
||||
- unlink(filespec);
|
||||
- }
|
||||
- return -1;
|
||||
- }
|
||||
-
|
||||
- if (write(fd, "#!/bin/sh\n\n", 11) != 11 ||
|
||||
- write(fd, script, strlen(script)) != strlen(script)) {
|
||||
- message(MESS_DEBUG, "error writing %s\n", filespec);
|
||||
- close(fd);
|
||||
- unlink(filespec);
|
||||
- return -1;
|
||||
- }
|
||||
-
|
||||
- close(fd);
|
||||
-
|
||||
if (!fork()) {
|
||||
- execlp(filespec, filespec, logfn, NULL);
|
||||
+ execl("/bin/sh", "sh", "-c", script, NULL);
|
||||
exit(1);
|
||||
}
|
||||
|
||||
wait(&rc);
|
||||
-
|
||||
- unlink(filespec);
|
||||
-
|
||||
return rc;
|
||||
}
|
||||
|
Reference in New Issue
Block a user