diff options
author | gdt <gdt> | 2003-12-22 20:15:53 +0000 |
---|---|---|
committer | gdt <gdt> | 2003-12-22 20:15:53 +0000 |
commit | 29d3f53fdb17548a020683f1cc18cb4b78a8116c (patch) | |
tree | bf1db2b34a5b03486d182ee6afc8c8295c60d715 /lib/log.c | |
parent | a2be3c0db267692f66def274bac2afdf1596e7fb (diff) | |
download | quagga-29d3f53fdb17548a020683f1cc18cb4b78a8116c.tar.bz2 quagga-29d3f53fdb17548a020683f1cc18cb4b78a8116c.tar.xz |
2003-12-22 Christian Hammers <ch@lathspell.de>
* configure.ac (and everywhere a regular file is opened for
writing): use file permissions from configure rather than
compiled-in umask.
Diffstat (limited to 'lib/log.c')
-rw-r--r-- | lib/log.c | 17 |
1 files changed, 15 insertions, 2 deletions
@@ -365,6 +365,7 @@ int zlog_set_file (struct zlog *zl, int flags, char *filename) { FILE *fp; + mode_t oldumask; /* There is opend file. */ zlog_reset_file (zl); @@ -374,9 +375,14 @@ zlog_set_file (struct zlog *zl, int flags, char *filename) zl = zlog_default; /* Open file. */ + oldumask = umask (0777 & ~LOGFILE_MASK); fp = fopen (filename, "a"); if (fp == NULL) - return 0; + { + umask(oldumask); + return 0; + } + umask(oldumask); /* Set flags. */ zl->filename = strdup (filename); @@ -421,9 +427,16 @@ zlog_rotate (struct zlog *zl) if (zl->filename) { + mode_t oldumask; + + oldumask = umask (0777 & ~LOGFILE_MASK); fp = fopen (zl->filename, "a"); if (fp == NULL) - return -1; + { + umask(oldumask); + return -1; + } + umask(oldumask); zl->fp = fp; } |