From 5bb2506c9a456e303fe5162c03a41b749b7f627e Mon Sep 17 00:00:00 2001 From: Martin Kraemer Date: Mon, 31 Jan 2000 23:14:41 +0000 Subject: [PATCH] Enforce a sensible permission on the httpd.pid file. Submitted by: Frank Miller Reviewed by: Martin Kraemer git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@84547 13f79535-47bb-0310-9956-ffa450edef68 --- server/log.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/server/log.c b/server/log.c index 1a5a3d9c57..0722ba36eb 100644 --- a/server/log.c +++ b/server/log.c @@ -475,6 +475,9 @@ void ap_log_pid(ap_context_t *p, const char *fname) ap_finfo_t finfo; static pid_t saved_pid = -1; pid_t mypid; +#ifndef WIN32 + mode_t u; +#endif if (!fname) return; @@ -496,6 +499,10 @@ void ap_log_pid(ap_context_t *p, const char *fname) ); } +#ifndef WIN32 + u = umask(022); + (void) umask(u | 022); +#endif if(ap_open(&pid_file, fname, APR_WRITE | APR_CREATE, APR_OS_DEFAULT, p) != APR_SUCCESS) { perror("fopen"); ap_log_error(APLOG_MARK, APLOG_STARTUP | APLOG_NOERRNO, 0, NULL, @@ -503,6 +510,9 @@ void ap_log_pid(ap_context_t *p, const char *fname) ap_server_argv0, fname); exit(1); } +#ifndef WIN32 + (void) umask(u); +#endif ap_fprintf(pid_file, "%ld\n", (long)mypid); ap_close(pid_file); saved_pid = mypid; -- 2.40.0