To be clear, you only need to rebuild your CLI tools (not the server)
with this CL patched in on top of master.


On 15 July 2016 at 18:49, Mathieu Lonjaret <[email protected]> wrote:
> Here's a possible work-around:
> https://camlistore-review.googlesource.com/6896
>
> Can you please try it and let me know if it works for you?
>
>
> On 15 July 2016 at 17:06, Mathieu Lonjaret <[email protected]> wrote:
>> On 15 July 2016 at 16:56, Gergely Imreh <[email protected]> wrote:
>>> On 15 July 2016 at 20:22, Tamás Gulácsi <[email protected]> wrote:
>>>> 2016. július 14., csütörtök 18:57:27 UTC+2 időpontban Gergely Imreh a
>>>> következőt írta:
>>>>>
>>>>> Hi,
>>>>>
>>>>> I'm trying out camlistore, using the tip of the master branch, and run
>>>>> into an issue with http/2, not letting me to connect to the server on the
>>>>> command line, while the browser UI connection works fine.
>>>>>
>>>>> I'm packaging up camlistore as a Docker container to run on the resin.io
>>>>> platform, basically being easily deployed to single board computer devices
>>>>> (such as Raspberry Pi, Beaglebone, Intel Edison, etc...) The repo of the
>>>>> container source is here:
>>>>> https://github.com/resin-io-playground/camlistore-server
>>>>>
>>>>> On resin, the devices can be accessed over the net through a public device
>>>>> URL. The address "https://<UUID>.resindevice.io" is proxied over VPN to 
>>>>> the
>>>>> device, to port 80. Thus I've set listen:":80" and
>>>>> baseURL:"https://<UUID>.resindevice.io" in server-config.json. Over the 
>>>>> web
>>>>> UI I can connect, upload, change settings, everything.
>>>>>
>>>>> When using command line tools, on the other hand, I run into this error,
>>>>> for example in the case of "camput file SOMEFILENAME":
>>>>> Error putting file: Get https://<UUID>.resindevice.io: http2: unexpected
>>>>> ALPN protocol ""; want "h2"
>>>>>
>>>>> That https proxy indeed does not have http/2 / ALPN enabled, does that
>>>>> mean the command line tools cannot connect anymore?
>>>>>
>>>>> Looks like using the 0.8 release command line tools can work with the same
>>>>> server just fine (server compiled either from 0.8 or master branch). Also,
>>>>> using the master branch, can successfully use localhost dev server fine.
>>>>>
>>>>> Any ideas how to deal with this?
>>>>>
>>>>> Cheers,
>>>>>    Greg
>>>>
>>>>
>>>> Any difference by compiling with go1.7rc1 either 0.8 or master ?
>>>> I think this has to be a proxy error.
>>>> To locate it, can you check the camlistored whether it gets the connection
>>>> at all when you try the cli tool? If yes, then that's strange :)
>>>> If not, then maybe you have to degrade the protocol to HTTPS 1.1 somehow at
>>>> the proxy level, or by adding another proxy...
>>>>
>>>
>>> Hi Tamas,
>>>
>>> I've tried to recompile the master with go 1.7rc1, but it does not
>>> compile, fails for me in the very beginning with
>>>
>>> gopherjs for publisher error: exit status 1,
>>> tmp/build-gopath-nosqlite/src/github.com/gopherjs/gopherjs/compiler/natives/runtime/runtime.go:11:14:
>>> TheGoos not declared by package sys
>>> ../../../../../../../../usr/lib/go/src/runtime/error.go:70:9: invalid
>>> operation: e._type (variable of type *struct{_string *string}) has no
>>> field or method string
>>> exit status 1
>>> make: *** [Makefile:6: all] Error 1
>>>
>>> I have not tried to recompile 0.8, since that was working before just
>>> fine, the issue is with 0.9 and onwards.
>>>
>>> Not sure I understand your comment about degrading the protocol. The
>>> proxy already tries to communicate over HTTP/1.1, what else is there
>>> to change on the proxy? Running a http2 enabled curl on the web UI I
>>> get the following exchange, showing the http2 request by curl, not
>>> accepted by the server, falling back to HTTP/1.1 and following with
>>> authentication (which means that curl at least can talk to the
>>> camlistore server over http/1.1):
>>>
>>> $curl -I -v 
>>> https://0fb549fe00f9a9c4ba96a45f349b525c4e36498835dc0533b202606bd43d81.resindevice.io/ui/
>>> *   Trying 52.200.87.42...
>>> * Connected to 
>>> 0fb549fe00f9a9c4ba96a45f349b525c4e36498835dc0533b202606bd43d81.resindevice.io
>>> (52.200.87.42) port 443 (#0)
>>> * ALPN, offering h2
>>> * ALPN, offering http/1.1
>>> [SNIP]
>>> * SSL connection using TLSv1.2 / ECDHE-RSA-AES128-GCM-SHA256
>>> * ALPN, server did not agree to a protocol
>>> [SNIP]
>>> < HTTP/1.1 401 Unauthorized
>>> HTTP/1.1 401 Unauthorized
>>>
>>> It all shows me that the issue is likely still be in the CLI tools
>>> somewhere, not accepting protocol downgrading, but trying to force
>>> http/2 even when not available?
>>
>> Yes. that is what I believe is happening too. I'm working on it.

-- 
You received this message because you are subscribed to the Google Groups 
"Camlistore" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to