Document conf module
This commit is contained in:
parent
7159215e45
commit
4f8195c472
|
|
@ -1,3 +1,4 @@
|
|||
//! Interface for processing OpenSSL configuration files.
|
||||
use ffi;
|
||||
|
||||
use cvt_p;
|
||||
|
|
@ -6,6 +7,12 @@ use error::ErrorStack;
|
|||
pub struct ConfMethod(*mut ffi::CONF_METHOD);
|
||||
|
||||
impl ConfMethod {
|
||||
/// Retrieve handle to the default OpenSSL configuration file processing function.
|
||||
///
|
||||
/// # OpenSSL Implementation Details
|
||||
///
|
||||
/// `NCONF` stands for "New Conf", as described in crypto/conf/conf_lib.c. This is
|
||||
/// a newer API than the "CONF classic" functions.
|
||||
pub fn default() -> ConfMethod {
|
||||
unsafe {
|
||||
ffi::init();
|
||||
|
|
@ -13,10 +20,12 @@ impl ConfMethod {
|
|||
}
|
||||
}
|
||||
|
||||
/// Construct from raw pointer.
|
||||
pub unsafe fn from_ptr(ptr: *mut ffi::CONF_METHOD) -> ConfMethod {
|
||||
ConfMethod(ptr)
|
||||
}
|
||||
|
||||
/// Convert to raw pointer.
|
||||
pub fn as_ptr(&self) -> *mut ffi::CONF_METHOD {
|
||||
self.0
|
||||
}
|
||||
|
|
@ -31,6 +40,15 @@ foreign_type! {
|
|||
}
|
||||
|
||||
impl Conf {
|
||||
/// Create a configuration parser.
|
||||
///
|
||||
/// # Examples
|
||||
///
|
||||
/// ```
|
||||
/// use openssl::conf::{Conf, ConfMethod};
|
||||
///
|
||||
/// let conf = Conf::new(ConfMethod::default());
|
||||
/// ```
|
||||
pub fn new(method: ConfMethod) -> Result<Conf, ErrorStack> {
|
||||
unsafe { cvt_p(ffi::NCONF_new(method.as_ptr())).map(Conf) }
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue