{"action":"closed","issue":{"url":"https://api.github.com/repos/docker/docker/issues/25927","repository_url":"https://api.github.com/repos/docker/docker","labels_url":"https://api.github.com/repos/docker/docker/issues/25927/labels{/name}","comments_url":"https://api.github.com/repos/docker/docker/issues/25927/comments","events_url":"https://api.github.com/repos/docker/docker/issues/25927/events","html_url":"https://github.com/docker/docker/issues/25927","id":172483905,"number":25927,"title":"AuthZ plugins change headers","user":{"login":"runcom","id":849915,"avatar_url":"https://avatars.githubusercontent.com/u/849915?v=3","gravatar_id":"","url":"https://api.github.com/users/runcom","html_url":"https://github.com/runcom","followers_url":"https://api.github.com/users/runcom/followers","following_url":"https://api.github.com/users/runcom/following{/other_user}","gists_url":"https://api.github.com/users/runcom/gists{/gist_id}","starred_url":"https://api.github.com/users/runcom/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/runcom/subscriptions","organizations_url":"https://api.github.com/users/runcom/orgs","repos_url":"https://api.github.com/users/runcom/repos","events_url":"https://api.github.com/users/runcom/events{/privacy}","received_events_url":"https://api.github.com/users/runcom/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/docker/docker/labels/kind/bug","name":"kind/bug","color":"FF8C94"},{"url":"https://api.github.com/repos/docker/docker/labels/version/master","name":"version/master","color":"ededed"}],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2016-08-22T15:34:33Z","updated_at":"2016-08-24T09:52:27Z","closed_at":"2016-08-24T09:52:27Z","body":"**Output of `docker version`:**\r\n\r\n```\r\nClient:\r\n Version:      1.13.0-dev\r\n API version:  1.25\r\n Go version:   go1.6.3\r\n Git commit:   43640a8\r\n Built:        Mon Aug 22 17:26:03 2016\r\n OS/Arch:      linux/amd64\r\n Experimental: true\r\n\r\nServer:\r\n Version:      1.13.0-dev\r\n API version:  1.25\r\n Go version:   go1.6.3\r\n Git commit:   43640a8\r\n Built:        Mon Aug 22 17:26:03 2016\r\n OS/Arch:      linux/amd64\r\n Experimental: true\r\n```\r\n\r\n\r\n**Output of `docker info`:**\r\n\r\n```\r\nContainers: 28\r\n Running: 0\r\n Paused: 0\r\n Stopped: 28\r\nImages: 88\r\nServer Version: 1.13.0-dev\r\nStorage Driver: overlay\r\n Backing Filesystem: extfs\r\nLogging Driver: journald\r\nCgroup Driver: systemd\r\nPlugins: \r\n Volume: local\r\n Network: bridge host null overlay\r\nSwarm: inactive\r\nRuntimes: runc\r\nDefault Runtime: runc\r\nSecurity Options: seccomp\r\nKernel Version: 4.6.6-300.fc24.x86_64\r\nOperating System: Fedora 24 (Workstation Edition)\r\nOSType: linux\r\nArchitecture: x86_64\r\nCPUs: 4\r\nTotal Memory: 11.44 GiB\r\nName: localhost.localdomain\r\nID: 62I5:E7N5:VHP3:HEWA:7I2L:JLUR:JQV7:SDPV:GYHS:LFYI:QBIH:KRRV\r\nDocker Root Dir: /var/lib/docker\r\nDebug Mode (client): false\r\nDebug Mode (server): true\r\n File Descriptors: 15\r\n Goroutines: 25\r\n System Time: 2016-08-22T17:28:48.882005417+02:00\r\n EventsListeners: 0\r\nUsername: runcom\r\nRegistry: https://index.docker.io/v1/\r\nExperimental: true\r\nInsecure Registries:\r\n localhost\r\n 172.30.0.0/16\r\n 127.0.0.0/8\r\nLive Restore Enabled: false\r\n```\r\n\r\n**Additional environment details (AWS, VirtualBox, physical, etc.):**\r\nphysical/cloud\r\n\r\n\r\n**Steps to reproduce the issue:**\r\n1. start the docker daemon with an authorization plugin (e.g. https://github.com/projectatomic/docker-novolume-plugin even if every plugin which just reply with _allow_ will raise the issue) and also have the daemon listen on localhost to be curl'ed\r\n2. `curl -vvv http://localhost:8081/images/json` or `curl -vvv http://localhost:8081/containers/json`\r\n3.\r\n\r\n\r\n**Describe the results you received:**\r\n```\r\n$ curl -vvv http://localhost:8081/images/json\r\n*   Trying ::1...\r\n* connect to ::1 port 8081 failed: Connection refused\r\n*   Trying 127.0.0.1...\r\n* Connected to localhost (127.0.0.1) port 8081 (#0)\r\n> GET /images/json HTTP/1.1\r\n> Host: localhost:8081\r\n> User-Agent: curl/7.47.1\r\n> Accept: */*\r\n> \r\n< HTTP/1.1 200 OK\r\n< Date: Mon, 22 Aug 2016 15:27:56 GMT\r\n< Content-Type: text/plain; charset=utf-8\r\n< Transfer-Encoding: chunked\r\n< \r\n[API output here truncated]\r\n```\r\n\r\n**Describe the results you expected:**\r\n```\r\n$ curl -vvv http://localhost:8081/images/json\r\n\r\n*   Trying ::1...\r\n* connect to ::1 port 8081 failed: Connection refused\r\n*   Trying 127.0.0.1...\r\n* Connected to localhost (127.0.0.1) port 8081 (#0)\r\n> GET /images/json HTTP/1.1\r\n> Host: localhost:8081\r\n> User-Agent: curl/7.47.1\r\n> Accept: */*\r\n> \r\n< HTTP/1.1 200 OK\r\n< Content-Type: application/json\r\n< Server: Docker/1.13.0-dev (linux)\r\n< Date: Mon, 22 Aug 2016 15:27:22 GMT\r\n< Transfer-Encoding: chunked\r\n< \r\n[API output truncated]\r\n```\r\n\r\n**Additional information you deem important (e.g. issue happens only occasionally):**\r\n\r\nYou can see from the above that headers changed when using/not using an authz plugin. Specifically for instance the `Content-Type` header was `application/json` w/o the plugin enabled (which is correct) while it was `text/plain; charset=utf-8` when using the plugin.\r\n\r\n/cc @estesp @liron-l "}}
{"actor":{"display_login":"justincormack"}}