From: Stefan Karpinski <stefan.karpinski@gmail.com>
To: Junio C Hamano <gitster@pobox.com>, git@vger.kernel.org
Cc: Stefan Karpinski <stefan.karpinski@gmail.com>
Subject: [PATCH] git-cvsserver: handle CVS 'noop' command.
Date: Thu, 29 Jan 2009 17:12:27 -0800 [thread overview]
Message-ID: <1233277947-17175-1-git-send-email-stefan.karpinski@gmail.com> (raw)
In-Reply-To: <7vhc3hd6ba.fsf@gitster.siamese.dyndns.org>
The CVS protocol documentation, found at
http://www.wandisco.com/techpubs/cvs-protocol.pdf
states the following about the 'noop' command:
Response expected: yes. This request is a null command
in the sense that it doesn't do anything, but merely
(as with any other requests expecting a response) sends
back any responses pertaining to pending errors, pending
Notified responses, etc.
In accordance with this, the correct way to handle the 'noop'
command, when issued by a client, is to call req_EMPTY.
The 'noop' command is called by some CVS clients, notably
TortoiseCVS, thus making it desirable for git-cvsserver to
respond to the command rather than choking on it as unknown.
Signed-off-by: Stefan Karpinski <stefan.karpinski@gmail.com>
---
On Thu, Jan 29, 2009 at 3:46 PM, Junio C Hamano <gitster@pobox.com> wrote:
>
> Because the issue currently has our attention, and we think we know that
> the code does not do the right thing currently, and that we are fairly
> sure that the right thing is to do req_EMPTY, I'd rather see a tested fix
> applied so that we can forget about it ;-)
>
> It's good that you moved your people to native git environment, but if you
> have an environment where you can test the fix still lying around, I'd
> appreciate a quick test and resubmit.
I've done the best testing I could do under the circumstances. What
that means is that the only windows machine I have access to test
this on right now is running Vista, which is only partially (read
poorly) supported by TortoiseCVS. So things seem to work well enough,
but TortoiseCVS keeps crapping out for Vista-related reasons rather
than git-cvsserver-related reasons. But I did manage to coax it into
successfully checking out a complete working repository without the
"noop" errors that it used to give.
git-cvsserver.perl | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/git-cvsserver.perl b/git-cvsserver.perl
index fef7faf..277ee4e 100755
--- a/git-cvsserver.perl
+++ b/git-cvsserver.perl
@@ -76,6 +76,7 @@ my $methods = {
'history' => \&req_CATCHALL,
'watchers' => \&req_EMPTY,
'editors' => \&req_EMPTY,
+ 'noop' => \&req_EMPTY,
'annotate' => \&req_annotate,
'Global_option' => \&req_Globaloption,
#'annotate' => \&req_CATCHALL,
--
1.6.0.3.3.g08dd8
next prev parent reply other threads:[~2009-01-30 1:14 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1232144521-21947-1-git-send-email-stefan.karpinski@gmail.com>
[not found] ` <1232144521-21947-2-git-send-email-stefan.karpinski@gmail.com>
2009-01-23 5:43 ` [PATCH] git-cvsserver: run post-update hook *after* update Stefan Karpinski
2009-01-23 8:00 ` Junio C Hamano
2009-01-29 21:58 ` Stefan Karpinski
2009-01-29 22:48 ` Junio C Hamano
2009-01-29 23:26 ` Stefan Karpinski
2009-01-29 22:56 ` Andy Parkins
2009-01-29 21:35 ` [PATCH] git-cvsserver: handle CVS 'noop' command Stefan Karpinski
2009-01-29 22:45 ` Junio C Hamano
2009-01-29 23:39 ` Stefan Karpinski
2009-01-29 23:46 ` Junio C Hamano
2009-01-30 1:12 ` Stefan Karpinski [this message]
2009-01-30 1:32 ` Martin Langhoff
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1233277947-17175-1-git-send-email-stefan.karpinski@gmail.com \
--to=stefan.karpinski@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).