aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteven Fackler <[email protected]>2016-11-05 13:57:05 -0700
committerSteven Fackler <[email protected]>2016-11-05 13:57:05 -0700
commit803725891331daf1839ea88e3035ae151e59cc2e (patch)
treedba8b7a03e206c8693183e65015358fbd11cdfe8
parentAdd Stack::pop (diff)
downloadrust-openssl-803725891331daf1839ea88e3035ae151e59cc2e.tar.xz
rust-openssl-803725891331daf1839ea88e3035ae151e59cc2e.zip
Return a Stack in Pkcs12
-rw-r--r--openssl/src/pkcs12.rs4
-rw-r--r--openssl/src/x509/mod.rs6
2 files changed, 8 insertions, 2 deletions
diff --git a/openssl/src/pkcs12.rs b/openssl/src/pkcs12.rs
index 6d7e8ba7..8c884e7f 100644
--- a/openssl/src/pkcs12.rs
+++ b/openssl/src/pkcs12.rs
@@ -49,7 +49,7 @@ impl Pkcs12 {
let pkey = PKey::from_ptr(pkey);
let cert = X509::from_ptr(cert);
- let chain = Stack::from_ptr(chain).into_iter().collect();
+ let chain = Stack::from_ptr(chain);
Ok(ParsedPkcs12 {
pkey: pkey,
@@ -63,7 +63,7 @@ impl Pkcs12 {
pub struct ParsedPkcs12 {
pub pkey: PKey,
pub cert: X509,
- pub chain: Vec<X509>,
+ pub chain: Stack<X509>,
}
#[cfg(test)]
diff --git a/openssl/src/x509/mod.rs b/openssl/src/x509/mod.rs
index ec17cbe2..eb517f80 100644
--- a/openssl/src/x509/mod.rs
+++ b/openssl/src/x509/mod.rs
@@ -480,6 +480,12 @@ impl AsRef<X509Ref> for X509 {
}
}
+impl AsRef<X509Ref> for X509Ref {
+ fn as_ref(&self) -> &X509Ref {
+ self
+ }
+}
+
impl Borrow<X509Ref> for X509 {
fn borrow(&self) -> &X509Ref {
&*self