diff options
-rw-r--r-- | src/responder/ssh/sshsrv_cmd.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/responder/ssh/sshsrv_cmd.c b/src/responder/ssh/sshsrv_cmd.c index 77ffd80c..bf4c421b 100644 --- a/src/responder/ssh/sshsrv_cmd.c +++ b/src/responder/ssh/sshsrv_cmd.c @@ -481,6 +481,7 @@ ssh_host_pubkeys_update_known_hosts(struct ssh_cmd_ctx *cmd_ctx) int fd = -1; char *filename, *pubkey, *line; ssize_t wret; + mode_t old_mask; tmp_ctx = talloc_new(NULL); if (!tmp_ctx) { @@ -494,7 +495,9 @@ ssh_host_pubkeys_update_known_hosts(struct ssh_cmd_ctx *cmd_ctx) goto done; } + old_mask = umask(0133); fd = mkstemp(filename); + umask(old_mask) if (fd == -1) { filename = NULL; ret = errno; |