--- acpid-1.0.4.orig/acpid.c 2007-09-24 17:05:07.000000000 -0400
+++ acpid-1.0.4/acpid.c 2007-09-24 17:12:19.000000000 -0400
@@ -396,13 +396,13 @@ open_logs(void)
int nullfd;
/* set up stdout, stderr to log and stdin to /dev/null */
- nullfd = open("/dev/null", O_RDONLY, 0640);
+ nullfd = open("/dev/null", O_RDONLY);
if (nullfd < 0) {
fprintf(stderr, "%s: can't open %s: %s\n", progname,
"/dev/null", strerror(errno));
return -1;
}
- logfd = open(logfile, O_WRONLY|O_CREAT|O_APPEND);
+ logfd = open(logfile, O_WRONLY|O_CREAT|O_APPEND, 0640);
if (logfd < 0) {
fprintf(stderr, "%s: can't open %s: %s\n", progname,
logfile, strerror(errno));
diff -urp acpid-1.0.4.orig/event.c acpid-1.0.4/event.c
--- acpid-1.0.4.orig/event.c 2007-09-24 17:05:07.000000000 -0400
+++ acpid-1.0.4/event.c 2007-09-24 17:33:56.000000000 -0400
@@ -302,6 +302,7 @@ parse_file(const char *file)
acpid_log("DBG: skipping incomplete file %s\n", file);
}
free_rule(r);
+ fclose(fp);
return NULL;
}
fclose(fp);
@@ -641,7 +642,7 @@ parse_cmd(const char *cmd, const char *e
i = 0;
memset(buf, 0, sizeof(buf));
- while (i < (sizeof(buf)-1)) {
+ while ((size_t)i < (sizeof(buf)-1)) {
if (*p == '%') {
p++;
if (*p == 'e') {