diff options
author | Ulrich Drepper <drepper@redhat.com> | 2002-08-08 09:04:02 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2002-08-08 09:04:02 +0000 |
commit | b7eb7b0f6d971568ea2d478950bd7ca18ac27d5a (patch) | |
tree | 86e7604ad0a302471cd081fd7dcf979e0c2b0f96 /gmon | |
parent | 48b8e8464b5a0a4c20dca0ffac05541397bfb654 (diff) | |
download | glibc-b7eb7b0f6d971568ea2d478950bd7ca18ac27d5a.tar glibc-b7eb7b0f6d971568ea2d478950bd7ca18ac27d5a.tar.gz glibc-b7eb7b0f6d971568ea2d478950bd7ca18ac27d5a.tar.bz2 glibc-b7eb7b0f6d971568ea2d478950bd7ca18ac27d5a.zip |
Update.
2002-08-08 Ulrich Drepper <drepper@redhat.com>
* gmon/gmon.c (write_gmon): Use O_NOFOLLOW in open calls if available.
Diffstat (limited to 'gmon')
-rw-r--r-- | gmon/gmon.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/gmon/gmon.c b/gmon/gmon.c index f0188a9d30..c2fcb8fd75 100644 --- a/gmon/gmon.c +++ b/gmon/gmon.c @@ -320,18 +320,22 @@ write_gmon (void) int fd = -1; char *env; +#ifndef O_NOFOLLOW +# define O_NOFOLLOW 0 +#endif + env = getenv ("GMON_OUT_PREFIX"); if (env != NULL && !__libc_enable_secure) { size_t len = strlen (env); char buf[len + 20]; sprintf (buf, "%s.%u", env, __getpid ()); - fd = __open (buf, O_CREAT|O_TRUNC|O_WRONLY, 0666); + fd = __open (buf, O_CREAT|O_TRUNC|O_WRONLY|O_NOFOLLOW, 0666); } if (fd == -1) { - fd = __open ("gmon.out", O_CREAT|O_TRUNC|O_WRONLY, 0666); + fd = __open ("gmon.out", O_CREAT|O_TRUNC|O_WRONLY|O_NOFOLLOW, 0666); if (fd < 0) { char buf[300]; |