diff options
author | Christian Grothoff <christian@grothoff.org> | 2016-07-06 11:14:11 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2016-07-06 11:14:11 +0000 |
commit | f5beb3eaf163fc0bf2a4f86bd413d3ee6939cfea (patch) | |
tree | b59a38ad9e2296b3d2c8cc3302f21cf6d3ecc458 /src/util/disk.c | |
parent | 6db64c5eae089e1d81cafbb051f65412790d16bc (diff) | |
download | gnunet-f5beb3eaf163fc0bf2a4f86bd413d3ee6939cfea.tar.gz gnunet-f5beb3eaf163fc0bf2a4f86bd413d3ee6939cfea.zip |
-fix misc issues
Diffstat (limited to 'src/util/disk.c')
-rw-r--r-- | src/util/disk.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/util/disk.c b/src/util/disk.c index 4624df7c1..d9ebde84f 100644 --- a/src/util/disk.c +++ b/src/util/disk.c | |||
@@ -527,14 +527,18 @@ char * | |||
527 | GNUNET_DISK_mkdtemp (const char *t) | 527 | GNUNET_DISK_mkdtemp (const char *t) |
528 | { | 528 | { |
529 | char *fn; | 529 | char *fn; |
530 | mode_t omask; | ||
530 | 531 | ||
532 | omask = umask (S_IWGRP | S_IWOTH | SIRGRP | S_IROTH); | ||
531 | fn = mktemp_name (t); | 533 | fn = mktemp_name (t); |
532 | if (fn != mkdtemp (fn)) | 534 | if (fn != mkdtemp (fn)) |
533 | { | 535 | { |
534 | LOG_STRERROR_FILE (GNUNET_ERROR_TYPE_ERROR, "mkstemp", fn); | 536 | LOG_STRERROR_FILE (GNUNET_ERROR_TYPE_ERROR, "mkdtemp", fn); |
535 | GNUNET_free (fn); | 537 | GNUNET_free (fn); |
538 | umask (omask); | ||
536 | return NULL; | 539 | return NULL; |
537 | } | 540 | } |
541 | umask (omask); | ||
538 | return fn; | 542 | return fn; |
539 | } | 543 | } |
540 | 544 | ||
@@ -587,14 +591,18 @@ GNUNET_DISK_mktemp (const char *t) | |||
587 | { | 591 | { |
588 | int fd; | 592 | int fd; |
589 | char *fn; | 593 | char *fn; |
594 | mode_t omask; | ||
590 | 595 | ||
596 | omask = umask (S_IWGRP | S_IWOTH | SIRGRP | S_IROTH); | ||
591 | fn = mktemp_name (t); | 597 | fn = mktemp_name (t); |
592 | if (-1 == (fd = mkstemp (fn))) | 598 | if (-1 == (fd = mkstemp (fn))) |
593 | { | 599 | { |
594 | LOG_STRERROR_FILE (GNUNET_ERROR_TYPE_ERROR, "mkstemp", fn); | 600 | LOG_STRERROR_FILE (GNUNET_ERROR_TYPE_ERROR, "mkstemp", fn); |
595 | GNUNET_free (fn); | 601 | GNUNET_free (fn); |
602 | umask (omask); | ||
596 | return NULL; | 603 | return NULL; |
597 | } | 604 | } |
605 | umask (omask); | ||
598 | if (0 != CLOSE (fd)) | 606 | if (0 != CLOSE (fd)) |
599 | LOG_STRERROR_FILE (GNUNET_ERROR_TYPE_WARNING, "close", fn); | 607 | LOG_STRERROR_FILE (GNUNET_ERROR_TYPE_WARNING, "close", fn); |
600 | return fn; | 608 | return fn; |