Craig A. Berry wrote:
The POSIX standard says,
"The remove() function causes the file named by the pathname pointed to by path to be no longer accessible by that name. A subsequent attempt to open that file using that name will fail, unless it is created anew.
http://www.opengroup.org/onlinepubs/007908799/xsh/remove.html
By the above definition, remove(), to be POSIX compliant, would have to remove all versions of a VMS file if called without an explicit version number. Without that, it fails the "A subsequent attempt to open that file using that name will fail, unless it is created anew" condition.
The is a little wiggle room in that the previous generations of the files are different ones than the one deleted.
As someone pointed out, there is a logical (?) to set just this behavior.
If my faulty memory serves me right, that logical only controls the creation of new versions, not the behavior of remove() or unlink(). The assumption is apparently that programs that expect UNIX behavior on removing a file will only be used on files created by programs would only create one version.
http://h71000.www7.hp.com/doc/732FINAL/5763/5763pro_004.html#feature_logicals_sec
-John [EMAIL PROTECTED] Personal Opinion Only
