Jonathan Abbey writes: Ganymede 0.99.1 is now available for download at http://www.arlut.utexas.edu/gash2/ or ftp://ftp.arlut.utexas.edu/pub/ganymede/ Ganymede is a GPL'ed network directory management system written in Java, providing support for team management of NIS, DNS, etc. -- Quite a few changes to support production use, including the ability to have Ganymede use an RMI registry running on a custom port and a 'stopServer' application to supported automated shut-down of the server. Added an 'rpcpass' application to the client distribution to support Ganymede integration with the Linux NIS kit. Did more work on improving the documentation. This still needs a lot of work, but there's now a hypertext version of the INSTALL file cross-linked with a comprehensive file glossary. Lots of improvements to the source code's javadocs, but there's lots more to be done. Brian is working on a total revamp of the DNS support code we're using with Ganymede. We're moving away from the old GASH hosts_info file format and moving to an extensible XML format that will support all the GASH DNS complexity with support for multiple DNS domains added. In the next release or two we'll hopefully revamp the set of schema kits included to include a DNS-only schema kit and a useful DNS and NIS schema modeled after (but more flexible than) the current gash and gasharl schemas. -------------------- Changes from 0.99 to 0.99.1 ------------------- RELEASE DATE: May 27, 1999 1. [SERVER] Made decodeDB omit built-in field types by default Did a bit of work to clean up the schema report code generated by decodeDB. 2. [SERVER] Cleaned up, documented DBEditSet, DBEditObject Added lots and lots of documentation to the DBEditSet transaction class, made the commit() operation a bit more robust in terms of relinquishing a write lock on exceptions and errors. The DBEditObject class was modified to include a boolean finalAbort parameter in the release() method. Javadocs for this method were improved to clarify and document the different ways this method can be called. 3. [SERVER DISTRIBUTION] Added a stopServer commandline app In order to facilitate automatic shutdown of the Ganymede server on operating system shutdown, I've created a command-line stopServer application that can shut the server down if you keep the server's supergash password in its ganymede.properties file. Yet another thing for production use.. we use this to support automatic server shutdown when we reboot our Solaris Ganymede server. 4. [SERVER, CLIENT DISTRIBUTION] Made registry port number configurable The Ganymede server and clients can now be configured to use an RMI Registry on a non-standard tcp port. This is necessary if you are going to run the Ganymede server on the same system as other RMI servers (such as Sun's SIMS administration console). The server, client, admin console and password client all now accept a property/parameter called ganymede.registryPort. If the ganymede.registryPort is not set, all Ganymede code will default to the standard RMI registry port, 1099. 5. [SERVER] Added Session.findLabeledObject() Added a convenient shortcut method in Session called findLabeledObject() which allows the client to quickly get an invid from an object type and name without having to use the full Query() method. This method is used by client/rpcpass.java. 6. [CLIENT] Added client/rpcpass.java to support Linux NIS rpc.yppasswdd Added a program 'rpcpass' to the client distribution. rpcpass is designed to be used with the -x/--execute option present in versions 1.3.6.92 and later of the Linux NISkit's rpc.yppasswdd daemon (included in the ypserv distribution), to allow users to use yppasswd to change their password in Ganymede. When run, rpcpass reads a single line from stdin, which should be of the form <username> o:<oldpass> p:<new cryptpass> s:<shell> g:<gcos>n Where the p:, s:, and g: fields are each optional. After reading this line from stdin, rpcpass will connect to the Ganymede server and change the password and/or shell. If this operation succeeds, rpcpass will emit a single line to stdout, OKn which is to be read by rpc.yppasswdd to signal success. If there are any problems, these will be described in a report to stdout, which rpc.yppasswdd will take as a failure signal. Note that while the rpc.yppasswdd daemon may pass gcos information to rpcpass, the gecos field is formatted differently on different operating systems, and so rpcpass does not attempt to handle it at all. Of course, any program can use the rpcpass program to propagate password/shell change requests to Ganymede, not just the Linux NIS kit's rpc.yppasswdd daemon. 7. [SOURCE] Fixed a couple more PATH problems with building sources A couple of fixes relating to doing source builds with '.' not in one's PATH. EXECUTING: src/server/build ERROR : buildrmi: command not found FILE FIXED: src/server/build PREV LINE : buildrmi NEW LINE : ./buildrmi EXCECUTING: src/classes/buildJar ERROR : sync_tree: command not found FILE FIXED: src/classes/buildJar PREV LINE : sync_tree NEW LINE : ./sync_tree Reported by Andy Johnson (andyjohnson@engineer.com). 8. [DOCUMENTATION] Significantly Improved Documentation Fixed all link errors in the javadocs. Added more javadocs to several classes. Reworked doc/index.html. Added an HTML version of the INSTALL file, cross-linked to a file glossary. Added the log file format documentation to the doc distrib.