Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Wed, 27 Mar 2019 11:09:35 +0530
From: vlse <vlse@...ra.biz>
To: musl@...ts.openwall.com
Cc: dalias@...c.org
Subject: Re: Supporting git access via smart HTTPS protocol for musl-libc

On Tue, Mar 26, 2019 at 08:15:42PM -0400, Rich Felker wrote:
> On Tue, Mar 26, 2019 at 07:58:35PM -0400, Rich Felker wrote:
> > On Tue, Mar 26, 2019 at 04:32:32PM -0600, Assaf Gordon wrote:
> > > >
> > > > Thanks for the info. I've been playing with it, but haven't been able
> > > > to get it to work yet. I suspect thttpd is doing something broken with
> > > > the POST request since the git clone breaks during that. Going to look
> > > > at it in more detail later.
> > > 
> > > The same happened to me with busybox, and was solved by forcing:
> > > 
> > >     export HTTP_CONTENT_ENCODING=gzip
> > > 
> > > Seems to me (from a cursory look) that "git clone" client always sends
> > > gzipped (inflate) data, but either doesn't set the HTTP encoding header,
> > > or the header gets lost somehow.
> > > 
> > > The git-http-backend uses that header to decide whether to deflate
> > > the stream or not (
> > > https://github.com/git/git/blob/master/http-backend.c#L460 ).
> > > 
> > > That's the first thing I'd try if the GET request worked but the
> > > following "POST git-update-pack"
> > > does not.
> > 
> > Amazingly, this works, but only if I do it only for
> > REQUEST_METHOD=POST. Otherwise it breaks the GET request and it never
> > makes it to the POST. *sigh* There's got to be some better way to fix
> > this.
> 
> Anyway, for now this is vaguely working, but it's a hack and it's
> experimental and might break. Users interested in testing can clone:
> 
> 	https://git.musl-libc.org/git/musl
> 
> It might go up and down while I'm hacking on getting it right, but I
> intend for the URL to be permanent in the long term.
> 
> Rich

Hi,

I am using git-2.0.2 version.

Following works:
git clone https://git.musl-libc.org/git/musl
cd musl
git pull
git fetch

git fsck --full
 shows no error

This does not works:
mkdir musl.git
cd musl.git
git init
git remote add -t master -m master origin https://git.musl-libc.org/git/musl

git fetch

git-fetch gives errors:
  fatal: protocol error: bad line length character: erro


Running 'GIT_TRACE=2 git fetch' outputs:

trace: built-in: git 'fetch'
trace: run_command: 'git-remote-https' 'origin' 'https://git.musl-libc.org/git/musl'
trace: run_command: 'rev-list' '--objects' '--stdin' '--not' '--all' '--quiet'
trace: run_command: 'fetch-pack' '--stateless-rpc' '--stdin' '--lock-pack' '--include-tag' '--thin' 'https://git.musl-libc.org/git/musl/'
trace: exec: 'git' 'fetch-pack' '--stateless-rpc' '--stdin' '--lock-pack' '--include-tag' '--thin' 'https://git.musl-libc.org/git/musl/'
trace: built-in: git 'fetch-pack' '--stateless-rpc' '--stdin' '--lock-pack' '--include-tag' '--thin' 'https://git.musl-libc.org/git/musl/'
fatal: protocol error: bad line length character: erro
fatal: The remote end hung up unexpectedly


Regards,
Veera

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.