{"action":"created","issue":{"url":"https://api.github.com/repos/seanmonstar/reqwest/issues/176","repository_url":"https://api.github.com/repos/seanmonstar/reqwest","labels_url":"https://api.github.com/repos/seanmonstar/reqwest/issues/176/labels{/name}","comments_url":"https://api.github.com/repos/seanmonstar/reqwest/issues/176/comments","events_url":"https://api.github.com/repos/seanmonstar/reqwest/issues/176/events","html_url":"https://github.com/seanmonstar/reqwest/pull/176","id":246611157,"number":176,"title":"Support PKCS12 identity on the ClientBuilder","user":{"login":"anowell","id":2629687,"avatar_url":"https://avatars3.githubusercontent.com/u/2629687?v=4","gravatar_id":"","url":"https://api.github.com/users/anowell","html_url":"https://github.com/anowell","followers_url":"https://api.github.com/users/anowell/followers","following_url":"https://api.github.com/users/anowell/following{/other_user}","gists_url":"https://api.github.com/users/anowell/gists{/gist_id}","starred_url":"https://api.github.com/users/anowell/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/anowell/subscriptions","organizations_url":"https://api.github.com/users/anowell/orgs","repos_url":"https://api.github.com/users/anowell/repos","events_url":"https://api.github.com/users/anowell/events{/privacy}","received_events_url":"https://api.github.com/users/anowell/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2017-07-30T21:48:17Z","updated_at":"2017-07-31T19:32:45Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/seanmonstar/reqwest/pulls/176","html_url":"https://github.com/seanmonstar/reqwest/pull/176","diff_url":"https://github.com/seanmonstar/reqwest/pull/176.diff","patch_url":"https://github.com/seanmonstar/reqwest/pull/176.patch"},"body":"I wasn't certain how far into the weeds of TLS features reqwest wants to go, but this seemed straight-forward to add by following the patterns set by `add_root_certificate` to include the `TlsConnectorBuilder::identity` method, so I figured I'd send a PR and see what you thought.\r\n\r\nI started using it for an internal tool that needs TLS client authorization to connect to a kubernetes API server. (It *might* become the beginnings of a kubernetes client crate)."},"comment":{"url":"https://api.github.com/repos/seanmonstar/reqwest/issues/comments/319172257","html_url":"https://github.com/seanmonstar/reqwest/pull/176#issuecomment-319172257","issue_url":"https://api.github.com/repos/seanmonstar/reqwest/issues/176","id":319172257,"user":{"login":"anowell","id":2629687,"avatar_url":"https://avatars3.githubusercontent.com/u/2629687?v=4","gravatar_id":"","url":"https://api.github.com/users/anowell","html_url":"https://github.com/anowell","followers_url":"https://api.github.com/users/anowell/followers","following_url":"https://api.github.com/users/anowell/following{/other_user}","gists_url":"https://api.github.com/users/anowell/gists{/gist_id}","starred_url":"https://api.github.com/users/anowell/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/anowell/subscriptions","organizations_url":"https://api.github.com/users/anowell/orgs","repos_url":"https://api.github.com/users/anowell/repos","events_url":"https://api.github.com/users/anowell/events{/privacy}","received_events_url":"https://api.github.com/users/anowell/received_events","type":"User","site_admin":false},"created_at":"2017-07-31T19:32:44Z","updated_at":"2017-07-31T19:32:44Z","body":"I'm really not an expert here. This is my first time ever needed a client cert [here in a one-night hack kubernetes client](https://github.com/anowell/kubeclient-rs/blob/23953a969c3a7f2e4d00ed9ed01c217a17fee647/src/client.rs#L23-L34)\r\n\r\nThe comments on that thread resonate with me because I didn't have a PKCS12 to begin with, rather a collection of base64-encoded PEM-encoded strings (an `X509` cert and a `PKey`) in a YAML file [as seen here](https://github.com/anowell/kubeclient-rs/blob/23953a969c3a7f2e4d00ed9ed01c217a17fee647/src/config.rs#L87-L96). I only went through the hoop of constructing the PKCS12 (as seen in the first link) because that's how the native-tls API currently works. So an API that takes a private key and a cert (chain?) makes perfect sense for my use case. \r\n\r\nI'm happy to modify this PR to some alternative API. I presume the ideal scenario is to help that thread settle on and land the new API for rust-native-tls and then repeat that API in `reqwest::ClientBuilder`?"}}
{"actor":{"display_login":"anowell"}}