aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSteven Fackler <[email protected]>2013-10-04 20:46:27 -0700
committerSteven Fackler <[email protected]>2013-10-04 20:46:27 -0700
commit6afafafe60123be9540ee02109b42d1c291ab1af (patch)
treeab66d128da7c95b7e075b5a92828ff55aa1da6c7 /src
parentInitial commit (diff)
downloadrust-openssl-6afafafe60123be9540ee02109b42d1c291ab1af.tar.xz
rust-openssl-6afafafe60123be9540ee02109b42d1c291ab1af.zip
Basic library initialization
Diffstat (limited to 'src')
-rw-r--r--src/ssl/lib.rs18
-rw-r--r--src/ssl/test.rs6
2 files changed, 24 insertions, 0 deletions
diff --git a/src/ssl/lib.rs b/src/ssl/lib.rs
new file mode 100644
index 00000000..d52a0cfa
--- /dev/null
+++ b/src/ssl/lib.rs
@@ -0,0 +1,18 @@
+
+mod ffi {
+ use std::libc::{c_int};
+
+ #[link_args = "-lssl"]
+ extern "C" {
+ fn SSL_library_init() -> c_int;
+ fn SSL_load_error_strings();
+ }
+}
+
+#[fixed_stack_segment]
+pub fn init() {
+ unsafe {
+ ffi::SSL_library_init();
+ ffi::SSL_load_error_strings();
+ }
+}
diff --git a/src/ssl/test.rs b/src/ssl/test.rs
new file mode 100644
index 00000000..798f07f3
--- /dev/null
+++ b/src/ssl/test.rs
@@ -0,0 +1,6 @@
+extern mod ssl;
+
+#[test]
+fn test_init_works() {
+ ssl::init();
+}