Copy example to module level

This commit is contained in:
Chiu Yue Chun 2017-10-04 00:05:30 +08:00
parent 79a8ebb631
commit 76ecc13cec
1 changed files with 23 additions and 0 deletions

View File

@ -1,4 +1,27 @@
//! High level interface to certain symmetric ciphers. //! High level interface to certain symmetric ciphers.
//!
//! # Examples
//!
//! Encrypt data in AES128 CBC mode
//!
//! ```
//! use openssl::symm::{encrypt, Cipher};
//!
//! let cipher = Cipher::aes_128_cbc();
//! let data = b"Some Crypto Text";
//! let key = b"\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0A\x0B\x0C\x0D\x0E\x0F";
//! let iv = b"\x00\x01\x02\x03\x04\x05\x06\x07\x00\x01\x02\x03\x04\x05\x06\x07";
//! let ciphertext = encrypt(
//! cipher,
//! key,
//! Some(iv),
//! data).unwrap();
//!
//! assert_eq!(
//! b"\xB4\xB9\xE7\x30\xD6\xD6\xF7\xDE\x77\x3F\x1C\xFF\xB3\x3E\x44\x5A\x91\xD7\x27\x62\x87\x4D\
//! \xFB\x3C\x5E\xC4\x59\x72\x4A\xF4\x7C\xA1",
//! &ciphertext[..]);
//! ```
use std::cmp; use std::cmp;
use std::ptr; use std::ptr;
use libc::c_int; use libc::c_int;