All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Shawn O. Pearce" <spearce@spearce.org>
To: Sitaram Chamarty <sitaramc@gmail.com>
Cc: "Joshua Juran" <jjuran@gmail.com>,
	"Jakub Narebski" <jnareb@gmail.com>,
	"Ævar Arnfjörð" <avarab@gmail.com>,
	"Ilari Liusvaara" <ilari.liusvaara@elisanet.fi>,
	"Jonathan Nieder" <jrnieder@gmail.com>,
	git@vger.kernel.org, "Tarmigan Casebolt" <tarmigan+git@gmail.com>
Subject: Re: [PATCH] Add ERR support to smart HTTP
Date: Mon, 6 Sep 2010 11:19:21 -0700	[thread overview]
Message-ID: <20100906181921.GN32601@spearce.org> (raw)
In-Reply-To: <AANLkTikmU9_Vg2+=73yjPyaaDSqk73Bvs1HyNjFDWqNY@mail.gmail.com>

Sitaram Chamarty <sitaramc@gmail.com> wrote:
> On Mon, Sep 6, 2010 at 8:26 PM, Shawn O. Pearce <spearce@spearce.org> wrote:
> > That is, the following will trigger a correct error on the client:
> >
> >  200 OK
> >  Content-Type: application/x-git-upload-pack-advertisement
> >
> >  001e# service=git-upload-pack
> >  0022ERR You shall not do this
> 
> are those counts accurate for the specific example you show or just made up?
> 
> It seems the first line has a count in hex that includes the newline
> at the end, and the second one has a count in decimal that does not
> include the newline nor even the 4-digits plus "ERR"

Feh.  I can't count.  The first count is correct.  The second count
should also be 001e.  I guess that should be obvious by just looking
at the two lines, they are equal in length.  :-)
 
> > Likewise if you wanted to do this with receive-pack, replace upload
> > with receive above and adjust the pkt-line lengths.
> 
> ok... what about all the other service commands?  like /info/refs?
> What should I put there?

The only other command that matters is info/refs.

For smart clients, its what I said above.

For dumb clients, you have to use some sort of HTTP error status
that isn't 404.  Dumb clients pre-1.6.6 use a curl error message
buffer to print out an error.  But they don't check the format of
info/refs at all, and skip over garbage and/or interpret garbage
as valid input.  So we can't use a hack like "ERR blah" to even
trigger a parsing failure.

-- 
Shawn.

  reply	other threads:[~2010-09-06 18:19 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-09-05 17:30 [PATCH] Add ERR support to smart HTTP Ilari Liusvaara
2010-09-05 17:41 ` Jonathan Nieder
2010-09-05 18:49   ` Ilari Liusvaara
2010-09-05 19:27     ` Ævar Arnfjörð Bjarmason
2010-09-05 21:21       ` Ilari Liusvaara
2010-09-05 21:22       ` Jakub Narebski
2010-09-06  1:04         ` Sitaram Chamarty
2010-09-06  5:45           ` Sitaram Chamarty
2010-09-06  8:45             ` Ævar Arnfjörð Bjarmason
2010-09-06  8:49             ` Jakub Narebski
2010-09-06  9:15               ` Joshua Juran
2010-09-06 14:56                 ` Shawn O. Pearce
2010-09-06 17:59                   ` Sitaram Chamarty
2010-09-06 18:19                     ` Shawn O. Pearce [this message]
2010-09-08 14:36                       ` Sitaram Chamarty
2010-09-06 14:24               ` Sitaram Chamarty
2010-09-06 16:31                 ` Jakub Narebski
2010-09-05 20:11     ` Jonathan Nieder

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=20100906181921.GN32601@spearce.org \
    --to=spearce@spearce.org \
    --cc=avarab@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=ilari.liusvaara@elisanet.fi \
    --cc=jjuran@gmail.com \
    --cc=jnareb@gmail.com \
    --cc=jrnieder@gmail.com \
    --cc=sitaramc@gmail.com \
    --cc=tarmigan+git@gmail.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.