RE: cvs version w/o repository.
From: "Cameron, Steve" <[EMAIL PROTECTED]> Subject: RE: cvs version w/o repository. Date: Sat, 29 Jul 2000 03:01:31 +0900 (JST) | especially useful if you have no knowledge of anything about the remote | side, (e.g. it's anonymous pserver access). In trobleshooting of anonymous access with pserver method, a client cannot invoke `version' before authenticated. If bug in authentication phase, no user report the server version. This is caused by the protocol layer; pserver-handshake underlies C/S protocol, you know. I dont propose changes, KISS. If cvs C/S protocol stack would be changed, RQ_AUTHENTICATED could add. -- KOIE Hidetaka <[EMAIL PROTECTED]>
Re: cvs version w/o repository.
Cameron, Steve writes: > > [smc] Wasn't "cvs version" recently introduced precisely so that > you could > see what version of CVS the _remote_ repository was running? Yes, Hide-san's point was that you shouldn't have to specify a valid root directory on the server just to find out what version it is. It's a valid enough point -- I implemented it so that the server is happy to respond to a version request without a preceding Root request (although I neglected to document it that way), but I didn't implement it that way in the client for a variety of reasons. -Larry Jones Life's a lot more fun when you're not responsible for your actions. -- Calvin
RE: cvs version w/o repository.
I wrote: [...] > To see what version of CVS you're running locally, use "cvs -V" [smc] I meant "cvs -v"
RE: cvs version w/o repository.
> From: [EMAIL PROTECTED] (Larry Jones) > Subject: Re: cvs version w/o repository. > Date: Sat, 29 Jul 2000 00:18:32 +0900 (JST) > > | > cvs version command may not access a repository. > | > | Why not? It doesn't seem like an unreasonable restriction to me. [smc] Wasn't "cvs version" recently introduced precisely so that you could see what version of CVS the _remote_ repository was running? To see what version of CVS you're running locally, use "cvs -V" This was added to help with debugging why client server connections might fail, so for example you might be able to tell if the remote side of a connection might be running a buggy version of CVS or something, especially useful if you have no knowledge of anything about the remote side, (e.g. it's anonymous pserver access).
RE: cvs version w/o repository.
From: [EMAIL PROTECTED] (Larry Jones) Subject: Re: cvs version w/o repository. Date: Sat, 29 Jul 2000 00:18:32 +0900 (JST) | > cvs version command may not access a repository. | | Why not? It doesn't seem like an unreasonable restriction to me. Beause: `cvs version' displays it's version, not a configuration of repository. This is a weak reason, I have no unyielding intention. Proposed amendment: `cvs version' is casted away, `cvs introspect' is newly introduced. "cvs intro -v" will display the version and an infomation related to the repository if any. In addition, some notice like "cvs --version" will be displayed. I prefer "cvs config" also. `cvs version' is a synonym of it. -- KOIE Hidetaka <[EMAIL PROTECTED]>
Re: cvs version w/o repository.
KOIE Hidetaka writes: > > cvs version command may not access a repository. Why not? It doesn't seem like an unreasonable restriction to me. > "valid-requests" is used instead of "noop", > because "noop" command is not RQ_ROOTLESS. It would make more sense to change noop to be rootless. -Larry Jones We seem to be out of gun powder. -- Calvin
cvs version w/o repository.
cvs version command may not access a repository.
"valid-requests" is used instead of "noop",
because "noop" command is not RQ_ROOTLESS.
Index: client.c
===
RCS file: /home2/cvsroot/ccvs/src/client.c,v
retrieving revision 1.285
diff -c -p -r1.285 client.c
*** client.c2000/07/06 16:20:41 1.285
--- client.c2000/07/28 04:04:20
*** the :server: access method is not suppor
*** 4403,4409
stored_mode = NULL;
}
! rootless = (strcmp (command_name, "init") == 0);
if (!rootless)
{
send_to_server ("Root ", 0);
--- 4403,4410
stored_mode = NULL;
}
! rootless = (strcmp (command_name, "init") == 0 ||
! strcmp (command_name, "version") == 0);
if (!rootless)
{
send_to_server ("Root ", 0);
Index: main.c
===
RCS file: /home2/cvsroot/ccvs/src/main.c,v
retrieving revision 1.152
diff -c -p -r1.152 main.c
*** main.c 2000/07/10 19:34:21 1.152
--- main.c 2000/07/28 04:04:21
*** Copyright (c) 1989-2000 Brian Berliner,
*** 947,954
if (!isaccessible (path, R_OK | X_OK))
{
save_errno = errno;
! /* If this is "cvs init", the root need not exist yet. */
! if (strcmp (command_name, "init") != 0)
{
error (1, save_errno, "%s", path);
}
--- 947,956
if (!isaccessible (path, R_OK | X_OK))
{
save_errno = errno;
! /* If this is "cvs init/version",
! the root need not exist yet. */
! if (strcmp (command_name, "init") != 0 &&
! strcmp (command_name, "version") != 0)
{
error (1, save_errno, "%s", path);
}
Index: version.c
===
RCS file: /home2/cvsroot/ccvs/src/version.c,v
retrieving revision 1.101
diff -c -p -r1.101 version.c
*** version.c 2000/07/08 19:57:21 1.101
--- version.c 2000/07/28 04:04:22
*** version (argc, argv)
*** 64,70
send_to_server ("version\012", 0);
else
{
! send_to_server ("noop\012", 0);
fputs ("(unknown)\n", stdout);
}
err = get_responses_and_close ();
--- 64,71
send_to_server ("version\012", 0);
else
{
! /* send_to_server ("noop\012", 0); */
! send_to_server ("valid-requests\012", 0); /* require RQ_ROOTLESS */
fputs ("(unknown)\n", stdout);
}
err = get_responses_and_close ();
--
KOIE Hidetaka <[EMAIL PROTECTED]>
