diff: www - remote cvs access.

Tyson Richard DOWD trd at students.cs.mu.oz.au
Thu Oct 2 15:49:42 AEST 1997


Hi,

I'm going to add this to the web page. For security reasons,
we won't link to it at the moment, but anyone who asks for remote
access can be given this URL.

(cvs pserver is executed via inetd, so it's vulnerable to attack.
Indeed, the versions on mercury and hydra need to be updated, because
1.9 already has an exploit. But we need to update them to allow readonly
access anyway, so I'll do that soon).

===================================================================

Estimated hours taken: 1

www/developer/remote_cvs.html:
	New web page describing how to use CVS remotely.


New File: www/developer/remote_cvs.html
===================================================================
<html>
<head>

<title>The Mercury Project: Remote CVS Access </title>
</head>
<body bgcolor="#ABCDEF" text="#000000">

<h2>Using the CVS client to remotely access the Mercury CVS archive</h2>

Author: Tyson Dowd -- trd at cs.mu.oz.au <br>
<p>

Almost all work in the Mercury project is under revision control using
CVS.  The sources, documentation, test-cases, webpages and samples
are all stored under various modules of the CVS repository on
filesystems here at the University of Melbourne. CVS allows
client-server access to this repository. This document describes how
to use the CVS archive remotely.
<p>

You need:
<ul>
	<li> A version of CVS with client server support (1.9 works fine)
	  installed at the remote end. Probably anything newer than
	  1.5 will work OK.
	<li> A TCP/IP connection to the internet.
</ul>

Preliminaries:
<ul>
	<li> The CVS server uses password authentication. You need to
	  have a password installed in CVS's password file on
	  the server end.

	<li> Generate a password using standard UNIX /etc/passwd style
	  passwords. *Do not* use your normal password. A good way to
	  do this is change your password to something, copy the line
	  from /etc/password, then change it back. Only the username and
	  encrypted password are needed.

	  e.g. trd:s9FOR1a8DOxDs

	  (If your system uses shadow password files, the password field
	  of /etc/passwd will not be meaningful; mail us if there's a problem).

	  If your encrypted passwd after you change it back looks different 
	  from what it looked like originally, do not worry. The encrypted
	  form of your password depends not only on your password but also
	  on a 16-bit value known as the "salt" that is generated randomly
	  every time you change your password, and which is recorded in
	  the encrypted password field itself.

	<li> Send the line with the username and encrypted password to the
	  Mercury team, who will install it for you. If you have access to
	  the CVS repository at the University of Melbourne, you can just
	  add it to the file /home/mercury1/repository/CVSROOT/passwd.

	<li> Also, tell us what domain you're going to be accessing the
	  repository from, so we can adjust our security setup to allow
	  you access. If you don't say, we'll assume it is the same as your
	  email address.

	<li> Access via Windows or other non-UNIX platforms is untested,
	  but theoretically possible.
</ul>

Then (once you've been added to the passwd file):
<ul>

	<li> Set your CVSROOT environment variable to

	  username at mercury.cs.mu.oz.au:/home/mercury1/repository
          or
	  username at hydra.cs.mu.oz.au:/home/mercury1/repository

	  (we have two because sometimes one of the machines is down - 
	  it doesn't matter much which one you use). 

	<li> Run "cvs login" to login to the server for the first time.

	<li> CVS will remember your password from now on (it is rather
	  insecurely stored in a slightly jumbled manner in ~/.cvspass),
	  so you rarely have to login again.

	<li> You can do "cvs co mercury" to check out the main mercury
	  module. This can take a while over a slow connection, but you
	  should see pretty steady progress messages, eg
	  	U mercury/.INSTALL.in
		U mercury/.README.in
		U mercury/.cvsignore
		U mercury/BUGS
		U mercury/COPYING
		U mercury/COPYING.LIB
		etc

	<li> The CVS modules you might need access to are:
	  	mercury		- the mercury compiler, runtime, library,
				  extras and documentation. (8.9Mb)
	  	tests		- test cases for the compiler (0.72Mb)
		clpr		- the CLP(R) interface (0.88Mb)
		www		- the www page (7.5Mb - lots of papers)

	  CVS should compress most of this stuff while sending it.
</ul>

NOTE:
<ul>
	<li> Developers should subscribe to the mercury-developers mailing
	  list, to keep up-to-date on development discussion, and 
	  to be able to participate in discussions about code they
	  want to change. This is a forum to ask questions about how
	  to change something, discuss design trade-offs, and report
	  on any development that you suspect will influence others.
	  (Traffic is moderately high in this mailing list - between
	  100 and 300 messages per month, so you should filter it if
	  possible).

	<li> Before committing any code, read the policy on reviews for the
	  Mercury system (mercury/compiler/notes/reviews.html or 
	  http://www.cs.mu.oz.au/research/mercury/developer/reviews.html).
	  Basically, we don't commit broken code into the repository,
	  and we don't commit un-reviewed code.

	<li> We may decide to limit access to read-only at first, which
	  makes it much harder for a remote user to make a mistake. 
	  In this case, you'll need to contact us if you need to commit
	  something to the repository.

	<li> You'll need to be familiar with CVS to keep up to date with
	  the development tree. If you haven't used it before, read the
	  info pages on CVS and the documentation that comes with it.
</ul>


<p>
<hr>
<p>
Comments? Mail <a href = "mailto:mercury at cs.mu.oz.au">mercury at cs.mu.oz.au</a>,
or see our <a href = "../email.html" >contact</a> page.<br>

Last update was $Date: 1997/04/22 01:25:59 $ by $Author: trd $@cs.mu.oz.au
</body>
</html>


-- 
       Tyson Dowd           #          Another great idea from the 
                            #            people who brought you
      trd at .cs.mu.oz.au      #               Beer Milkshakes!
http://www.cs.mu.oz.au/~trd #	         Confidence --- Red Dwarf



More information about the developers mailing list