269 lines
12 KiB
Plaintext
269 lines
12 KiB
Plaintext
|
Changes since Alpha.5.2b:
|
||
|
|
||
|
Documentation about the list structures is now present in the library manual.
|
||
|
|
||
|
NAMED ACLs are new.
|
||
|
|
||
|
Database internals have changed: dsrobject() format for files.
|
||
|
Databases now call dsrobject(). Databases now use NAMED acls for
|
||
|
their database ACLs.
|
||
|
|
||
|
Bug fixed: connection ID now reset upon each fork.
|
||
|
|
||
|
PROSPERO-CONTENTS access method added.
|
||
|
|
||
|
Code ported to SOLARIS and SCO dialects of UNIX.
|
||
|
|
||
|
Changes from Alpha.5.2a to Alpha.5.2b:
|
||
|
|
||
|
Fixed bug where GOPHER-GW would sometimes crash with a segmentation
|
||
|
fault, depending on your compiler's implementation of ANSI C
|
||
|
variable-length argument lists.
|
||
|
|
||
|
Made Mail/Save/Print features work correctly in the menu browser.
|
||
|
They no longer open the same file twice, and they now handle errors
|
||
|
appropriately.
|
||
|
|
||
|
Changed output format for vls -A; should be less confusing. Multiple
|
||
|
tokens in a SEQUENCE are now separated with ' ; '.
|
||
|
|
||
|
ARDP library now works correctly even if you make an ARDP call, then
|
||
|
fork and make ARDP calls in the child processes. This used to break.
|
||
|
This was causing great trouble to potential collaborators.
|
||
|
|
||
|
Fixed ACL checking bugs in Version 1 backwards compatability stuff
|
||
|
(server/dirsrv_v1()). These bugs were introduced in Alpha.5.2.
|
||
|
|
||
|
Changes from Alpha.5.2 to Alpha.5.2a:
|
||
|
|
||
|
Major bug fix: Message fragmentation and reassembly seem to be
|
||
|
finally fixed correctly. They now work even for messages which do not
|
||
|
contain a newline somewhere within them, and work both for the client
|
||
|
and for the server.
|
||
|
|
||
|
Minor bug fixed in way FORWARDED response is given on the server; this
|
||
|
won't affect current users much, since forwarding pointers are still
|
||
|
not in widespread use.
|
||
|
|
||
|
Minor bugs fixed in lower levels of ARDP library; these do not affect
|
||
|
people who were not directly using the ARDP library.
|
||
|
|
||
|
Changes between Beta.5.1 and Alpha.5.2:
|
||
|
|
||
|
The MENU browser interface and GOPHER-GW gateway are new. See the README file
|
||
|
or doc/gopher.ann or the user's manual.
|
||
|
|
||
|
Link attributes can now be added to all links, including those which
|
||
|
are stored in native UNIX directories (for example the anonymous FTP
|
||
|
area). The link target (FILE/DIRECTORY) is now tested and returned
|
||
|
for all links in a directory, even if they are in native unix
|
||
|
directories. The directory server used to, as an efficiency hack, not
|
||
|
bother statting big native directories, but would sometimes lie and
|
||
|
claim directories were actually FILEs. This information is cached on
|
||
|
the server for most directories. If PSRV_CACHE_NATIVE is defined,
|
||
|
then this cacheing will occur even for entirely native directories.
|
||
|
OBJECT attributes are cached in cached directories.
|
||
|
|
||
|
Bugs fixed in Kerberos version 5 support. There is a new definition
|
||
|
in pserver.h, KERBEROS_SRVTAB.
|
||
|
|
||
|
Disabled return of connection ID for V4 clients. This change
|
||
|
compensates for a bug in some V4 clients due to the use of an
|
||
|
incorrect type (signed long vs. unsigned short) as the connection ID.
|
||
|
This change has no effect on the V5 protocol. However, it does make a
|
||
|
number of older clients, including most versions of the xarchie client,
|
||
|
work with the new code.
|
||
|
|
||
|
The server's CREATE-OBJECT function with the DIRECTORY option now
|
||
|
creates the subdirectory first and only then creates a link to it.
|
||
|
This keeps a link to nowhere from appearing in case of a system crash
|
||
|
during the directory creation process.
|
||
|
|
||
|
The server function dswdir() that writes out modified directories now
|
||
|
writes them out to a temporary file and then atomically renames it to
|
||
|
the correct filename. This means that in case of running out of disk
|
||
|
space or other system failure, no information will be lost and the
|
||
|
directory state will remain consistent. This feature was inspired
|
||
|
after PROSPERO.ISI.EDU's main disk filled up and a Prospero directory
|
||
|
that belonged to the implementor of this feature (swa) was affected.
|
||
|
|
||
|
A number of places in the code which used to store protocol messages
|
||
|
in static buffers now store them in dynamically allocated buffers.
|
||
|
Attributes and protocol messages now can have arbitrarily long tokens
|
||
|
in them. This change affected enough places in the code that we have
|
||
|
made the first release containing it an Alpha (Alpha.5.2); the default
|
||
|
prospero.tar.Z file still points to Beta.5.1.
|
||
|
|
||
|
NEWVS used to work incorrectly when making a new virtual system that
|
||
|
was to have multiple principals in the initial ACL. Fixed.
|
||
|
|
||
|
The old pkl and psrvchat commands have been replaced by the new
|
||
|
'padmin' command. Padmin can be used to administer a Prospero server
|
||
|
(kill it, restart it, set the message of the day). It can also be
|
||
|
used by a programmer to send raw Prospero protocol messages to the
|
||
|
server (with the -command option) and by anybody to retrieve the
|
||
|
message of the day (with the -get MOTD option). Documentation in the
|
||
|
user's manual.
|
||
|
|
||
|
p__vfsetup and p__vcd now let you explicitly override your SHELL
|
||
|
environment variable with '-s sh' or '-s csh' flags. gen_vfsetup and
|
||
|
p__vfsetup now generate commands which by default include the -s sh or
|
||
|
-s csh flag as appropriate. The old hack of checking your SHELL
|
||
|
environment variable in the absence of such a flag will stick around
|
||
|
for a while, but will probably go away in a future release. This
|
||
|
feature was inspired by a problem that a user who had renamed his
|
||
|
shell experienced.
|
||
|
|
||
|
rd_vlink(".") now works correctly; this fixes the behavior of set_acl
|
||
|
and list_acl.
|
||
|
|
||
|
list_acl and set_acl don't dump core any more when called with
|
||
|
incorrect arguments. In addition, they are now more flexible about
|
||
|
how arguments may be specified. Fixed case where some legal arguments
|
||
|
to set_acl sometimes segfaulted.
|
||
|
|
||
|
Compiling with HPUX prototypes used to generate warnings of the form:
|
||
|
"warning: argument passing of non-const * pointer from const *". It
|
||
|
doesn't any more.
|
||
|
|
||
|
Compiling under HPUX used to generate warnings about the arguments to
|
||
|
select() and bcopy() and wait(); it doesn't any more.
|
||
|
|
||
|
Enhancement to lib/pfs/p__req.c: userids not in the passwd database
|
||
|
are sent across the network as uid#<decimal number> instead of as
|
||
|
*nobody*.
|
||
|
|
||
|
Changes between Alpha.5.1 and Beta.5.1:
|
||
|
|
||
|
One bug fix: The server's CREATE-OBJECT command used to reuse
|
||
|
directory names even if there were still active links to those
|
||
|
directories. It now generates new unique names. As a result, the
|
||
|
following sequence will no longer destroy the contents of the new
|
||
|
directory tlink:
|
||
|
|
||
|
vmkdir test
|
||
|
vln some-file test/some-file
|
||
|
vln test tlink
|
||
|
vrm test
|
||
|
vmkdir test
|
||
|
|
||
|
Changes between Alpha.5.0 and Alpha.5.1:
|
||
|
|
||
|
A special stripped-down FTP only version of the release is now
|
||
|
available, for sites that want to publish their anonymous FTP archive
|
||
|
areas through Prospero and don't want to worry about the full gamut of
|
||
|
configuration options.
|
||
|
|
||
|
The user-level name format has been enhanced. Special characters in
|
||
|
user-level names ('#', ':', '/', '(', ')', and now '\') can be quoted
|
||
|
by preceding them with a backslash ('\'). This change will be useful
|
||
|
as more new databases with unusual names are integrated into the
|
||
|
propero naming network. The library routines p_uln_index() and
|
||
|
p_uln_rindex() have been added to help in manipulating the new name
|
||
|
format.
|
||
|
|
||
|
get_vdir() now takes a pointer to a list of tokens as its acomp
|
||
|
argument instead of a single string with slash separating the multiple
|
||
|
components. This makes the code much cleaner and solves the problem
|
||
|
of get_vdir() reading files whose user-level names contain slashes.
|
||
|
A similar change has been made to the database function code on the server.
|
||
|
|
||
|
The code sending names across the network has been improved; Spaces in
|
||
|
file names sent across the network still occasionally caused problems
|
||
|
in the Alpha 5.0 release; they no longer do in Alpha 5.1.
|
||
|
|
||
|
A new type of link has been added: INVISIBLE links. You can make them
|
||
|
by giving the new '-i' option to vln. You can list them by giving the
|
||
|
new '-i' option to vls. They are just like dot files in UNIX, except
|
||
|
that their names can have any format.
|
||
|
|
||
|
A new LOCAL access method has been added. Along with it is a new
|
||
|
definition in pserver.h called SHARED_PREFIXES. This definition,
|
||
|
among other things, makes it very easy to retrieve files through NFS
|
||
|
on systems that run an automount demon.
|
||
|
|
||
|
VGET can now retrieve files using any access method. VGET used to not
|
||
|
know about AFS or NFS.
|
||
|
|
||
|
The psite.h file now also contains a new option for special
|
||
|
applications, PCOMPAT_SUPPORT_FTP. If defined, routines linked with
|
||
|
the pcompat library (such as our version of CAT) will prompt for an
|
||
|
FTP username and password if necessary in order to access a file. In
|
||
|
other words, they, too, can retrieve with any access method.
|
||
|
|
||
|
Some unusual cases involving forwarding of links and expansion of
|
||
|
union links have been fixed.
|
||
|
|
||
|
The server logging has been improved slightly.
|
||
|
|
||
|
The protocol has been extended so that it is easier to add new types
|
||
|
of FIELD attributes and so that multiple-component names are sent in a
|
||
|
cleaner fashion. Alpha 5.0 clients continue to work, as do pre-5.0 clients.
|
||
|
|
||
|
AIX support for the server has been added.
|
||
|
|
||
|
CHANGES between Beta.4.2 and Alpha.5.0:
|
||
|
|
||
|
This release speaks version 5 and version 1 of the Prospero protocol.
|
||
|
Previous releases have all spoken only version 1. The new server is
|
||
|
backwards-compatable with clients speaking the previous version
|
||
|
(version 1) of the prospero protocol. This is described in greater
|
||
|
depth in the document server/COMPATABILITY. The clients only speak
|
||
|
version 5 and will not work with servers still speaking only
|
||
|
version 1. There have been many updates in the new version of the
|
||
|
protocol.
|
||
|
|
||
|
This release can be configured to perform authentication of users
|
||
|
using Kerberos version 5. Version 5 is still experimental; version 4
|
||
|
is not supported.
|
||
|
|
||
|
This release supports Archie 3 servers in addition to the older Archie 2.
|
||
|
|
||
|
Quoting of names internally in the Prospero protocol is now fully
|
||
|
supported (it was not in previous versions of Prospero). Therefore,
|
||
|
host-specific object names may now have spaces or other strange
|
||
|
characters in them, as may attribute names and values and filenames.
|
||
|
|
||
|
This release includes support for PREDEFINED filters that run on the
|
||
|
server side. Such filters solve the security problems that have
|
||
|
plagued filters in the past. A later release will come with a number
|
||
|
of predefined standard server and client
|
||
|
|
||
|
This release includes support for remotely modifying link and object
|
||
|
attributes with the library routines pset_at() and pset_linkat() and
|
||
|
the user program SET_ATR.
|
||
|
|
||
|
VLN now handles external links rather differently from the way it used
|
||
|
to. To make an external link to a file reachable by anonymous FTP,
|
||
|
type:
|
||
|
|
||
|
vln -e AFTP hostname name-on-that-host BINARY new-name
|
||
|
or
|
||
|
vln -e AFTP hostname name-on-that-host TEXT new-name
|
||
|
|
||
|
|
||
|
Until we finish revising the user's manual, contact us with questions
|
||
|
about the new vln and about set_atr.
|
||
|
|
||
|
AF has not been ported to the new release and will probably never be.
|
||
|
Filters have changed quite a bit. You can add filters to links by
|
||
|
using the SET_ATR program with the -linkprec and -filter options to
|
||
|
modify the FILTER attribute on the link of interest.
|
||
|
|
||
|
Client developers should note that some of the fields in some of the
|
||
|
structures have been renamed or changed in format. FILTER and PATTRIB
|
||
|
structures have been introduced.
|
||
|
|
||
|
See the file doc/v5.announcement for a discussion of additional
|
||
|
changes.
|
||
|
|
||
|
This release of Prospero includes a standalone client to query archie
|
||
|
servers. See the README file.
|
||
|
|
||
|
This release also includes an alternative ls. To compile first build
|
||
|
Prospero (either with or without the compatibility library), then
|
||
|
connect to the user subdirectory and type make als. als is still
|
||
|
under development by Steve Cliffe (steve@cs.uow.edu.au). Please send
|
||
|
any comments or bug reports related to als to him. Eventually, the
|
||
|
vls command will be replaced by als.
|