(Illustration by Gaich Muramatsu)
New release, I'm still building it on a RedHat 9 box, but the sources and prebuilt Debian packages are already available. Pretty much all packages have been updated, LWP and RVM are mostly build fixes, but RPC2 and the main Coda packages have a bunch of bugfixes and several new features. RPC2 - Merged IPv6 support (Rod Van Meter) - Extra boundary checking on incoming MultiRPC packets. Coda - Hostname/realm resolution fixes. - Persistently store rootvolume names for disconnected startup. - Allow realm roots to disappear when there are no more cached objects (can be sped up with 'cfs fl /coda/my.realm') - Prevent crash when setting ACLs on fake objects (Ivan Popov) - A client now checks the lookaside cache even when disconnected. - IPv6 support is done for most 'minor' clients and daemons (venus and codasrv are not ready yet). - volutil can use the user's Coda token to authenticate with the servers. - Better anonymous connection handling and slight speedup in venus cache replacement. Because of the multirpc boundary checks, the RPC2 ABI has changed. Although you could probably build an older Coda release against rpc2-1.21, it will break. Similarily you shouldn't build Coda-6.0.4 against an older librpc2. If the RH5.1 or RH9 packages don't work or you want to build your own binary rpms here's the script that should do the job, #!/bin/sh set -e SRPM_SRC=http://ftp.coda.cs.cmu.edu/pub/coda/linux/RedHat-SRPMS DEST_DIR=/usr/src/redhat/RPMS/i386 wget ${SRPM_SRC}/lwp-1.11-1.src.rpm wget ${SRPM_SRC}/rpc2-1.21-1.src.rpm wget ${SRPM_SRC}/rvm-1.9-1.src.rpm wget ${SRPM_SRC}/coda-6.0.4-1.src.rpm rpmbuild --rebuild lwp-1.11-1.src.rpm # lwp needs to be installed before building anything else rpm -Uhv ${DEST_DIR}/lwp-1.11-1.i386.rpm rpm -Uhv ${DEST_DIR}/lwp-devel-1.11-1.i386.rpm rpmbuild --rebuild rvm-1.9-1.src.rpm rpmbuild --rebuild rpc2-1.21-1.src.rpm # rvm and rpc2 need to be installed before continuing rpm -Uhv ${DEST_DIR}/rvm-1.9-1.i386.rpm rpm -Uhv ${DEST_DIR}/rvm-devel-1.9-1.i386.rpm rpm -Uhv ${DEST_DIR}/rvm-tools-1.9-1.i386.rpm rpm -Uhv ${DEST_DIR}/rpc2-devel-1.21-1.i386.rpm rpm -Uhv ${DEST_DIR}/rpc2-1.21-1.i386.rpm rpmbuild --rebuild coda-6.0.4-1.src.rpm There is a conflict on rpc2 if the build machine is already running an older version of Coda. It seems like it kind of works if you install only the rpc2-devel package, the built version of Coda then has the new librpc2 statically linked. After that you can upgrade to the new coda-*-6.0.4 finish the install of rpc2-1.21 and then rebuild the coda rpms again to get them linked dynamically. # assuming we exited the previous 'script' when installing rpc2-1.21 failed rpmbuild --rebuild coda-6.0.4-1.src.rpm # in the following XXX would be replaced with client or server rpm -Uhv ${DEST_DIR}/coda-XXX-6.0.4-1.i386.rpm rpm -Uhv ${DEST_DIR}/rpc2-1.21-1.i386.rpm rpmbuild --rebuild coda-6.0.4-1.src.rpm rpm -Uhv ${DEST_DIR}/coda-XXX-6.0.4-1.i386.rpm # XXX = client or server It is ofcourse a lot faster to simply shut everything down, force the installation of rpc2 and build the Coda binaries only once. The other thing I bumped into was a weird dependency error. When trying to install there was an error about missing libcrypto.so.0.9.6, which was already installed as part of the openssl096-0.9.6-15.i386.rpm, and since I just built on the same machine we clearly just linked against it. But the openssl package doesn't seem to realize that it is providing that library. Adding a --nodeps to the rpm install line fixed it for me. JanReceived on 2004-03-17 16:07:17