in reply to Re^3: Hijacking perl functions
in thread Hijacking perl functions

Not so! Deleting a file under *NIX merely removes a link to the file from the directory. Therefore write permission on the directory is sufficient. No permissions on the file itself are necessary for this, not even read perms, since the file itself is not changed, but only the link leading to it! Try it for yourself.

Replies are listed 'Best First'.
Re^5: Hijacking perl functions
by danielcid (Scribe) on Aug 03, 2004 at 13:04 UTC
    I can't believe... I tested it here and you are right. I always tought that you needed permissions to the file to delete it. I think it is a big security problem anyway...

    bash-2.05b$ mkdir test bash-2.05b$ cd test bash-2.05b$ ls -la total 12 drwxr-xr-x 2 dcid devteam 4096 Aug 3 08:57 . drwxr-xr-x 65 dcid devteam 8192 Aug 3 08:57 .. bash-2.05b$ sudo touch file1 bash-2.05b$ ls -la total 12 drwxr-xr-x 2 dcid devteam 4096 Aug 3 08:58 . drwxr-xr-x 65 dcid devteam 8192 Aug 3 08:57 .. -rw-r--r-- 1 root root 0 Aug 3 08:58 file1 bash-2.05b$ rm file1 rm: remove write-protected regular empty file `file1'? y bash-2.05b$ ls bash-2.05b$ ls -la total 12 drwxr-xr-x 2 dcid devteam 4096 Aug 3 08:58 . drwxr-xr-x 65 dcid devteam 8192 Aug 3 08:57 .. bash-2.05b$ sudo mkdir dir1 bash-2.05b$ ls -la total 16 drwxr-xr-x 3 dcid devteam 4096 Aug 3 08:59 . drwxr-xr-x 65 dcid devteam 8192 Aug 3 08:57 .. drwxr-xr-x 2 root root 4096 Aug 3 08:59 dir1 bash-2.05b$ rmdir dir1 bash-2.05b$ ls bash-2.05b$ ls -la total 12 drwxr-xr-x 2 dcid devteam 4096 Aug 3 08:59 . drwxr-xr-x 65 dcid devteam 8192 Aug 3 08:57 ..

    *hum... this is why we need the sticky bit in the "tmp" dir.. I completely forgot about it.