Text   |  XML   |  ReML   |   Visible Warnings:

File System Race Condition  at mkdir-parents.c:22

No properties have been set. | edit properties
Jump to warning location ↓ warning details...
Show Events | Options

cydir_mailbox_open

(/home/sate/Testcases/c/cve/dovecot-1.2.0/src/lib-storage/index/cydir/cydir-storage.c)expand/collapse
Show more  
 183  static struct mailbox *
 184  cydir_mailbox_open(struct mail_storage *_storage, const char *name,
 185                     struct istream *input, enum mailbox_open_flags flags)
 186  {
 187          struct cydir_storage *storage = (struct cydir_storage *)_storage;
 188          const char *path;
 189          struct stat st;
 190   
 191          if (input != NULL) {
 192                  mail_storage_set_critical(_storage,
 193                          "cydir doesn't support streamed mailboxes");
 194                  return NULL;
 195          }
 196   
 197          path = mailbox_list_get_path(_storage->list, name,
 198[+]                                      MAILBOX_LIST_PATH_TYPE_MAILBOX);
 199          if (stat(path, &st) == 0)
 200                  return cydir_open(storage, name, flags);
 201          else if (errno == ENOENT) {
 202                  if (strcmp(name, "INBOX") == 0) {
 203                          /* INBOX always exists, create it */
 204[+]                         if (create_cydir(_storage, path) < 0)
expand/collapse

create_cydir

(/home/sate/Testcases/c/cve/dovecot-1.2.0/src/lib-storage/index/cydir/cydir-storage.c)expand/collapse
Show more  
 133  static int create_cydir(struct mail_storage *storage, const char *path)
 134  {
 135          const char *origin;
 136          mode_t mode;
 137          gid_t gid;
 138   
 139          mailbox_list_get_dir_permissions(storage->list, NULL,
 140                                           &mode, &gid, &origin);
 141[+]         if (mkdir_parents_chgrp(path, mode, gid, origin) < 0 &&
expand/collapse

mkdir_parents_chgrp

(/home/sate/Testcases/c/cve/dovecot-1.2.0/src/lib/mkdir-parents.c)expand/collapse
Show more  
 115  int mkdir_parents_chgrp(const char *path, mode_t mode,
 116                          gid_t gid, const char *gid_origin)
 117  {
 118[+]         return mkdir_parents_chown_full(path, mode, (uid_t)-1, gid, gid_origin);
expand/collapse

mkdir_parents_chown_full

(/home/sate/Testcases/c/cve/dovecot-1.2.0/src/lib/mkdir-parents.c)expand/collapse
Show more  
 80  mkdir_parents_chown_full(const char *path, mode_t mode, uid_t uid, gid_t gid,
 81                           const char *gid_origin)
 82  {
 83          const char *p;
 84          int ret;
 85   
 86[+]         if (mkdir_chown_full(path, mode, uid, gid, gid_origin) < 0) {
expand/collapse

mkdir_chown_full

(/home/sate/Testcases/c/cve/dovecot-1.2.0/src/lib/mkdir-parents.c)expand/collapse
Show more  
 14  mkdir_chown_full(const char *path, mode_t mode, uid_t uid,
 15                   gid_t gid, const char *gid_origin)
 16  {
 17          string_t *str;
 18          mode_t old_mask;
 19          int ret, orig_errno;
 20   
 21          old_mask = umask(0);
 22          ret = mkdir(path, mode);
Show more  
Show more  
Show more  
Show more  
Show more  




Change Warning 7496.25937 : File System Race Condition

Priority:
State:
Finding:
Owner:
Note: