* AWS vs encode '#'
@ 2016-12-20 0:14 Stephen Leake
2016-12-20 15:55 ` Pascal Obry
0 siblings, 1 reply; 7+ messages in thread
From: Stephen Leake @ 2016-12-20 0:14 UTC (permalink / raw)
I'm working on a web server that handles downloading music to my PDA, using AWS. One of the music file names is (in part):
01 The Dance #1.mp3
The "#" is part of the file name; it does _not_ indicate a "fragment" part of a URL.
However, if I send a properly encoded "GET" request to the AWS server:
GET .../01%20The%20Dance%20%231.mp3
it arrives in my Handle_Request subprogram with "#1.mp3" in the fragment part of the URL (just wrong!).
Tracing through the code, the socket is read in aws-server-http_utils.adb Get_Request_Line. That calls aws-server-http_utils.adb Parse_Request_Line, which _decodes_ the resource string, _then_ calls Status.Set.Request which calls URL.Set.Parse, which puts the "#.mp3" in the fragment.
URL.Decode should be called _after_ URL.Set.Parse, not before.
Has anyone else seen this?
I find it hard to believe such a fundamental bug is in AWS; am I missing something?
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: AWS vs encode '#'
2016-12-20 0:14 AWS vs encode '#' Stephen Leake
@ 2016-12-20 15:55 ` Pascal Obry
2016-12-20 19:55 ` Stephen Leake
0 siblings, 1 reply; 7+ messages in thread
From: Pascal Obry @ 2016-12-20 15:55 UTC (permalink / raw)
Hello Stephen,
> Has anyone else seen this?
No, you're the first one to report.
> I find it hard to believe such a fundamental bug is in AWS; am I
> missing something?
I fear that indeed this is an AWS bug unnoticed since all this time.
--
Pascal Obry / Magny Les Hameaux (78)
The best way to travel is by means of imagination
http://www.obry.net
gpg --keyserver keys.gnupg.net --recv-key F949BD3B
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: AWS vs encode '#'
2016-12-20 15:55 ` Pascal Obry
@ 2016-12-20 19:55 ` Stephen Leake
2016-12-20 21:20 ` Pascal Obry
0 siblings, 1 reply; 7+ messages in thread
From: Stephen Leake @ 2016-12-20 19:55 UTC (permalink / raw)
On Tuesday, December 20, 2016 at 9:55:34 AM UTC-6, Pascal Obry wrote:
> Hello Stephen,
>
> > Has anyone else seen this?
>
> No, you're the first one to report.
>
> > I find it hard to believe such a fundamental bug is in AWS; am I
> > missing something?
>
> I fear that indeed this is an AWS bug unnoticed since all this time.
Ok. I'll see if I can come up with a patch. I'm using GPL 2016; is there a public AWS source repository?
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: AWS vs encode '#'
2016-12-20 19:55 ` Stephen Leake
@ 2016-12-20 21:20 ` Pascal Obry
2016-12-22 20:17 ` Stephen Leake
0 siblings, 1 reply; 7+ messages in thread
From: Pascal Obry @ 2016-12-20 21:20 UTC (permalink / raw)
Hi Stephen,
> Ok. I'll see if I can come up with a patch. I'm using GPL 2016; is
> there a public AWS source repository?
Yes on GitHub, see:
https://github.com/AdaCore/aws
--
Pascal Obry / Magny Les Hameaux (78)
The best way to travel is by means of imagination
http://www.obry.net
gpg --keyserver keys.gnupg.net --recv-key F949BD3B
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: AWS vs encode '#'
2016-12-20 21:20 ` Pascal Obry
@ 2016-12-22 20:17 ` Stephen Leake
2016-12-23 8:16 ` Simon Wright
0 siblings, 1 reply; 7+ messages in thread
From: Stephen Leake @ 2016-12-22 20:17 UTC (permalink / raw)
On Tuesday, December 20, 2016 at 3:20:06 PM UTC-6, Pascal Obry wrote:
> Hi Stephen,
>
> > Ok. I'll see if I can come up with a patch. I'm using GPL 2016; is
> > there a public AWS source repository?
>
> Yes on GitHub, see:
> https://github.com/AdaCore/aws
I'm trying to make that work, in a Debian testing VM. "make setup" fails because the "templates_parser" directory is empty.
Is that supposed to be populated from some other git repository? Neither INSTALL nor readme.txt say that.
Is there a better mailing list to discuss this?
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: AWS vs encode '#'
2016-12-22 20:17 ` Stephen Leake
@ 2016-12-23 8:16 ` Simon Wright
2016-12-23 21:21 ` Stephen Leake
0 siblings, 1 reply; 7+ messages in thread
From: Simon Wright @ 2016-12-23 8:16 UTC (permalink / raw)
Stephen Leake <stephen_leake@stephe-leake.org> writes:
> On Tuesday, December 20, 2016 at 3:20:06 PM UTC-6, Pascal Obry wrote:
>> Hi Stephen,
>>
>> > Ok. I'll see if I can come up with a patch. I'm using GPL 2016; is
>> > there a public AWS source repository?
>>
>> Yes on GitHub, see:
>> https://github.com/AdaCore/aws
>
> I'm trying to make that work, in a Debian testing VM. "make setup"
> fails because the "templates_parser" directory is empty.
I think you are meant to clone using --recursive, because
templates_parser is a submodule.
--recursive, --recurse-submodules
After the clone is created, initialize all submodules within, using
their default settings. This is equivalent to running git submodule
update --init --recursive immediately after the clone is finished.
This option is ignored if the cloned repository does not have a
worktree/checkout (i.e. if any of --no-checkout/-n, --bare, or
--mirror is given)
> Is that supposed to be populated from some other git repository?
> Neither INSTALL nor readme.txt say that.
Looks like an issue needs raising.
> Is there a better mailing list to discuss this?
At the bottom of readme.txt it suggests
http://lists.adacore.com/mailman/listinfo/aws
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: AWS vs encode '#'
2016-12-23 8:16 ` Simon Wright
@ 2016-12-23 21:21 ` Stephen Leake
0 siblings, 0 replies; 7+ messages in thread
From: Stephen Leake @ 2016-12-23 21:21 UTC (permalink / raw)
On Friday, December 23, 2016 at 2:16:22 AM UTC-6, Simon Wright wrote:
> Stephen Leake writes:
>
> > On Tuesday, December 20, 2016 at 3:20:06 PM UTC-6, Pascal Obry wrote:
> >> Hi Stephen,
> >>
> >> > Ok. I'll see if I can come up with a patch. I'm using GPL 2016; is
> >> > there a public AWS source repository?
> >>
> >> Yes on GitHub, see:
> >> https://github.com/AdaCore/aws
> >
> > I'm trying to make that work, in a Debian testing VM. "make setup"
> > fails because the "templates_parser" directory is empty.
>
> I think you are meant to clone using --recursive, because
> templates_parser is a submodule.
Ok, that works.
> At the bottom of readme.txt it suggests
> http://lists.adacore.com/mailman/listinfo/aws
I posted my original issue, with a patch. I'll raise the issue of submodule checkout.
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2016-12-23 21:21 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-12-20 0:14 AWS vs encode '#' Stephen Leake
2016-12-20 15:55 ` Pascal Obry
2016-12-20 19:55 ` Stephen Leake
2016-12-20 21:20 ` Pascal Obry
2016-12-22 20:17 ` Stephen Leake
2016-12-23 8:16 ` Simon Wright
2016-12-23 21:21 ` Stephen Leake
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox