diff options
-rw-r--r-- | attach.c | 19 | ||||
-rw-r--r-- | globals.h | 1 | ||||
-rw-r--r-- | init.c | 10 | ||||
-rw-r--r-- | init.h | 6 | ||||
-rw-r--r-- | lib.c | 4 | ||||
-rw-r--r-- | mh.c | 4 | ||||
-rw-r--r-- | mx.c | 39 |
7 files changed, 24 insertions, 59 deletions
@@ -736,21 +736,12 @@ bail: static FILE * mutt_save_attachment_open (char *path, int flags) { - mode_t omask; - FILE *fp = NULL; - - omask = umask(Umask); - if (flags == M_SAVE_APPEND) - fp = fopen (path, "a"); - else if (flags == M_SAVE_OVERWRITE) - fp = fopen (path, "w"); /* __FOPEN_CHECKED__ */ - else - fp = safe_fopen (path, "w"); - - umask(omask); - - return fp; + return fopen (path, "a"); + if (flags == M_SAVE_OVERWRITE) + return fopen (path, "w"); /* __FOPEN_CHECKED__ */ + + return safe_fopen (path, "w"); } /* returns 0 on success, -1 on error */ @@ -200,7 +200,6 @@ WHERE short SaveHist; WHERE short SendmailWait; WHERE short SleepTime INITVAL (1); WHERE short Timeout; -WHERE short Umask; WHERE short Wrap; WHERE short WriteInc; @@ -1980,10 +1980,7 @@ static int parse_set (BUFFER *tmp, BUFFER *s, unsigned long data, BUFFER *err) val = *ptr < 0 ? -*ptr : 0; /* user requested the value of this variable */ - if (mutt_strcmp (MuttVars[idx].option, "umask") == 0) - snprintf (err->data, err->dsize, "%s=0%o", MuttVars[idx].option, val); - else - snprintf (err->data, err->dsize, "%s=%d", MuttVars[idx].option, val); + snprintf (err->data, err->dsize, "%s=%d", MuttVars[idx].option, val); break; } @@ -2569,10 +2566,7 @@ static int var_to_string (int idx, char* val, size_t len) if (mutt_strcmp (MuttVars[idx].option, "wrapmargin") == 0) sval = sval > 0 ? 0 : -sval; - if (mutt_strcmp (MuttVars[idx].option, "umask") == 0) - snprintf (tmp, sizeof (tmp), "0%o", sval); - else - snprintf (tmp, sizeof (tmp), "%d", sval); + snprintf (tmp, sizeof (tmp), "%d", sval); } else if (DTYPE (MuttVars[idx].type) == DT_SORT) { @@ -2909,12 +2909,6 @@ struct option_t MuttVars[] = { ** machine without having to enter a password. */ #endif - { "umask", DT_NUM, R_NONE, &Umask, 0077 }, - /* - ** .pp - ** Sets the umask to use when creating mailboxes or saving attachments. - */ - { "use_8bitmime", DT_BOOL, R_NONE, OPTUSE8BITMIME, 0 }, /* ** .pp @@ -570,7 +570,7 @@ int safe_open (const char *path, int flags) safe_dir, sizeof (safe_dir)) == -1) return -1; - if ((fd = open (safe_file, flags, 0666)) < 0) + if ((fd = open (safe_file, flags, 0600)) < 0) { rmdir (safe_dir); return fd; @@ -584,7 +584,7 @@ int safe_open (const char *path, int flags) } else { - if ((fd = open (path, flags, 0666)) < 0) + if ((fd = open (path, flags, 0600)) < 0) return fd; } @@ -207,7 +207,7 @@ static int mh_mkstemp (CONTEXT * dest, FILE ** fp, char **tgt) { snprintf (path, _POSIX_PATH_MAX, "%s/.mutt-%s-%d-%d", dest->path, NONULL (Hostname), (int) getpid (), Counter++); - if ((fd = open (path, O_WRONLY | O_EXCL | O_CREAT, 0666)) == -1) + if ((fd = open (path, O_WRONLY | O_EXCL | O_CREAT, 0600)) == -1) { if (errno != EEXIST) { @@ -1145,7 +1145,7 @@ int maildir_open_new_message (MESSAGE * msg, CONTEXT * dest, HEADER * hdr) dprint (2, (debugfile, "maildir_open_new_message (): Trying %s.\n", path)); - if ((fd = open (path, O_WRONLY | O_EXCL | O_CREAT, 0666)) == -1) + if ((fd = open (path, O_WRONLY | O_EXCL | O_CREAT, 0600)) == -1) { if (errno != EEXIST) { @@ -492,7 +492,6 @@ int mx_access (const char* path, int flags) static int mx_open_mailbox_append (CONTEXT *ctx, int flags) { struct stat sb; - mode_t omask; ctx->append = 1; @@ -503,8 +502,6 @@ static int mx_open_mailbox_append (CONTEXT *ctx, int flags) #endif - omask = umask(Umask); - if(stat(ctx->path, &sb) == 0) { ctx->magic = mx_get_magic (ctx->path); @@ -526,33 +523,33 @@ static int mx_open_mailbox_append (CONTEXT *ctx, int flags) { char tmp[_POSIX_PATH_MAX]; - if (mkdir (ctx->path, S_IRWXU|S_IRWXG|S_IRWXO)) + if (mkdir (ctx->path, S_IRWXU)) { mutt_perror (ctx->path); - goto err_umask; + return (-1); } if (ctx->magic == M_MAILDIR) { snprintf (tmp, sizeof (tmp), "%s/cur", ctx->path); - if (mkdir (tmp, S_IRWXU|S_IRWXG|S_IRWXO)) + if (mkdir (tmp, S_IRWXU)) { mutt_perror (tmp); rmdir (ctx->path); - goto err_umask; + return (-1); } snprintf (tmp, sizeof (tmp), "%s/new", ctx->path); - if (mkdir (tmp, S_IRWXU|S_IRWXG|S_IRWXO)) + if (mkdir (tmp, S_IRWXU)) { mutt_perror (tmp); snprintf (tmp, sizeof (tmp), "%s/cur", ctx->path); rmdir (tmp); rmdir (ctx->path); - goto err_umask; + return (-1); } snprintf (tmp, sizeof (tmp), "%s/tmp", ctx->path); - if (mkdir (tmp, S_IRWXU|S_IRWXG|S_IRWXO)) + if (mkdir (tmp, S_IRWXU)) { mutt_perror (tmp); snprintf (tmp, sizeof (tmp), "%s/cur", ctx->path); @@ -560,7 +557,7 @@ static int mx_open_mailbox_append (CONTEXT *ctx, int flags) snprintf (tmp, sizeof (tmp), "%s/new", ctx->path); rmdir (tmp); rmdir (ctx->path); - goto err_umask; + return (-1); } } else @@ -568,11 +565,11 @@ static int mx_open_mailbox_append (CONTEXT *ctx, int flags) int i; snprintf (tmp, sizeof (tmp), "%s/.mh_sequences", ctx->path); - if ((i = creat (tmp, S_IRWXU|S_IRWXG|S_IRWXO)) == -1) + if ((i = creat (tmp, S_IRWXU)) == -1) { mutt_perror (tmp); rmdir (ctx->path); - goto err_umask; + return (-1); } close (i); } @@ -581,7 +578,7 @@ static int mx_open_mailbox_append (CONTEXT *ctx, int flags) else { mutt_perror (ctx->path); - goto err_umask; + return (-1); } switch (ctx->magic) @@ -598,7 +595,7 @@ static int mx_open_mailbox_append (CONTEXT *ctx, int flags) mutt_error (_("Couldn't lock %s\n"), ctx->path); safe_fclose (&ctx->fp); } - goto err_umask; + return (-1); } fseek (ctx->fp, 0, 2); break; @@ -609,15 +606,10 @@ static int mx_open_mailbox_append (CONTEXT *ctx, int flags) break; default: - goto err_umask; + return (-1); } - umask(omask); return 0; - - err_umask: - umask(omask); - return -1; } /* @@ -1266,7 +1258,6 @@ MESSAGE *mx_open_new_message (CONTEXT *dest, HEADER *hdr, int flags) MESSAGE *msg; int (*func) (MESSAGE *, CONTEXT *, HEADER *); ADDRESS *p = NULL; - mode_t omask; switch (dest->magic) { @@ -1305,8 +1296,6 @@ MESSAGE *mx_open_new_message (CONTEXT *dest, HEADER *hdr, int flags) if(msg->received == 0) time(&msg->received); - - omask = umask(Umask); if (func (msg, dest, hdr) == 0) { @@ -1332,8 +1321,6 @@ MESSAGE *mx_open_new_message (CONTEXT *dest, HEADER *hdr, int flags) else FREE (&msg); - umask(omask); - return msg; } |