=================================================================== RCS file: /cvsrepo/anoncvs/cvs/www/anoncvs.shar,v retrieving revision 1.5 retrieving revision 1.6 diff -c -r1.5 -r1.6 *** www/anoncvs.shar 1996/09/20 07:57:45 1.5 --- www/anoncvs.shar 1997/09/10 07:25:19 1.6 *************** *** 5,14 **** # # This archive contains: # - # README # Makefile # anoncvssh.c # echo x - README sed 's/^X//' >README << 'END-of-README' Xfind enough disk space. --- 5,26 ---- # # This archive contains: # # Makefile + # README # anoncvssh.c # + echo x - Makefile + sed 's/^X//' >Makefile << 'END-of-Makefile' + X#CVSROOT=anoncvs@anoncvs1.usa.openbsd.org:/cvs + XPROG= anoncvssh + XBINOWN= root + XBINMODE=4111 + XBINDIR=/open + XNOMAN= + X + X.include + X + END-of-Makefile echo x - README sed 's/^X//' >README << 'END-of-README' Xfind enough disk space. *************** *** 25,36 **** X anoncvs::32766:32766:Anonymous CVS User:/open/anoncvs:/open/anoncvssh Xyes, that is right. the account has no password. X Xinstall a crontab entry which runs as any user besides anoncvs (ie. run Xit as yourself, or as root). call that user $SUPUSER - X 0 */3 * * 0,1,3,4,6 /usr/local/bin/sup -v /open/sup/ss - X 0 */6 * * 2,5 /usr/local/bin/sup -vo /open/sup/ss X ! Xanoncvs1.usa.openbsd.org uses this particular set of entries. A `sup X-o' is done every few days because sup is not very robust. X Xthe file /open/sup/ss contains --- 37,59 ---- X anoncvs::32766:32766:Anonymous CVS User:/open/anoncvs:/open/anoncvssh Xyes, that is right. the account has no password. X + XFor :pserver: support (optional) + X - Create an entry in /etc/services + X cvspserver 2401/tcp # CVS client/server operations + X - Create an entry in /etc/inetd.conf + X cvspserver stream tcp nowait anoncvs /open/anoncvssh anoncvssh pserver + X Xinstall a crontab entry which runs as any user besides anoncvs (ie. run Xit as yourself, or as root). call that user $SUPUSER X ! XFor example: To run every three hours 'sup -v supfile', and thrice ! Xweekly 'sup -vo supfile' .. because sup is not reliable .. ! X ! X0 0,3,6,9,12,15,18,21 * * 0,2,4,5 sup -v /open/anoncvs/sup/ss > /dev/null ! X0 0,12,15,18,21 * * 1,3,6 sup -v /open/anoncvs/sup/ss > /dev/null ! X0 3 * * 1,3,6 sup -vo /open/anoncvs/sup/ss > /dev/null ! X ! Xanoncvs5.usa.openbsd.org uses this particular set of entries. A `sup X-o' is done every few days because sup is not very robust. X Xthe file /open/sup/ss contains *************** *** 49,56 **** Xmkdir /open/ Xmkdir /open/anoncvs Xmkdir /open/anoncvs/cvs ! Xmkdir /open/sup ! Xchown -R $SUPUSER /open/anoncvs/cvs /open/sup X Xstart filling the account up with nice stuff X cd /open/anoncvs --- 72,79 ---- Xmkdir /open/ Xmkdir /open/anoncvs Xmkdir /open/anoncvs/cvs ! Xmkdir /open/anoncvs/sup ! Xchown -R $SUPUSER /open/anoncvs/cvs /open/anoncvs/sup /open/anoncvs X Xstart filling the account up with nice stuff X cd /open/anoncvs *************** *** 58,64 **** X touch .profile X Xput a message like the following in .plan: ! X To use anonymous CVS install the latest version of CVS on your local machine. X Then set your CVSROOT environment variable to the following value: X anoncvs@anoncvs.openbsd.org:/cvs X --- 81,88 ---- X touch .profile X Xput a message like the following in .plan: ! X To use anonymous CVS install the latest version of CVS on your local ! X machine. X Then set your CVSROOT environment variable to the following value: X anoncvs@anoncvs.openbsd.org:/cvs X *************** *** 93,98 **** --- 117,123 ---- X mkdir usr/{bin,lib} X cp /usr/bin/{ci,co,cvs,diff,diff3,gzip,rcs,rcsclean} usr/bin/ X cp /usr/bin/{rcsdiff,rcsfreeze,rcsmerge,rlog,sdiff,zdiff} usr/bin/ + X cp /usr/bin/grep usr/bin X Xif your system has ld.so in /usr/libexec, X mkdir usr/libexec *************** *** 242,248 **** X X[eap anoncvs 14 ]> ls cvs XCVSROOT/ src/ sup/ www/ ! X[eap anoncvs 15 ]> ls /open X[eap anoncvs 16 ]> ls -alF sup Xtotal 8 Xdrwxrwxr-x 3 deraadt wheel 512 Dec 4 1995 ./ --- 267,273 ---- X X[eap anoncvs 14 ]> ls cvs XCVSROOT/ src/ sup/ www/ ! X[eap anoncvs 15 ]> cd /open X[eap anoncvs 16 ]> ls -alF sup Xtotal 8 Xdrwxrwxr-x 3 deraadt wheel 512 Dec 4 1995 ./ *************** *** 252,270 **** X X XThat's pretty much it. - END-of-README - echo x - Makefile - sed 's/^X//' >Makefile << 'END-of-Makefile' - X#CVSROOT=anoncvs@anoncvs1.usa.openbsd.org:/cvs - XPROG= anoncvssh - XBINOWN= root - XBINMODE=4111 - XBINDIR=/open - XNOMAN= X ! X.include X ! END-of-Makefile echo x - anoncvssh.c sed 's/^X//' >anoncvssh.c << 'END-of-anoncvssh.c' X/* --- 277,312 ---- X X XThat's pretty much it. X ! XFrom Todd Fries to the adventurous. ! XA note for those installing anoncvs on non-OpenBSD operating systems. ! XYou are in for some fun. X ! XFor OSF1, on a DEC alpha, I had to do the following in addition to the ! Xabove: ! X ! X- I do not know how to setup dynamic libraries on osf1 and as a result ! X everything had to be compiled statically. ! X- Therefore, everything but /bin/sh I had to recmpile in order to ! X get the chroot setup. In order that there be no guesswork ! X involved, the following packages' binaries must exist in the chroot ! X environment: ! X ! X GNU ! X cvs (from the OpenBSD source tree) ! X diff[utils] (unless you're running *BSD, probably better get it from a gnu ! X mirror...the Makefile doesn't work otherwise) ! X rcs (from the OpenBSD source tree) ! X ! XSome notes on compiling. ! X ! X rcs must have diff3 capable of diff3 -m during configure. ! X OSF doesn't by default, thus I had to compile diffutils first. ! X ! X cvs fails to install if you don't have makeinfo ... just search for the ! X string ' install-info$' with regex and remove it from the Makefile for the ! X install and you'll be fine, or install 'texinfo', your choice. ! END-of-README echo x - anoncvssh.c sed 's/^X//' >anoncvssh.c << 'END-of-anoncvssh.c' X/* *************** *** 383,388 **** --- 425,439 ---- X /* X * program now "safe" X */ + X + X /* If we want pserver functionality */ + X if (strcmp("pserver", argv[1])) { + X execle("/usr/bin/cvs", "cvs", "pserver", NULL, env); + X perror("execle: cvs"); + X fprintf(stderr, "unable to exec CVS pserver!\n"); + X exit(1); + X /* NOTREACHED */ + X } X X if (argc != 3 || X strcmp("anoncvssh", argv[0]) != 0 ||