{"action":"created","issue":{"url":"https://api.github.com/repos/libarchive/libarchive/issues/824","repository_url":"https://api.github.com/repos/libarchive/libarchive","labels_url":"https://api.github.com/repos/libarchive/libarchive/issues/824/labels{/name}","comments_url":"https://api.github.com/repos/libarchive/libarchive/issues/824/comments","events_url":"https://api.github.com/repos/libarchive/libarchive/issues/824/events","html_url":"https://github.com/libarchive/libarchive/pull/824","id":189367182,"number":824,"title":"Fix 710 openssl11 opaque evp cipher ctx","user":{"login":"melvyn-sopacua","id":3591955,"avatar_url":"https://avatars.githubusercontent.com/u/3591955?v=3","gravatar_id":"","url":"https://api.github.com/users/melvyn-sopacua","html_url":"https://github.com/melvyn-sopacua","followers_url":"https://api.github.com/users/melvyn-sopacua/followers","following_url":"https://api.github.com/users/melvyn-sopacua/following{/other_user}","gists_url":"https://api.github.com/users/melvyn-sopacua/gists{/gist_id}","starred_url":"https://api.github.com/users/melvyn-sopacua/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/melvyn-sopacua/subscriptions","organizations_url":"https://api.github.com/users/melvyn-sopacua/orgs","repos_url":"https://api.github.com/users/melvyn-sopacua/repos","events_url":"https://api.github.com/users/melvyn-sopacua/events{/privacy}","received_events_url":"https://api.github.com/users/melvyn-sopacua/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2016-11-15T11:28:58Z","updated_at":"2016-11-15T15:08:43Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/libarchive/libarchive/pulls/824","html_url":"https://github.com/libarchive/libarchive/pull/824","diff_url":"https://github.com/libarchive/libarchive/pull/824.diff","patch_url":"https://github.com/libarchive/libarchive/pull/824.patch"},"body":"[Gist to test FreeBSD port](https://gist.github.com/melvyn-sopacua/f66152c790ca759b20beb110a8b9366a)\r\n\r\nI've set this up to be a temporary compatibility fix - the real fix will need decisions best made by the author on how to proceed with handling of these now opaque types."},"comment":{"url":"https://api.github.com/repos/libarchive/libarchive/issues/comments/260666362","html_url":"https://github.com/libarchive/libarchive/pull/824#issuecomment-260666362","issue_url":"https://api.github.com/repos/libarchive/libarchive/issues/824","id":260666362,"user":{"login":"melvyn-sopacua","id":3591955,"avatar_url":"https://avatars.githubusercontent.com/u/3591955?v=3","gravatar_id":"","url":"https://api.github.com/users/melvyn-sopacua","html_url":"https://github.com/melvyn-sopacua","followers_url":"https://api.github.com/users/melvyn-sopacua/followers","following_url":"https://api.github.com/users/melvyn-sopacua/following{/other_user}","gists_url":"https://api.github.com/users/melvyn-sopacua/gists{/gist_id}","starred_url":"https://api.github.com/users/melvyn-sopacua/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/melvyn-sopacua/subscriptions","organizations_url":"https://api.github.com/users/melvyn-sopacua/orgs","repos_url":"https://api.github.com/users/melvyn-sopacua/repos","events_url":"https://api.github.com/users/melvyn-sopacua/events{/privacy}","received_events_url":"https://api.github.com/users/melvyn-sopacua/received_events","type":"User","site_admin":false},"created_at":"2016-11-15T15:08:43Z","updated_at":"2016-11-15T15:08:43Z","body":"Makes sense, since malloc() can fail. The real problem is with _cleanup(). I can't actually set the pointer to NULL without having a pointer to the pointer. So we do keep some freed memory around. I did a course check if the _valid flag in the surrounding struct should guard against referencing it, but not very thorough.\r\nI've got it built and rebuilding software on my workstation to work with it, then see if I get any core dumps on \"normal\" operations.\r\nBut tbh, I prefer the team decide on how to proceed with the new opaque types and since I already have a good idea of the impact and context of the changes, I wouldn't mind doing the work. The primary question being: Do we use the new API from openssl 1.1 and make others (nettle/apple/windows etc) work accordingly or treat OpenSSL 1.1 as the odd duck."}}
{"actor":{"display_login":"melvyn-sopacua"}}