distribution/registry
Tianon Gravi 8907f7d189 Update "Accept" header parsing for list values
In Go's header parsing, the same header multiple times results in multiple entries in the `r.Header[...]` slice, but Go does no further parsing beyond that (and in https://golang.org/cl/4528086 it was determined that until/unless the stdlib itself needs it, Go will not do so).

The consequence here for parsing of `Accept:` headers is that we support the way Go outputs headers, but not all language HTTP libraries have a facility to output multiple headers instead of a single list header.

This change ensures that the following (valid) header blocks all parse to the same result for the purposes of what is being tested here:

```
Accept: a/b
Accept: b/c
Accept: d/e
```

```
Accept: a/b; q=0.5, b/c
Accept: d/e
```

```
Accept: a/b; q=0.1, b/c; q=0.2, d/e; q=0.8
```

Signed-off-by: Andrew "Tianon" Page <admwiggin@gmail.com>
2016-06-10 16:52:27 -07:00
..
api Merge pull request #1774 from RichardScothern/catalog-clarifcation 2016-06-08 12:59:09 -07:00
auth fix typos 2016-06-02 23:03:27 +08:00
client Merge pull request #1772 from runcom/go1.6const 2016-06-08 10:22:57 -07:00
handlers Update "Accept" header parsing for list values 2016-06-10 16:52:27 -07:00
listener [Server] Listen and serve on a unix socket 2015-05-11 16:00:14 +03:00
middleware Add support for blobAccessController middleware 2016-05-19 14:02:15 +02:00
proxy Remove signature store from registry. Return a generated signature for manifest 2016-05-27 13:19:26 -07:00
storage fix typos 2016-06-02 23:03:27 +08:00
doc.go Move initialization code from main.go to the registry package 2015-09-09 14:39:31 -07:00
registry.go fix typos 2016-06-02 23:03:27 +08:00
root.go Remove signature store from registry. Return a generated signature for manifest 2016-05-27 13:19:26 -07:00