On Mon, 28 Jun 1999, Troy Benjegerdes wrote: > It appear that updateclient and updateserver can't talk between my PPC and > x86 boxes. > Well, I believe I've fixed this. I've included a patch, and a spec file which I have made some modifications to, most importantly allowing non-root builds of coda, along with kerberos support. (If anyone wants my patch for kerberos, let me know) -------------------------------------------------------------------------- | Troy Benjegerdes | [EMAIL PROTECTED] | [EMAIL PROTECTED] | | Unix is user friendly... You just have to be friendly to it first. | | This message composed with 100% free software. http://www.gnu.org | --------------------------------------------------------------------------
diff -ur coda-5.2.7/coda-src/update/updateclnt.cc coda-5.2.7.new/coda-src/update/updateclnt.cc --- coda-5.2.7/coda-src/update/updateclnt.cc Thu May 13 16:11:21 1999 +++ coda-5.2.7.new/coda-src/update/updateclnt.cc Mon Jun 28 20:56:45 1999 @@ -536,7 +536,7 @@ hid.Tag = RPC2_HOSTBYNAME; strcpy(hid.Value.Name, host); sid.Tag = RPC2_PORTBYINETNUMBER; - sid.Value.InetPortNumber = port; + sid.Value.InetPortNumber = htons(port); ssid.Tag = RPC2_SUBSYSBYID; ssid.Value.SubsysId= SUBSYS_UPDATE; dummy.SeqLen = 0; diff -ur coda-5.2.7/coda-src/update/updatesrv.cc coda-5.2.7.new/coda-src/update/updatesrv.cc --- coda-5.2.7/coda-src/update/updatesrv.cc Thu May 13 10:29:15 1999 +++ coda-5.2.7.new/coda-src/update/updatesrv.cc Mon Jun 28 22:01:01 1999 @@ -197,7 +197,7 @@ } rc = portmapper_client_register_sqsh(portmapid, (unsigned char *) "codaupdate", - 0, 17, port1.Value.InetPortNumber); + 0, 17, ntohs(port1.Value.InetPortNumber)); if ( rc ) { fprintf(stderr, "Cannot register with rpc2portmap; exiting, rc = %i \n", rc);
Summary: Coda distributed filesystem Name: coda-debug %define basever 5.2.7 Version: krb5_%{basever} Release: 2 Source: ftp://ftp.coda.cs.cmu.edu/pub/coda/src/coda-%{basever}.tgz Patch: coda-krb5.patch Patch1: coda-5.2.7-endian.patch Requires: bc Copyright: CMU BuildRoot: /tmp/coda-buildroot Group: Networking/Daemons %description Source package for the Coda filesystem. Three packages are provided by this rpm: the client and server and the backup components. Separately you must install a kernel module, or have a Coda enabled kernel, and you should get the Coda documentation package. %package client Summary: Coda client Group: Networking/Daemons %description client This package contains the main client program, the cachemanager Venus. Also included are the binaries for the cfs, utilities for logging, ACL manipulation etc, the hoarding tools for use with laptops and repair tools for fixing conflicts. Finally there is the cmon and codacon console utilities to monitor Coda's activities. You need a Coda kernel-module for your kernel version, or Coda in your kernel, to have a complete coda client. Make sure to select the correct C library version. %package server Summary: Coda server Group: Networking/Daemons %description server This package contains the fileserver codasrv for the coda filesystem, as well as the volume utilities. For highest performance you will need a modified kernel with inode system calls. %package backup Summary: Coda backup coordinator Group: Networking/Daemons %description backup This package contains the backup software for the coda filesystem, as well as the volume utilities. %changelog * Mon Jun 28 1999 Troy Benjegerdes <[EMAIL PROTECTED]> - fixed endianess problem in updateclnt/updateserver * Sun Jun 27 1999 Troy Benjegerdes <[EMAIL PROTECTED]> - update to 5.2.7, add %{basever} * Fri Jun 11 1999 Troy Benjegerdes <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> - update to 5.2.4 - now do mknod /dev/cfs0 in '%post' so non-root builds work * Wed May 11 1999 Troy Benjegerdes <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> - Patched to build with Kerberos 5 authentication only - Made $RPM_OPT_FLAGS work * Sun Jun 21 1998 Peter Braam <[EMAIL PROTECTED]> - get rid of the kernel package. This needs interaction during the build. - no more separate libc, glibc packages * Tue Dec 30 1997 Peter Braam <[EMAIL PROTECTED]> - several changes: documentation separate - use variables: =`uname -r`, 5.2.4=coda version * Mon Jun 02 1997 Peter Braam <[EMAIL PROTECTED]> - small changes to Elliots improvements. - some of his ideas are now in the scripts * Wed May 28 1997 Elliot Lee <[EMAIL PROTECTED]> - Based upon 4.0.3-1 spec file. - Changed to BuildRoot - Do as much as possible at build time instead of in %post - Added initscript for venus %prep %setup -n coda-%{basever} %patch -p1 %patch1 -p1 %build #chown -R root.bin $RPM_BUILD_DIR/coda-%{basever} rm -rf $RPM_BUILD_DIR/obj-%{basever} mkdir $RPM_BUILD_DIR/obj-%{basever} cd $RPM_BUILD_DIR/obj-%{basever} # be sure and use g++ CXX=g++ $RPM_BUILD_DIR/coda-%{basever}/configure --prefix=$RPM_BUILD_ROOT/usr # Build an optimized Coda MYFLAGS="$RPM_OPT_FLAGS" make %install cd $RPM_BUILD_DIR/obj-%{basever} rm -rf $RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT/usr/coda/venus.cache $RPM_BUILD_ROOT/dev \ $RPM_BUILD_ROOT/usr/coda/etc \ $RPM_BUILD_ROOT/coda $RPM_BUILD_ROOT/etc/rc.d/init.d\ $RPM_BUILD_ROOT/usr/lib/coda $RPM_BUILD_ROOT/etc/rc.d/init.d make client-install make server-install touch $RPM_BUILD_ROOT/coda/NOT_REALLY_CODA # for non debuging versions if [ X1 != X1 ]; then strip $RPM_BUILD_ROOT/usr/bin/* $RPM_BUILD_ROOT/vice/bin/* $RPM_BUILD_ROOT/usr/sbin/* || : fi #chown -R root.root $RPM_BUILD_ROOT %clean rm -rf $RPM_BUILD_ROOT rm -rf $RPM_BUILD_DIR/obj-%{basever} %pre client grep "^coda" /proc/mounts > /dev/null 2>&1 if [ $? = 0 ]; then echo "*** Coda is mounted: cannot install ***" exit 1 else exit 0 fi %preun client grep "^coda" /proc/mounts > /dev/null 2>&1 if [ $? = 0 ]; then echo "*** Coda is mounted: cannot uninstall ***" exit 1 else exit 0 fi %post client if [ ! -e /dev/cfs0 ]; then mknod /dev/cfs0 c 67 0 fi if [ ! -e /usr/coda/etc/vstab ]; then /usr/sbin/venus-setup testserver.coda.cs.cmu.edu 40000 fi cd /usr/lib/coda #if [ ! -x /usr/bin/tixindex ]; then # chmod a+x /usr/bin/tixindex #fi #tixindex *tcl #if [ ! -f /usr/bin/tixwish ]; then # ln -s /usr/bin/tixwish* /usr/bin/tixwish # if [ x$? != x0 ]; then # echo "**WARNING: tixwish is not correctly installed" # fi #fi /sbin/chkconfig --add venus.init %postun /sbin/chkconfig --del venus.init %post server /sbin/chkconfig --add update.init /sbin/chkconfig --add auth2.init /sbin/chkconfig --add codasrv.init %postun server /sbin/chkconfig --del update.init /sbin/chkconfig --del auth2.init /sbin/chkconfig --del codasrv.init %files client %defattr(-,root,root) %dir /usr/coda %dir /usr/coda/etc %dir /usr/coda/venus.cache /etc/rc.d/init.d/venus.init %dir /coda %verify() /coda/NOT_REALLY_CODA /usr/sbin/kau /usr/sbin/venus /usr/sbin/venus-setup /usr/sbin/volmunge /usr/sbin/vutil /usr/bin/advice_srv /usr/bin/cfs /usr/bin/kclog /usr/bin/cmon /usr/bin/codacon /usr/bin/cpasswd /usr/bin/ctokens /usr/bin/cunlog /usr/bin/filcon /usr/bin/filerepair /usr/bin/hoard /usr/bin/logbandwidth /usr/bin/logcmls /usr/bin/logprogress /usr/bin/logreintegration /usr/bin/parser /usr/bin/removeinc /usr/bin/repair /usr/bin/replay /usr/bin/spy /usr/bin/xaskuser /usr/bin/xfrepair /usr/lib/coda/Advice.tcl /usr/lib/coda/CodaConsole /usr/lib/coda/Consider.tcl /usr/lib/coda/ConsiderAdding.tcl /usr/lib/coda/ConsiderRemoving.tcl /usr/lib/coda/ControlPanel.tcl /usr/lib/coda/Date.tcl /usr/lib/coda/DiscoMiss.tcl /usr/lib/coda/Events.tcl /usr/lib/coda/Globals.tcl /usr/lib/coda/Helper.tcl /usr/lib/coda/HoardWalk.tcl /usr/lib/coda/HoardWalkAdvice.tcl /usr/lib/coda/Indicators.tcl /usr/lib/coda/Initialization.tcl /usr/lib/coda/Lock.tcl /usr/lib/coda/Log.tcl /usr/lib/coda/Network.tcl /usr/lib/coda/OutsideWorld.tcl /usr/lib/coda/ReadMiss.tcl /usr/lib/coda/Reconnection.tcl /usr/lib/coda/Reintegration.tcl /usr/lib/coda/Repair.tcl /usr/lib/coda/Space.tcl /usr/lib/coda/Task.tcl /usr/lib/coda/Timing.tcl /usr/lib/coda/Tokens.tcl /usr/lib/coda/WeakMiss.tcl /usr/lib/coda/tixCodaMeter.tcl %files server %defattr(-,root,root) /usr/sbin/kauth2 /usr/sbin/bldvldb.sh /usr/sbin/codasrv /usr/sbin/createvol_rep /usr/sbin/initpw /usr/sbin/inoder /usr/sbin/makeftree /usr/sbin/parserecdump /usr/sbin/partial-reinit.sh /usr/sbin/pdbtool /usr/sbin/printvrdb /usr/sbin/purgevol /usr/sbin/purgevol_rep /usr/sbin/pwdtopdbtool.py /usr/sbin/rdsinit /usr/sbin/rpc2portmap /usr/sbin/rvmutl /usr/sbin/startserver /usr/sbin/updatesrv /usr/sbin/updateclnt /usr/sbin/updatefetch /usr/sbin/vice-killvolumes /usr/sbin/vice-setup /usr/sbin/vice-setup-rvm /usr/sbin/vice-setup-srvdir /usr/sbin/vice-setup-user /usr/sbin/vice-setup-scm /usr/sbin/vice-setup-ports /usr/sbin/volutil /usr/bin/filcon /usr/bin/norton /usr/bin/norton-reinit /usr/bin/reinit /etc/rc.d/init.d/codasrv.init /etc/rc.d/init.d/auth2.init /etc/rc.d/init.d/update.init %files backup %defattr(-,root,root) /usr/sbin/kauth2 /usr/sbin/backup /usr/sbin/backup.sh /usr/sbin/merge /usr/sbin/readdump /usr/sbin/tape.pl /usr/sbin/updatesrv /usr/sbin/updateclnt /usr/sbin/updatefetch /usr/sbin/volutil /usr/bin/filcon