Fix x509 doc examples
This commit is contained in:
parent
1a40795886
commit
a4c9dd4af3
|
|
@ -11,17 +11,30 @@
|
||||||
//!
|
//!
|
||||||
//! ```rust
|
//! ```rust
|
||||||
//!
|
//!
|
||||||
//! extern crate openssl;
|
//! extern crate openssl;
|
||||||
//!
|
//!
|
||||||
//! use openssl::x509::X509;
|
//! use openssl::x509::{X509, X509Name};
|
||||||
|
//! use openssl::pkey::PKey;
|
||||||
|
//! use openssl::hash::MessageDigest;
|
||||||
|
//! use openssl::rsa::Rsa;
|
||||||
|
//! use openssl::nid::Nid;
|
||||||
//!
|
//!
|
||||||
//! fn main() {
|
//! fn main() {
|
||||||
//! let cert = include_bytes!("cert_with_alt_name.pem");
|
//! let rsa = Rsa::generate(2048).unwrap();
|
||||||
//! let cert = X509::from_pem(cert).unwrap();
|
//! let pkey = PKey::from_rsa(rsa).unwrap();
|
||||||
//!
|
//!
|
||||||
//! let subject_alt_names = cert.subject_alt_names().unwrap();
|
//! let mut name = X509Name::builder().unwrap();
|
||||||
//! let mut san_iter = subject_alt_names.iter();
|
//! name.append_entry_by_nid(Nid::COMMONNAME, "foobar.com").unwrap();
|
||||||
//! println!("{:?}", san_iter.next().unwrap().dnsname().unwrap());
|
//! let name = name.build();
|
||||||
|
//!
|
||||||
|
//! let mut builder = X509::builder().unwrap();
|
||||||
|
//! builder.set_version(2).unwrap();
|
||||||
|
//! builder.set_subject_name(&name).unwrap();
|
||||||
|
//! builder.set_issuer_name(&name).unwrap();
|
||||||
|
//! builder.set_pubkey(&pkey).unwrap();
|
||||||
|
//! builder.sign(&pkey, MessageDigest::sha256()).unwrap();
|
||||||
|
//!
|
||||||
|
//! let certificate: X509 = builder.build();
|
||||||
//! }
|
//! }
|
||||||
//! ```
|
//! ```
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -6,21 +6,40 @@
|
||||||
//! # Example
|
//! # Example
|
||||||
//!
|
//!
|
||||||
//! ```rust
|
//! ```rust
|
||||||
|
//!
|
||||||
//! extern crate openssl;
|
//! extern crate openssl;
|
||||||
//!
|
//!
|
||||||
//! use openssl::x509::X509;
|
|
||||||
//! use openssl::x509::store::{X509StoreBuilder, X509Store};
|
//! use openssl::x509::store::{X509StoreBuilder, X509Store};
|
||||||
|
//! use openssl::x509::{X509, X509Name};
|
||||||
|
//! use openssl::pkey::PKey;
|
||||||
|
//! use openssl::hash::MessageDigest;
|
||||||
|
//! use openssl::rsa::Rsa;
|
||||||
|
//! use openssl::nid::Nid;
|
||||||
//!
|
//!
|
||||||
//! fn main() {
|
//! fn main() {
|
||||||
//! let cert = include_bytes!("cert.pem");
|
//! let rsa = Rsa::generate(2048).unwrap();
|
||||||
//! let cert = X509::from_pem(cert).ok().expect("Failed to load PEM");
|
//! let pkey = PKey::from_rsa(rsa).unwrap();
|
||||||
|
//!
|
||||||
|
//! let mut name = X509Name::builder().unwrap();
|
||||||
|
//! name.append_entry_by_nid(Nid::COMMONNAME, "foobar.com").unwrap();
|
||||||
|
//! let name = name.build();
|
||||||
|
//!
|
||||||
|
//! let mut builder = X509::builder().unwrap();
|
||||||
|
//! builder.set_version(2).unwrap();
|
||||||
|
//! builder.set_subject_name(&name).unwrap();
|
||||||
|
//! builder.set_issuer_name(&name).unwrap();
|
||||||
|
//! builder.set_pubkey(&pkey).unwrap();
|
||||||
|
//! builder.sign(&pkey, MessageDigest::sha256()).unwrap();
|
||||||
|
//!
|
||||||
|
//! let certificate: X509 = builder.build();
|
||||||
//!
|
//!
|
||||||
//! let mut builder = X509StoreBuilder::new().unwrap();
|
//! let mut builder = X509StoreBuilder::new().unwrap();
|
||||||
//! let _ = builder.add_cert(cert);
|
//! let _ = builder.add_cert(certificate);
|
||||||
//!
|
//!
|
||||||
//! let store: X509Store = builder.build();
|
//! let store: X509Store = builder.build();
|
||||||
//! }
|
//! }
|
||||||
//! ```
|
//! ```
|
||||||
|
|
||||||
use ffi;
|
use ffi;
|
||||||
use foreign_types::ForeignTypeRef;
|
use foreign_types::ForeignTypeRef;
|
||||||
use std::mem;
|
use std::mem;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue