diff options
author | Justus Winter <justus@sequoia-pgp.org> | 2019-01-08 18:28:43 +0100 |
---|---|---|
committer | Justus Winter <justus@sequoia-pgp.org> | 2019-01-09 12:47:41 +0100 |
commit | 2cad45090267d6936d1f107720058b7a761f8f00 (patch) | |
tree | 72f169b2861ec5ebf5423d23890f93dbfe65b1dd /ffi/src/net.rs | |
parent | 3f89bf4477018c5bd75b78253c1fed68baa4e424 (diff) |
ffi: Introduce macro for passing references from C.
Diffstat (limited to 'ffi/src/net.rs')
-rw-r--r-- | ffi/src/net.rs | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/ffi/src/net.rs b/ffi/src/net.rs index bd98bca1..25e1313a 100644 --- a/ffi/src/net.rs +++ b/ffi/src/net.rs @@ -51,7 +51,7 @@ use super::core::Context; #[no_mangle] pub extern "system" fn sq_keyserver_new(ctx: Option<&mut Context>, uri: *const c_char) -> *mut KeyServer { - let ctx = ctx.expect("Context is NULL"); + let ctx = ffi_param_ref!(ctx); let uri = unsafe { if uri.is_null() { None } else { Some(CStr::from_ptr(uri)) } }; @@ -71,7 +71,7 @@ pub extern "system" fn sq_keyserver_with_cert(ctx: Option<&mut Context>, uri: *const c_char, cert: *const uint8_t, len: size_t) -> *mut KeyServer { - let ctx = ctx.expect("Context is NULL"); + let ctx = ffi_param_ref!(ctx); let uri = unsafe { if uri.is_null() { None } else { Some(CStr::from_ptr(uri)) } }; @@ -101,7 +101,7 @@ pub extern "system" fn sq_keyserver_with_cert(ctx: Option<&mut Context>, #[no_mangle] pub extern "system" fn sq_keyserver_sks_pool(ctx: Option<&mut Context>) -> *mut KeyServer { - let ctx = ctx.expect("Context is NULL"); + let ctx = ffi_param_ref!(ctx); fry_box!(ctx, KeyServer::sks_pool(&ctx.c)) } @@ -118,9 +118,9 @@ pub extern "system" fn sq_keyserver_free(ks: *mut KeyServer) { pub extern "system" fn sq_keyserver_get(ctx: Option<&mut Context>, ks: Option<&mut KeyServer>, id: Option<&KeyID>) -> *mut TPK { - let ctx = ctx.expect("Context is NULL"); - let ks = ks.expect("KeyServer is NULL"); - let id = id.expect("KeyID is NULL"); + let ctx = ffi_param_ref!(ctx); + let ks = ffi_param_ref!(ks); + let id = ffi_param_ref!(id); fry_box!(ctx, ks.get(&id)) } @@ -133,9 +133,9 @@ pub extern "system" fn sq_keyserver_send(ctx: Option<&mut Context>, ks: Option<&mut KeyServer>, tpk: Option<&TPK>) -> Status { - let ctx = ctx.expect("Context is NULL"); - let ks = ks.expect("KeyServer is NULL"); - let tpk = tpk.expect("TPK is NULL"); + let ctx = ffi_param_ref!(ctx); + let ks = ffi_param_ref!(ks); + let tpk = ffi_param_ref!(tpk); fry_status!(ctx, ks.send(tpk)) } |