diff options
| author | Emīls <emils@mullvad.net> | 2024-12-09 10:59:51 +0100 |
|---|---|---|
| committer | Emīls <emils@mullvad.net> | 2025-01-02 10:29:05 +0100 |
| commit | 3093408a057020fcd912976b892fbb6bc26e6293 (patch) | |
| tree | 56ac01255fdc7f0c29aa6a8c5a8cdd863ff4f496 /mullvad-api/src/ffi/error.rs | |
| parent | 58efb1004f8ca762fe6aa95f541c6dc329ed790e (diff) | |
| download | mullvadvpn-3093408a057020fcd912976b892fbb6bc26e6293.tar.xz mullvadvpn-3093408a057020fcd912976b892fbb6bc26e6293.zip | |
Remove global API endpoint
Diffstat (limited to 'mullvad-api/src/ffi/error.rs')
| -rw-r--r-- | mullvad-api/src/ffi/error.rs | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/mullvad-api/src/ffi/error.rs b/mullvad-api/src/ffi/error.rs index 539a6c23a0..66ffc01220 100644 --- a/mullvad-api/src/ffi/error.rs +++ b/mullvad-api/src/ffi/error.rs @@ -13,6 +13,7 @@ pub enum MullvadApiErrorKind { /// MullvadApiErrorKind contains a description and an error kind. If the error kind is /// `MullvadApiErrorKind` is NoError, the pointer will be nil. +#[derive(Debug)] #[repr(C)] pub struct MullvadApiError { description: *mut libc::c_char, @@ -47,6 +48,13 @@ impl MullvadApiError { } } + pub fn unwrap(&self) { + if !matches!(self.kind, MullvadApiErrorKind::NoError) { + let desc = unsafe { std::ffi::CStr::from_ptr(self.description) }; + panic!("API ERROR - {:?} - {}", self.kind, desc.to_str().unwrap()); + } + } + pub fn drop(self) { if self.description.is_null() { return; |
