{"action":"created","issue":{"url":"https://api.github.com/repos/netty/netty/issues/3629","labels_url":"https://api.github.com/repos/netty/netty/issues/3629/labels{/name}","comments_url":"https://api.github.com/repos/netty/netty/issues/3629/comments","events_url":"https://api.github.com/repos/netty/netty/issues/3629/events","html_url":"https://github.com/netty/netty/pull/3629","id":68353828,"number":3629,"title":"Validate cookie name and value characters","user":{"login":"slandelle","id":849197,"avatar_url":"https://avatars.githubusercontent.com/u/849197?v=3","gravatar_id":"","url":"https://api.github.com/users/slandelle","html_url":"https://github.com/slandelle","followers_url":"https://api.github.com/users/slandelle/followers","following_url":"https://api.github.com/users/slandelle/following{/other_user}","gists_url":"https://api.github.com/users/slandelle/gists{/gist_id}","starred_url":"https://api.github.com/users/slandelle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/slandelle/subscriptions","organizations_url":"https://api.github.com/users/slandelle/orgs","repos_url":"https://api.github.com/users/slandelle/repos","events_url":"https://api.github.com/users/slandelle/events{/privacy}","received_events_url":"https://api.github.com/users/slandelle/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/netty/netty/labels/security","name":"security","color":"000000"}],"state":"open","locked":false,"assignee":{"login":"trustin","id":173918,"avatar_url":"https://avatars.githubusercontent.com/u/173918?v=3","gravatar_id":"","url":"https://api.github.com/users/trustin","html_url":"https://github.com/trustin","followers_url":"https://api.github.com/users/trustin/followers","following_url":"https://api.github.com/users/trustin/following{/other_user}","gists_url":"https://api.github.com/users/trustin/gists{/gist_id}","starred_url":"https://api.github.com/users/trustin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/trustin/subscriptions","organizations_url":"https://api.github.com/users/trustin/orgs","repos_url":"https://api.github.com/users/trustin/repos","events_url":"https://api.github.com/users/trustin/events{/privacy}","received_events_url":"https://api.github.com/users/trustin/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/netty/netty/milestones/115","html_url":"https://github.com/netty/netty/milestones/4.0.28.Final","labels_url":"https://api.github.com/repos/netty/netty/milestones/115/labels","id":1050260,"number":115,"title":"4.0.28.Final","description":"","creator":{"login":"normanmaurer","id":439362,"avatar_url":"https://avatars.githubusercontent.com/u/439362?v=3","gravatar_id":"","url":"https://api.github.com/users/normanmaurer","html_url":"https://github.com/normanmaurer","followers_url":"https://api.github.com/users/normanmaurer/followers","following_url":"https://api.github.com/users/normanmaurer/following{/other_user}","gists_url":"https://api.github.com/users/normanmaurer/gists{/gist_id}","starred_url":"https://api.github.com/users/normanmaurer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/normanmaurer/subscriptions","organizations_url":"https://api.github.com/users/normanmaurer/orgs","repos_url":"https://api.github.com/users/normanmaurer/repos","events_url":"https://api.github.com/users/normanmaurer/events{/privacy}","received_events_url":"https://api.github.com/users/normanmaurer/received_events","type":"User","site_admin":false},"open_issues":55,"closed_issues":18,"state":"open","created_at":"2015-04-02T12:45:12Z","updated_at":"2015-04-15T11:58:10Z","due_on":null,"closed_at":null},"comments":12,"created_at":"2015-04-14T12:17:01Z","updated_at":"2015-04-15T12:08:33Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/netty/netty/pulls/3629","html_url":"https://github.com/netty/netty/pull/3629","diff_url":"https://github.com/netty/netty/pull/3629.diff","patch_url":"https://github.com/netty/netty/pull/3629.patch"},"body":"Motivation:\r\n\r\nRFC6265 specifies which characters are allowed in a cookie name and value.\r\n\r\nNetty is currently too lax, which can used for HttpOnly escaping.\r\n\r\nModification:\r\n\r\nIn ServerCookieDecoder: discard cookie key-value pairs that contain invalid characters.\r\nIn ClientCookieEncoder: throw an exception when trying to encode cookies with invalid characters.\r\n\r\nResult:\r\n\r\nThe problem described in the motivation section is fixed."},"comment":{"url":"https://api.github.com/repos/netty/netty/issues/comments/93361468","html_url":"https://github.com/netty/netty/pull/3629#issuecomment-93361468","issue_url":"https://api.github.com/repos/netty/netty/issues/3629","id":93361468,"user":{"login":"slandelle","id":849197,"avatar_url":"https://avatars.githubusercontent.com/u/849197?v=3","gravatar_id":"","url":"https://api.github.com/users/slandelle","html_url":"https://github.com/slandelle","followers_url":"https://api.github.com/users/slandelle/followers","following_url":"https://api.github.com/users/slandelle/following{/other_user}","gists_url":"https://api.github.com/users/slandelle/gists{/gist_id}","starred_url":"https://api.github.com/users/slandelle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/slandelle/subscriptions","organizations_url":"https://api.github.com/users/slandelle/orgs","repos_url":"https://api.github.com/users/slandelle/repos","events_url":"https://api.github.com/users/slandelle/events{/privacy}","received_events_url":"https://api.github.com/users/slandelle/received_events","type":"User","site_admin":false},"created_at":"2015-04-15T12:08:33Z","updated_at":"2015-04-15T12:08:33Z","body":"Good idea!"}}