Struct openssl::x509::X509Builder [−][src]
pub struct X509Builder(_);
Expand description
A builder used to construct an X509
.
Implementations
Creates a new builder.
Sets the notAfter constraint on the certificate.
Sets the notBefore constraint on the certificate.
Sets the version of the certificate.
Note that the version is zero-indexed; that is, a certificate corresponding to version 3 of
the X.509 standard should pass 2
to this method.
Sets the serial number of the certificate.
Sets the issuer name of the certificate.
Sets the subject name of the certificate.
When building certificates, the C
, ST
, and O
options are common when using the openssl command line tools.
The CN
field is used for the common name, such as a DNS name.
use openssl::x509::{X509, X509NameBuilder};
let mut x509_name = openssl::x509::X509NameBuilder::new().unwrap();
x509_name.append_entry_by_text("C", "US").unwrap();
x509_name.append_entry_by_text("ST", "CA").unwrap();
x509_name.append_entry_by_text("O", "Some organization").unwrap();
x509_name.append_entry_by_text("CN", "www.example.com").unwrap();
let x509_name = x509_name.build();
let mut x509 = openssl::x509::X509::builder().unwrap();
x509.set_subject_name(&x509_name).unwrap();
pub fn set_pubkey<T>(&mut self, key: &PKeyRef<T>) -> Result<(), ErrorStack> where
T: HasPublic,
pub fn set_pubkey<T>(&mut self, key: &PKeyRef<T>) -> Result<(), ErrorStack> where
T: HasPublic,
Sets the public key associated with the certificate.
pub fn x509v3_context<'a>(
&'a self,
issuer: Option<&'a X509Ref>,
conf: Option<&'a ConfRef>
) -> X509v3Context<'a>
pub fn x509v3_context<'a>(
&'a self,
issuer: Option<&'a X509Ref>,
conf: Option<&'a ConfRef>
) -> X509v3Context<'a>
Returns a context object which is needed to create certain X509 extension values.
Set issuer
to None
if the certificate will be self-signed.
Adds an X509 extension value to the certificate.
This works just as append_extension
except it takes ownership of the X509Extension
.
Adds an X509 extension value to the certificate.
This corresponds to X509_add_ext
.
pub fn sign<T>(
&mut self,
key: &PKeyRef<T>,
hash: MessageDigest
) -> Result<(), ErrorStack> where
T: HasPrivate,
pub fn sign<T>(
&mut self,
key: &PKeyRef<T>,
hash: MessageDigest
) -> Result<(), ErrorStack> where
T: HasPrivate,
Signs the certificate with a private key.