libsystemd_sys/
id128.rs

1use super::{c_char, c_int};
2
3/// Note: this is marked `Copy` because the libsystemd apis pass it by value without implying an
4/// ownership transfer.
5#[repr(C)]
6#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord)]
7pub struct sd_id128_t {
8    pub bytes: [u8; 16],
9}
10
11pub const SD_ID128_STRING_MAX: usize = 33;
12
13extern "C" {
14    // s: &[c_char;33]
15    pub fn sd_id128_to_string(id: sd_id128_t, s: *mut c_char) -> *mut c_char;
16
17    // s: &[c_char;33]
18    pub fn sd_id128_from_string(s: *const c_char, ret: *mut sd_id128_t) -> c_int;
19
20    pub fn sd_id128_randomize(ret: *mut sd_id128_t) -> c_int;
21    pub fn sd_id128_get_machine(ret: *mut sd_id128_t) -> c_int;
22    pub fn sd_id128_get_machine_app_specific(app_id: sd_id128_t, ret: *mut sd_id128_t) -> c_int;
23    pub fn sd_id128_get_boot(ret: *mut sd_id128_t) -> c_int;
24    pub fn sd_id128_get_boot_app_specific(app_id: sd_id128_t, ret: *mut sd_id128_t) -> c_int;
25}