mirror of
https://git.tartarus.org/simon/putty.git
synced 2025-03-23 15:09:24 -05:00
Stop attempting to make session logs private on Unix. This was introduced in
r7084 at the same time as sensible permissions when writing private key files; however, it causes an assertion failure whenever an attempt is made to append to an existing log file on Unix, and it's not clear what "is_private" *should* do for append, so revert to log file security being the user's responsibility. (Fixes Ubuntu LP#212711.) [originally from svn r8461] [r7084 == 4fa9564c909c589bcccc95d57fae5469063c1759]
This commit is contained in:
parent
35e004ffee
commit
40be9eeedd
@ -85,7 +85,7 @@ static void logfopen_callback(void *handle, int mode)
|
|||||||
ctx->state = L_ERROR; /* disable logging */
|
ctx->state = L_ERROR; /* disable logging */
|
||||||
} else {
|
} else {
|
||||||
fmode = (mode == 1 ? "ab" : "wb");
|
fmode = (mode == 1 ? "ab" : "wb");
|
||||||
ctx->lgfp = f_open(ctx->currlogfilename, fmode, TRUE);
|
ctx->lgfp = f_open(ctx->currlogfilename, fmode, FALSE);
|
||||||
if (ctx->lgfp)
|
if (ctx->lgfp)
|
||||||
ctx->state = L_OPEN;
|
ctx->state = L_OPEN;
|
||||||
else
|
else
|
||||||
|
@ -141,7 +141,8 @@ FILE *f_open(struct Filename filename, char const *mode, int is_private)
|
|||||||
return fopen(filename.path, mode);
|
return fopen(filename.path, mode);
|
||||||
} else {
|
} else {
|
||||||
int fd;
|
int fd;
|
||||||
assert(mode[0] == 'w'); /* is_private is meaningless for read */
|
assert(mode[0] == 'w'); /* is_private is meaningless for read,
|
||||||
|
and tricky for append */
|
||||||
fd = open(filename.path, O_WRONLY | O_CREAT | O_TRUNC,
|
fd = open(filename.path, O_WRONLY | O_CREAT | O_TRUNC,
|
||||||
0700);
|
0700);
|
||||||
if (fd < 0)
|
if (fd < 0)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user