Text   |  XML   |  ReML   |   Visible Warnings:

File System Race Condition  at maildir-storage.c:796

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

maildir_list_delete_mailbox

(/home/sate/Testcases/c/cve/dovecot-1.2.0/src/lib-storage/index/maildir/maildir-storage.c)expand/collapse
Show more  
 769  maildir_list_delete_mailbox(struct mailbox_list *list, const char *name)
 770  {
 771          struct maildir_storage *storage = MAILDIR_LIST_CONTEXT(list);
 772          struct stat st;
 773          const char *src, *dest, *base;
 774          int count;
 775   
 776          /* Make sure the indexes are closed before trying to delete the 
 777             directory that contains them. It can still fail with some NFS 
 778             implementations if indexes are opened by another session, but 
 779             that can't really be helped. */
 780          index_storage_destroy_unrefed();
 781   
 782          /* delete the index and control directories */
 783          if (storage->list_module_ctx.super.delete_mailbox(list, name) < 0)
 784                  return -1;
 785   
 786          /* check if the mailbox actually exists */
 787[+]         src = mailbox_list_get_path(list, name, MAILBOX_LIST_PATH_TYPE_MAILBOX);
 788          if (lstat(src, &st) != 0 && errno == ENOENT) {
 789                  mailbox_list_set_error(list, MAIL_ERROR_NOTFOUND,
 790                          T_MAIL_ERR_MAILBOX_NOT_FOUND(name));
 791                  return -1;
 792          }
 793   
 794          if (!S_ISDIR(st.st_mode)) {
 795                  /* a symlink most likely */
 796                  if (unlink(src) < 0 && errno != ENOENT) {
Show more  




Change Warning 7381.25722 : File System Race Condition

Priority:
State:
Finding:
Owner:
Note: