2014/1/20 Volker Lendecke Volker.Lendecke@sernet.de:
You can try to use O_PATH flag. It doesn't give you a delete access but should be ok because further deleting will be done without file descriptor -- through unlink syscall.
Ok, I did not know about O_PATH. Thanks for that!
So I do an open with O_PATH. How do I then make sure that nobody else has a O_DENYDELETE set without doing the unlink itself?
It's not possible with the current API to do it through open syscall. Another possibility is to look at /proc/locks. But I think we really need O_DELETE flag that will force a file to be removed on close - we will be able to do O_DENYDELETE checks atomically.