Versions 2, 3, and 4 of the Prospero protocol were not used. The protocol number jumped from version 1 to version 5 to keep the software number and version number consistent; the first version of the server to implement version 5 protocol had a software version number of 5.
For now, all Prospero servers continue to accept Version 1 of the protocol.
Not all of the protocol changes are listed here.
In version 1, the EDIT-LINK-INFO command was called MODIFY-LINK. The syntax of the arguments has also been changed.
The method of specifying attributes to LIST has changed. The lines returned from LIST are also in a new format.
The quoting mechanism has been formalized, and extended to apply to multiple-component directory names. Therefore, the ONECOMP option to LIST is now officially dead (it was never implemented in any server anyway). Note that no Version 1 server ever implemented quoting properly anyway. Therefore, if a client speaks Version 1 Protocol, it will not be able to access filenames with spaces in them.
The magic-no field has been replaced with zero or more occurrences of the sequence ID id-type id-value. GET-OBJECT-INFO used to have the reserved keyword ID, but this has been flushed.
The syntax of the arguments of EDIT-OBJECT-INFO has been changed, in order to avoid a syntactic amgiguity.
Many changes have occurred to the arguments of commands.
Filter syntax has changed drastically.
Separate principals are now sent as separate protocol tokens in ACL and attribute definitions.
The TARGET field used to have a possible value of SYM-LINK. This has been changed to SYMBOLIC. The BASE-TYPE field has been introduced.
The syntax of a target of EXTERNAL has changed radically. EXTERNAL links now look a lot more like conventional links. The meaning of the ACCESS-METHOD attribute has changed radically; it's now a lot more flexible.
Support for Kerberos has been specified.