With support for ACLs in Mac OS X, there is a way to declare a file as writeable but non-deletable.
This poses a problem with atomic writes, since the current implementa
A viable alternative would seem to create the file in a temporary directory, then call exchangedata
on both files. HFS exports the VOL_CAP_INT_EXCHANGEDATA
attribute, so that should work. The relevant checks in vfs_syscalls.c indicate that only read and write permissions are necessary for the call to succeed.