aboutsummaryrefslogtreecommitdiff
path: root/openssl/src
diff options
context:
space:
mode:
authorChiu Yue Chun <[email protected]>2017-10-04 00:05:30 +0800
committerChiu Yue Chun <[email protected]>2017-10-04 00:05:30 +0800
commit76ecc13cec84e495edbb500811a3a476147b1e47 (patch)
tree277ced9910a522176edb63c21f17b3fc3f4c2f52 /openssl/src
parentAdd examples and more documentation to symm (diff)
downloadrust-openssl-76ecc13cec84e495edbb500811a3a476147b1e47.tar.xz
rust-openssl-76ecc13cec84e495edbb500811a3a476147b1e47.zip
Copy example to module level
Diffstat (limited to 'openssl/src')
-rw-r--r--openssl/src/symm.rs23
1 files changed, 23 insertions, 0 deletions
diff --git a/openssl/src/symm.rs b/openssl/src/symm.rs
index 41033a16..ee1b0621 100644
--- a/openssl/src/symm.rs
+++ b/openssl/src/symm.rs
@@ -1,4 +1,27 @@
//! 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::ptr;
use libc::c_int;