{"action":"created","issue":{"url":"https://api.github.com/repos/openssl/openssl/issues/1700","repository_url":"https://api.github.com/repos/openssl/openssl","labels_url":"https://api.github.com/repos/openssl/openssl/issues/1700/labels{/name}","comments_url":"https://api.github.com/repos/openssl/openssl/issues/1700/comments","events_url":"https://api.github.com/repos/openssl/openssl/issues/1700/events","html_url":"https://github.com/openssl/openssl/pull/1700","id":182569919,"number":1700,"title":"WIP PEM read-side refactor","user":{"login":"kaduk","id":1894506,"avatar_url":"https://avatars.githubusercontent.com/u/1894506?v=3","gravatar_id":"","url":"https://api.github.com/users/kaduk","html_url":"https://github.com/kaduk","followers_url":"https://api.github.com/users/kaduk/followers","following_url":"https://api.github.com/users/kaduk/following{/other_user}","gists_url":"https://api.github.com/users/kaduk/gists{/gist_id}","starred_url":"https://api.github.com/users/kaduk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kaduk/subscriptions","organizations_url":"https://api.github.com/users/kaduk/orgs","repos_url":"https://api.github.com/users/kaduk/repos","events_url":"https://api.github.com/users/kaduk/events{/privacy}","received_events_url":"https://api.github.com/users/kaduk/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2016-10-12T16:19:58Z","updated_at":"2016-10-13T18:06:33Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/openssl/openssl/pulls/1700","html_url":"https://github.com/openssl/openssl/pull/1700","diff_url":"https://github.com/openssl/openssl/pull/1700.diff","patch_url":"https://github.com/openssl/openssl/pull/1700.patch"},"body":"WIP partially since we still have to make up our mind how strict we want the parser to be (and with flags, we even can offer multiple options).\r\n\r\nSee also RT4698"},"comment":{"url":"https://api.github.com/repos/openssl/openssl/issues/comments/253591786","html_url":"https://github.com/openssl/openssl/pull/1700#issuecomment-253591786","issue_url":"https://api.github.com/repos/openssl/openssl/issues/1700","id":253591786,"user":{"login":"tlhackque","id":332018,"avatar_url":"https://avatars.githubusercontent.com/u/332018?v=3","gravatar_id":"","url":"https://api.github.com/users/tlhackque","html_url":"https://github.com/tlhackque","followers_url":"https://api.github.com/users/tlhackque/followers","following_url":"https://api.github.com/users/tlhackque/following{/other_user}","gists_url":"https://api.github.com/users/tlhackque/gists{/gist_id}","starred_url":"https://api.github.com/users/tlhackque/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tlhackque/subscriptions","organizations_url":"https://api.github.com/users/tlhackque/orgs","repos_url":"https://api.github.com/users/tlhackque/repos","events_url":"https://api.github.com/users/tlhackque/events{/privacy}","received_events_url":"https://api.github.com/users/tlhackque/received_events","type":"User","site_admin":false},"created_at":"2016-10-13T18:06:33Z","updated_at":"2016-10-13T18:06:33Z","body":"My comments on RT4698 still apply - I don't quite understand the state change to \"rejected but issue tracked on (this) PR\".\r\n\r\nWhitespace (anywhere) and odd line lengths are common UI issues.  Non-base64 chars have pluses and minuses.  For the former, consider an e-mail that gets quoted with '>' when forwarded.  The latter are described in the RFC.\r\n\r\nAs I mentioned in the RT, the OpenXPKI project has encountered this issue; see openxpki/openxpki/issues/437.\r\n\r\nI maintain the Perl CPAN module Crypt::PKCS10, where I parse and output CSRs and public keys.\r\n\r\nWhen parsing, I remove all whitespace, optionally remove non-base64 characters, and treat the result as one long string.   That's a lot simpler than insisting on 64 character lines (except the last).    And it accepts all valid input.  Of course, that's Perl.  But in C code it's easy to do the same thing by processing one character at a time.\r\n\r\nErrors are best caught when parsing the asn.1 (and validating signatures), not by enforcing a strict punch-card era text format.  I recommend this.\r\n\r\nFor output, of course, I produce strictly compliant PEM.\r\n\r\nIn other applications, it's a bit more involved to detect the encryption header - but once past that, I use the same approach.\r\n\r\nBottom line, I encourage the Unix \"accept liberal, produce conservative\".  I'd settle for an option, but I don't think it's necessary - and OpenSSL has enough of those as is."}}
{"actor":{"display_login":"tlhackque"}}