Items deleted via IMAP are available in the dumpster

A discussion I had with some coworkers over lunch reminded
me of another "dumpster trick" for Exchange: items deleted via IMAP can be
recovered via the dumpster. I previously described the per-folder dumpster concept
in September
26th
's blog entry.

IMAP has a different deletion model than Outlook or
most other POP clients. If you're familiar with Pine, then you'll recognize the model:
When an item is deleted, it remains in the same folder, with a "deleted" property
on it. In order to completely remove it, the items "marked for deletion" must be expunged
from the folder. In Outlook and Outlook Express, this is done via Edit | Purge Deleted
Messages.

When you're using IMAP against an Exchange server and
you mark an item for deletion and then expunge deleted items in that folder, it's
moved into the per-folder dumpster. The item can be retrieved in Outlook by setting
a registry key, or in OWA with a specially formatted URL. See my
previous blog entry
for details.

Interesting trivia: In a way, the dumpster is Exchange's
version of the IMAP deletion model. Items remain in a "folder" with a "softdeleted"
property set on them. If you sniff the HTTP traffic when viewing the dumpster with
OWA, you'll see that it performs an HTTP request and does a search in the same folder
with a different scope: FROM Scope('SOFTDELETED Traversal of
""') instead of the usual FROM Scope('SHALLOW TRAVERSAL
OF ""'). The server removes items from the dumpster when the PR_DELETED_ON property
is greater than the number of days for which deleted items retention is configured.