{"action":"opened","issue":{"url":"https://api.github.com/repos/dotnet/corefx/issues/3892","labels_url":"https://api.github.com/repos/dotnet/corefx/issues/3892/labels{/name}","comments_url":"https://api.github.com/repos/dotnet/corefx/issues/3892/comments","events_url":"https://api.github.com/repos/dotnet/corefx/issues/3892/events","html_url":"https://github.com/dotnet/corefx/issues/3892","id":111722071,"number":3892,"title":"Unix X500DistinguishedName prints multicomponent RDNs different than Windows","user":{"login":"bartonjs","id":10642668,"avatar_url":"https://avatars.githubusercontent.com/u/10642668?v=3","gravatar_id":"","url":"https://api.github.com/users/bartonjs","html_url":"https://github.com/bartonjs","followers_url":"https://api.github.com/users/bartonjs/followers","following_url":"https://api.github.com/users/bartonjs/following{/other_user}","gists_url":"https://api.github.com/users/bartonjs/gists{/gist_id}","starred_url":"https://api.github.com/users/bartonjs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bartonjs/subscriptions","organizations_url":"https://api.github.com/users/bartonjs/orgs","repos_url":"https://api.github.com/users/bartonjs/repos","events_url":"https://api.github.com/users/bartonjs/events{/privacy}","received_events_url":"https://api.github.com/users/bartonjs/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/dotnet/corefx/labels/up%20for%20grabs","name":"up for grabs","color":"159818"},{"url":"https://api.github.com/repos/dotnet/corefx/labels/X-Plat","name":"X-Plat","color":"fbca04"}],"state":"open","locked":false,"assignee":{"login":"bartonjs","id":10642668,"avatar_url":"https://avatars.githubusercontent.com/u/10642668?v=3","gravatar_id":"","url":"https://api.github.com/users/bartonjs","html_url":"https://github.com/bartonjs","followers_url":"https://api.github.com/users/bartonjs/followers","following_url":"https://api.github.com/users/bartonjs/following{/other_user}","gists_url":"https://api.github.com/users/bartonjs/gists{/gist_id}","starred_url":"https://api.github.com/users/bartonjs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bartonjs/subscriptions","organizations_url":"https://api.github.com/users/bartonjs/orgs","repos_url":"https://api.github.com/users/bartonjs/repos","events_url":"https://api.github.com/users/bartonjs/events{/privacy}","received_events_url":"https://api.github.com/users/bartonjs/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/dotnet/corefx/milestones/5","html_url":"https://github.com/dotnet/corefx/milestones/Future","labels_url":"https://api.github.com/repos/dotnet/corefx/milestones/5/labels","id":1328080,"number":5,"title":"Future","description":"Milestone tracking the issues that have been triaged for after 1.0.0-rtm","creator":{"login":"joshfree","id":1302850,"avatar_url":"https://avatars.githubusercontent.com/u/1302850?v=3","gravatar_id":"","url":"https://api.github.com/users/joshfree","html_url":"https://github.com/joshfree","followers_url":"https://api.github.com/users/joshfree/followers","following_url":"https://api.github.com/users/joshfree/following{/other_user}","gists_url":"https://api.github.com/users/joshfree/gists{/gist_id}","starred_url":"https://api.github.com/users/joshfree/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joshfree/subscriptions","organizations_url":"https://api.github.com/users/joshfree/orgs","repos_url":"https://api.github.com/users/joshfree/repos","events_url":"https://api.github.com/users/joshfree/events{/privacy}","received_events_url":"https://api.github.com/users/joshfree/received_events","type":"User","site_admin":false},"open_issues":255,"closed_issues":13,"state":"open","created_at":"2015-09-29T00:25:45Z","updated_at":"2015-10-15T22:37:24Z","due_on":null,"closed_at":null},"comments":0,"created_at":"2015-10-15T22:37:24Z","updated_at":"2015-10-15T22:37:24Z","closed_at":null,"body":"\"Normal\" certificate subjects are similar to\r\n```\r\nSequence(\r\n    Set(Sequence(Oid(CN), PrintableString(\"CommonName\"))),\r\n    Set(Sequence(Oid(O), PrintableString(\"Organization\"))))\r\n```\r\nWhen presented with a multi-component RDN like\r\n```\r\nSequence(\r\n    Set(\r\n        Sequence(Oid(CN), PrintableString(\"CommonName\")),\r\n        Sequence(Oid(O), PrintableString(\"Organization\"))))\r\n```\r\nWindows prints `CN=CommonName + O=Organization`.  The OpenSSL library seems to float the latter into the former, resulting in Unix builds printing `CN=CommonName, O=Organization`.\r\n\r\nThis is not expected to be very common, and Windows has an explicit disrecommendation for this on MSDN (https://msdn.microsoft.com/en-us/library/windows/desktop/aa376556%28v=vs.85%29.aspx - under Remarks):\r\n> We recommend against using multicomponent RDNs (e.g., CN=James+O=Microsoft) to avoid possible ordering problems when decoding occurs. Instead, consider using single valued RDNs (e.g., CN=James, O=Microsoft). \r\n"}}