From 3ed9202a0089e7b599214552c807626c678e1aea Mon Sep 17 00:00:00 2001 From: Norman Maurer Date: Mon, 17 May 2021 18:57:35 +0200 Subject: ffi: expose source / destination connection IDs Motivation: We should expose functions to access the source and destination ids via the c API as well Modifications: Expose functions in the C API Result: Be able to access the ids of a connection --- src/ffi.rs | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'src/ffi.rs') diff --git a/src/ffi.rs b/src/ffi.rs index 1db9d05d..fda2a37a 100644 --- a/src/ffi.rs +++ b/src/ffi.rs @@ -766,6 +766,27 @@ pub extern fn quiche_conn_trace_id( *out_len = trace_id.len(); } +#[no_mangle] +pub extern fn quiche_conn_source_id( + conn: &mut Connection, out: &mut *const u8, out_len: &mut size_t, +) { + let conn_id = conn.source_id(); + let id = conn_id.as_ref(); + *out = id.as_ptr(); + *out_len = id.len(); +} + +#[no_mangle] +pub extern fn quiche_conn_destination_id( + conn: &mut Connection, out: &mut *const u8, out_len: &mut size_t, +) { + let conn_id = conn.destination_id(); + let id = conn_id.as_ref(); + + *out = id.as_ptr(); + *out_len = id.len(); +} + #[no_mangle] pub extern fn quiche_conn_application_proto( conn: &mut Connection, out: &mut *const u8, out_len: &mut size_t, -- cgit v1.2.3