pub const DEFAULT_EXTERNAL_BROWSER: &[u8; 5] = b"open\0";
pub const DEFAULT_VPNCSCRIPT: &[u8; 21] = b"./vpnc-script-win.js\0";
pub const ENABLE_NLS: u32 = 1;
pub const HAVE_ASPRINTF: u32 = 1;
pub const HAVE_BIO_METH_FREE: u32 = 1;
pub const HAVE_BUILTIN_CLZ: u32 = 1;
pub const HAVE_DTLS: u32 = 1;
pub const HAVE_DTLS12: u32 = 1;
pub const HAVE_ENGINE: u32 = 1;
pub const HAVE_ESP: u32 = 1;
pub const HAVE_GETENV_S_DECL: u32 = 1;
pub const HAVE_HPKE_SUPPORT: u32 = 1;
pub const HAVE_INTTYPES_H: u32 = 1;
pub const HAVE_JSON: u32 = 1;
pub const HAVE_LOCALTIME_S: u32 = 1;
pub const HAVE_PUTENV_S_DECL: u32 = 1;
pub const HAVE_SSL_CIPHER_FIND: u32 = 1;
pub const HAVE_SSL_CTX_PROTOVER: u32 = 1;
pub const HAVE_STDINT_H: u32 = 1;
pub const HAVE_STDIO_H: u32 = 1;
pub const HAVE_STDLIB_H: u32 = 1;
pub const HAVE_STRINGS_H: u32 = 1;
pub const HAVE_STRING_H: u32 = 1;
pub const HAVE_SYS_STAT_H: u32 = 1;
pub const HAVE_SYS_TYPES_H: u32 = 1;
pub const HAVE_UNISTD_H: u32 = 1;
pub const HAVE_VASPRINTF: u32 = 1;
pub const LT_OBJDIR: &[u8; 7] = b".libs/\0";
pub const MINGW_HAS_SECURE_API: u32 = 1;
pub const OPENCONNECT_OPENSSL: u32 = 1;
pub const OPENSSL_SUPPRESS_DEPRECATED: u32 = 1;
pub const PACKAGE: &[u8; 12] = b"openconnect\0";
pub const PACKAGE_BUGREPORT: &[u8; 1] = b"\0";
pub const PACKAGE_NAME: &[u8; 12] = b"openconnect\0";
pub const PACKAGE_STRING: &[u8; 17] = b"openconnect 9.12\0";
pub const PACKAGE_TARNAME: &[u8; 12] = b"openconnect\0";
pub const PACKAGE_URL: &[u8; 1] = b"\0";
pub const PACKAGE_VERSION: &[u8; 5] = b"9.12\0";
pub const STDC_HEADERS: u32 = 1;
pub const VERSION: &[u8; 5] = b"9.12\0";
pub const _GNU_SOURCE: u32 = 1;
pub const _WIN32_WINNT: u32 = 1536;
pub const __MINGW64_VERSION_MAJOR: u32 = 12;
pub const __MINGW64_VERSION_MINOR: u32 = 0;
pub const __MINGW64_VERSION_BUGFIX: u32 = 0;
pub const __MINGW64_VERSION_RC: u32 = 0;
pub const __MINGW64_VERSION_STATE: &[u8; 6] = b"alpha\0";
pub const __MINGW32_MAJOR_VERSION: u32 = 3;
pub const __MINGW32_MINOR_VERSION: u32 = 11;
pub const _M_AMD64: u32 = 100;
pub const _M_X64: u32 = 100;
pub const __: u32 = 1;
pub const __MINGW_USE_UNDERSCORE_PREFIX: u32 = 0;
pub const __MINGW_HAVE_ANSI_C99_PRINTF: u32 = 1;
pub const __MINGW_HAVE_WIDE_C99_PRINTF: u32 = 1;
pub const __MINGW_HAVE_ANSI_C99_SCANF: u32 = 1;
pub const __MINGW_HAVE_WIDE_C99_SCANF: u32 = 1;
pub const __MINGW_SEC_WARN_STR : & [u8 ; 92] = b"This function or variable may be unsafe, use _CRT_SECURE_NO_WARNINGS to disable deprecation\0" ;
pub const __MINGW_MSVC2005_DEPREC_STR : & [u8 ; 117] = b"This POSIX function is deprecated beginning in Visual C++ 2005, use _CRT_NONSTDC_NO_DEPRECATE to disable deprecation\0" ;
pub const __MINGW_FORTIFY_LEVEL: u32 = 0;
pub const __MINGW_FORTIFY_VA_ARG: u32 = 0;
pub const _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES: u32 = 0;
pub const _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY: u32 = 0;
pub const _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES: u32 = 0;
pub const _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT: u32 = 0;
pub const _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY: u32 = 0;
pub const __USE_CRTIMP: u32 = 1;
pub const USE___UUIDOF: u32 = 0;
pub const __CRT__NO_INLINE: u32 = 1;
pub const __MSVCRT_VERSION__: u32 = 1792;
pub const __STDC_SECURE_LIB__: u32 = 200411;
pub const __GOT_SECURE_LIB__: u32 = 200411;
pub const MINGW_HAS_DDK_H: u32 = 1;
pub const _CRT_PACKING: u32 = 8;
pub const _SECURECRT_FILL_BUFFER_PATTERN: u32 = 253;
pub const _ARGMAX: u32 = 100;
pub const __USE_MINGW_ANSI_STDIO: u32 = 1;
pub const INT8_MIN: i32 = -128;
pub const INT16_MIN: i32 = -32768;
pub const INT32_MIN: i32 = -2147483648;
pub const INT64_MIN: i64 = -9223372036854775808;
pub const INT8_MAX: u32 = 127;
pub const INT16_MAX: u32 = 32767;
pub const INT32_MAX: u32 = 2147483647;
pub const INT64_MAX: u64 = 9223372036854775807;
pub const UINT8_MAX: u32 = 255;
pub const UINT16_MAX: u32 = 65535;
pub const UINT32_MAX: u32 = 4294967295;
pub const UINT64_MAX: i32 = -1;
pub const INT_LEAST8_MIN: i32 = -128;
pub const INT_LEAST16_MIN: i32 = -32768;
pub const INT_LEAST32_MIN: i32 = -2147483648;
pub const INT_LEAST64_MIN: i64 = -9223372036854775808;
pub const INT_LEAST8_MAX: u32 = 127;
pub const INT_LEAST16_MAX: u32 = 32767;
pub const INT_LEAST32_MAX: u32 = 2147483647;
pub const INT_LEAST64_MAX: u64 = 9223372036854775807;
pub const UINT_LEAST8_MAX: u32 = 255;
pub const UINT_LEAST16_MAX: u32 = 65535;
pub const UINT_LEAST32_MAX: u32 = 4294967295;
pub const UINT_LEAST64_MAX: i32 = -1;
pub const INT_FAST8_MIN: i32 = -128;
pub const INT_FAST16_MIN: i32 = -32768;
pub const INT_FAST32_MIN: i32 = -2147483648;
pub const INT_FAST64_MIN: i64 = -9223372036854775808;
pub const INT_FAST8_MAX: u32 = 127;
pub const INT_FAST16_MAX: u32 = 32767;
pub const INT_FAST32_MAX: u32 = 2147483647;
pub const INT_FAST64_MAX: u64 = 9223372036854775807;
pub const UINT_FAST8_MAX: u32 = 255;
pub const UINT_FAST16_MAX: u32 = 65535;
pub const UINT_FAST32_MAX: u32 = 4294967295;
pub const UINT_FAST64_MAX: i32 = -1;
pub const INTPTR_MIN: i64 = -9223372036854775808;
pub const INTPTR_MAX: u64 = 9223372036854775807;
pub const UINTPTR_MAX: i32 = -1;
pub const INTMAX_MIN: i64 = -9223372036854775808;
pub const INTMAX_MAX: u64 = 9223372036854775807;
pub const UINTMAX_MAX: i32 = -1;
pub const PTRDIFF_MIN: i64 = -9223372036854775808;
pub const PTRDIFF_MAX: u64 = 9223372036854775807;
pub const SIG_ATOMIC_MIN: i32 = -2147483648;
pub const SIG_ATOMIC_MAX: u32 = 2147483647;
pub const SIZE_MAX: i32 = -1;
pub const WCHAR_MIN: u32 = 0;
pub const WCHAR_MAX: u32 = 65535;
pub const WINT_MIN: u32 = 0;
pub const WINT_MAX: u32 = 65535;
pub const OPENCONNECT_API_VERSION_MAJOR: u32 = 5;
pub const OPENCONNECT_API_VERSION_MINOR: u32 = 9;
pub const OC_PROTO_PROXY: u32 = 1;
pub const OC_PROTO_CSD: u32 = 2;
pub const OC_PROTO_AUTH_CERT: u32 = 4;
pub const OC_PROTO_AUTH_OTP: u32 = 8;
pub const OC_PROTO_AUTH_STOKEN: u32 = 16;
pub const OC_PROTO_PERIODIC_TROJAN: u32 = 32;
pub const OC_PROTO_HIDDEN: u32 = 64;
pub const OC_PROTO_AUTH_MCA: u32 = 128;
pub const OC_FORM_OPT_TEXT: u32 = 1;
pub const OC_FORM_OPT_PASSWORD: u32 = 2;
pub const OC_FORM_OPT_SELECT: u32 = 3;
pub const OC_FORM_OPT_HIDDEN: u32 = 4;
pub const OC_FORM_OPT_TOKEN: u32 = 5;
pub const OC_FORM_OPT_SSO_TOKEN: u32 = 6;
pub const OC_FORM_OPT_SSO_USER: u32 = 7;
pub const OC_FORM_RESULT_ERR: i32 = -1;
pub const OC_FORM_RESULT_OK: u32 = 0;
pub const OC_FORM_RESULT_CANCELLED: u32 = 1;
pub const OC_FORM_RESULT_NEWGROUP: u32 = 2;
pub const OC_FORM_OPT_IGNORE: u32 = 1;
pub const OC_FORM_OPT_NUMERIC: u32 = 2;
pub const PRG_ERR: u32 = 0;
pub const PRG_INFO: u32 = 1;
pub const PRG_DEBUG: u32 = 2;
pub const PRG_TRACE: u32 = 3;
pub const OC_CMD_CANCEL: u8 = 120u8;
pub const OC_CMD_PAUSE: u8 = 112u8;
pub const OC_CMD_DETACH: u8 = 100u8;
pub const OC_CMD_STATS: u8 = 115u8;
pub const RECONNECT_INTERVAL_MIN: u32 = 10;
pub const RECONNECT_INTERVAL_MAX: u32 = 100;
pub type __gnuc_va_list = __builtin_va_list;
pub type va_list = __gnuc_va_list;
extern "C" {
pub fn __mingw_get_crt_info() -> *const ::std::os::raw::c_char;
}
pub type rsize_t = usize;
pub type wchar_t = ::std::os::raw::c_ushort;
pub type wint_t = ::std::os::raw::c_ushort;
pub type wctype_t = ::std::os::raw::c_ushort;
pub type errno_t = ::std::os::raw::c_int;
pub type __time32_t = ::std::os::raw::c_long;
pub type __time64_t = ::std::os::raw::c_longlong;
pub type time_t = __time64_t;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct threadmbcinfostruct {
_unused: [u8; 0],
}
pub type pthreadlocinfo = *mut threadlocaleinfostruct;
pub type pthreadmbcinfo = *mut threadmbcinfostruct;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __lc_time_data {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct localeinfo_struct {
pub locinfo: pthreadlocinfo,
pub mbcinfo: pthreadmbcinfo,
}
#[test]
fn bindgen_test_layout_localeinfo_struct() {
const UNINIT: ::std::mem::MaybeUninit<localeinfo_struct> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<localeinfo_struct>(),
16usize,
concat!("Size of: ", stringify!(localeinfo_struct))
);
assert_eq!(
::std::mem::align_of::<localeinfo_struct>(),
8usize,
concat!("Alignment of ", stringify!(localeinfo_struct))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).locinfo) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(localeinfo_struct),
"::",
stringify!(locinfo)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).mbcinfo) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(localeinfo_struct),
"::",
stringify!(mbcinfo)
)
);
}
pub type _locale_tstruct = localeinfo_struct;
pub type _locale_t = *mut localeinfo_struct;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct tagLC_ID {
pub wLanguage: ::std::os::raw::c_ushort,
pub wCountry: ::std::os::raw::c_ushort,
pub wCodePage: ::std::os::raw::c_ushort,
}
#[test]
fn bindgen_test_layout_tagLC_ID() {
const UNINIT: ::std::mem::MaybeUninit<tagLC_ID> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<tagLC_ID>(),
6usize,
concat!("Size of: ", stringify!(tagLC_ID))
);
assert_eq!(
::std::mem::align_of::<tagLC_ID>(),
2usize,
concat!("Alignment of ", stringify!(tagLC_ID))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).wLanguage) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(tagLC_ID),
"::",
stringify!(wLanguage)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).wCountry) as usize - ptr as usize },
2usize,
concat!(
"Offset of field: ",
stringify!(tagLC_ID),
"::",
stringify!(wCountry)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).wCodePage) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(tagLC_ID),
"::",
stringify!(wCodePage)
)
);
}
pub type LC_ID = tagLC_ID;
pub type LPLC_ID = *mut tagLC_ID;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct threadlocaleinfostruct {
pub refcount: ::std::os::raw::c_int,
pub lc_codepage: ::std::os::raw::c_uint,
pub lc_collate_cp: ::std::os::raw::c_uint,
pub lc_handle: [::std::os::raw::c_ulong; 6usize],
pub lc_id: [LC_ID; 6usize],
pub lc_category: [threadlocaleinfostruct__bindgen_ty_1; 6usize],
pub lc_clike: ::std::os::raw::c_int,
pub mb_cur_max: ::std::os::raw::c_int,
pub lconv_intl_refcount: *mut ::std::os::raw::c_int,
pub lconv_num_refcount: *mut ::std::os::raw::c_int,
pub lconv_mon_refcount: *mut ::std::os::raw::c_int,
pub lconv: *mut lconv,
pub ctype1_refcount: *mut ::std::os::raw::c_int,
pub ctype1: *mut ::std::os::raw::c_ushort,
pub pctype: *const ::std::os::raw::c_ushort,
pub pclmap: *const ::std::os::raw::c_uchar,
pub pcumap: *const ::std::os::raw::c_uchar,
pub lc_time_curr: *mut __lc_time_data,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct threadlocaleinfostruct__bindgen_ty_1 {
pub locale: *mut ::std::os::raw::c_char,
pub wlocale: *mut wchar_t,
pub refcount: *mut ::std::os::raw::c_int,
pub wrefcount: *mut ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout_threadlocaleinfostruct__bindgen_ty_1() {
const UNINIT: ::std::mem::MaybeUninit<threadlocaleinfostruct__bindgen_ty_1> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<threadlocaleinfostruct__bindgen_ty_1>(),
32usize,
concat!(
"Size of: ",
stringify!(threadlocaleinfostruct__bindgen_ty_1)
)
);
assert_eq!(
::std::mem::align_of::<threadlocaleinfostruct__bindgen_ty_1>(),
8usize,
concat!(
"Alignment of ",
stringify!(threadlocaleinfostruct__bindgen_ty_1)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).locale) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(threadlocaleinfostruct__bindgen_ty_1),
"::",
stringify!(locale)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).wlocale) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(threadlocaleinfostruct__bindgen_ty_1),
"::",
stringify!(wlocale)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).refcount) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(threadlocaleinfostruct__bindgen_ty_1),
"::",
stringify!(refcount)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).wrefcount) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(threadlocaleinfostruct__bindgen_ty_1),
"::",
stringify!(wrefcount)
)
);
}
#[test]
fn bindgen_test_layout_threadlocaleinfostruct() {
const UNINIT: ::std::mem::MaybeUninit<threadlocaleinfostruct> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<threadlocaleinfostruct>(),
352usize,
concat!("Size of: ", stringify!(threadlocaleinfostruct))
);
assert_eq!(
::std::mem::align_of::<threadlocaleinfostruct>(),
8usize,
concat!("Alignment of ", stringify!(threadlocaleinfostruct))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).refcount) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(threadlocaleinfostruct),
"::",
stringify!(refcount)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).lc_codepage) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(threadlocaleinfostruct),
"::",
stringify!(lc_codepage)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).lc_collate_cp) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(threadlocaleinfostruct),
"::",
stringify!(lc_collate_cp)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).lc_handle) as usize - ptr as usize },
12usize,
concat!(
"Offset of field: ",
stringify!(threadlocaleinfostruct),
"::",
stringify!(lc_handle)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).lc_id) as usize - ptr as usize },
36usize,
concat!(
"Offset of field: ",
stringify!(threadlocaleinfostruct),
"::",
stringify!(lc_id)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).lc_category) as usize - ptr as usize },
72usize,
concat!(
"Offset of field: ",
stringify!(threadlocaleinfostruct),
"::",
stringify!(lc_category)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).lc_clike) as usize - ptr as usize },
264usize,
concat!(
"Offset of field: ",
stringify!(threadlocaleinfostruct),
"::",
stringify!(lc_clike)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).mb_cur_max) as usize - ptr as usize },
268usize,
concat!(
"Offset of field: ",
stringify!(threadlocaleinfostruct),
"::",
stringify!(mb_cur_max)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).lconv_intl_refcount) as usize - ptr as usize },
272usize,
concat!(
"Offset of field: ",
stringify!(threadlocaleinfostruct),
"::",
stringify!(lconv_intl_refcount)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).lconv_num_refcount) as usize - ptr as usize },
280usize,
concat!(
"Offset of field: ",
stringify!(threadlocaleinfostruct),
"::",
stringify!(lconv_num_refcount)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).lconv_mon_refcount) as usize - ptr as usize },
288usize,
concat!(
"Offset of field: ",
stringify!(threadlocaleinfostruct),
"::",
stringify!(lconv_mon_refcount)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).lconv) as usize - ptr as usize },
296usize,
concat!(
"Offset of field: ",
stringify!(threadlocaleinfostruct),
"::",
stringify!(lconv)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ctype1_refcount) as usize - ptr as usize },
304usize,
concat!(
"Offset of field: ",
stringify!(threadlocaleinfostruct),
"::",
stringify!(ctype1_refcount)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).ctype1) as usize - ptr as usize },
312usize,
concat!(
"Offset of field: ",
stringify!(threadlocaleinfostruct),
"::",
stringify!(ctype1)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).pctype) as usize - ptr as usize },
320usize,
concat!(
"Offset of field: ",
stringify!(threadlocaleinfostruct),
"::",
stringify!(pctype)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).pclmap) as usize - ptr as usize },
328usize,
concat!(
"Offset of field: ",
stringify!(threadlocaleinfostruct),
"::",
stringify!(pclmap)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).pcumap) as usize - ptr as usize },
336usize,
concat!(
"Offset of field: ",
stringify!(threadlocaleinfostruct),
"::",
stringify!(pcumap)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).lc_time_curr) as usize - ptr as usize },
344usize,
concat!(
"Offset of field: ",
stringify!(threadlocaleinfostruct),
"::",
stringify!(lc_time_curr)
)
);
}
pub type threadlocinfo = threadlocaleinfostruct;
pub type _ino_t = ::std::os::raw::c_ushort;
pub type ino_t = ::std::os::raw::c_ushort;
pub type _dev_t = ::std::os::raw::c_uint;
pub type dev_t = ::std::os::raw::c_uint;
pub type _pid_t = ::std::os::raw::c_longlong;
pub type pid_t = _pid_t;
pub type _mode_t = ::std::os::raw::c_ushort;
pub type mode_t = _mode_t;
pub type _off_t = ::std::os::raw::c_long;
pub type off32_t = ::std::os::raw::c_long;
pub type _off64_t = ::std::os::raw::c_longlong;
pub type off64_t = ::std::os::raw::c_longlong;
pub type off_t = off32_t;
pub type useconds_t = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct timespec {
pub tv_sec: time_t,
pub tv_nsec: ::std::os::raw::c_long,
}
#[test]
fn bindgen_test_layout_timespec() {
const UNINIT: ::std::mem::MaybeUninit<timespec> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<timespec>(),
16usize,
concat!("Size of: ", stringify!(timespec))
);
assert_eq!(
::std::mem::align_of::<timespec>(),
8usize,
concat!("Alignment of ", stringify!(timespec))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).tv_sec) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(timespec),
"::",
stringify!(tv_sec)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).tv_nsec) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(timespec),
"::",
stringify!(tv_nsec)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct itimerspec {
pub it_interval: timespec,
pub it_value: timespec,
}
#[test]
fn bindgen_test_layout_itimerspec() {
const UNINIT: ::std::mem::MaybeUninit<itimerspec> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<itimerspec>(),
32usize,
concat!("Size of: ", stringify!(itimerspec))
);
assert_eq!(
::std::mem::align_of::<itimerspec>(),
8usize,
concat!("Alignment of ", stringify!(itimerspec))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).it_interval) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(itimerspec),
"::",
stringify!(it_interval)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).it_value) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(itimerspec),
"::",
stringify!(it_value)
)
);
}
pub type _sigset_t = ::std::os::raw::c_ulonglong;
pub type int_least8_t = ::std::os::raw::c_schar;
pub type uint_least8_t = ::std::os::raw::c_uchar;
pub type int_least16_t = ::std::os::raw::c_short;
pub type uint_least16_t = ::std::os::raw::c_ushort;
pub type int_least32_t = ::std::os::raw::c_int;
pub type uint_least32_t = ::std::os::raw::c_uint;
pub type int_least64_t = ::std::os::raw::c_longlong;
pub type uint_least64_t = ::std::os::raw::c_ulonglong;
pub type int_fast8_t = ::std::os::raw::c_schar;
pub type uint_fast8_t = ::std::os::raw::c_uchar;
pub type int_fast16_t = ::std::os::raw::c_short;
pub type uint_fast16_t = ::std::os::raw::c_ushort;
pub type int_fast32_t = ::std::os::raw::c_int;
pub type uint_fast32_t = ::std::os::raw::c_uint;
pub type int_fast64_t = ::std::os::raw::c_longlong;
pub type uint_fast64_t = ::std::os::raw::c_ulonglong;
pub type intmax_t = ::std::os::raw::c_longlong;
pub type uintmax_t = ::std::os::raw::c_ulonglong;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct oc_vpn_proto {
pub name: *const ::std::os::raw::c_char,
pub pretty_name: *const ::std::os::raw::c_char,
pub description: *const ::std::os::raw::c_char,
pub flags: ::std::os::raw::c_uint,
}
#[test]
fn bindgen_test_layout_oc_vpn_proto() {
const UNINIT: ::std::mem::MaybeUninit<oc_vpn_proto> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<oc_vpn_proto>(),
32usize,
concat!("Size of: ", stringify!(oc_vpn_proto))
);
assert_eq!(
::std::mem::align_of::<oc_vpn_proto>(),
8usize,
concat!("Alignment of ", stringify!(oc_vpn_proto))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(oc_vpn_proto),
"::",
stringify!(name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).pretty_name) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(oc_vpn_proto),
"::",
stringify!(pretty_name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).description) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(oc_vpn_proto),
"::",
stringify!(description)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(oc_vpn_proto),
"::",
stringify!(flags)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct oc_form_opt {
pub next: *mut oc_form_opt,
pub type_: ::std::os::raw::c_int,
pub name: *mut ::std::os::raw::c_char,
pub label: *mut ::std::os::raw::c_char,
pub _value: *mut ::std::os::raw::c_char,
pub flags: ::std::os::raw::c_uint,
pub reserved: *mut ::std::os::raw::c_void,
}
#[test]
fn bindgen_test_layout_oc_form_opt() {
const UNINIT: ::std::mem::MaybeUninit<oc_form_opt> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<oc_form_opt>(),
56usize,
concat!("Size of: ", stringify!(oc_form_opt))
);
assert_eq!(
::std::mem::align_of::<oc_form_opt>(),
8usize,
concat!("Alignment of ", stringify!(oc_form_opt))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).next) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(oc_form_opt),
"::",
stringify!(next)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(oc_form_opt),
"::",
stringify!(type_)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(oc_form_opt),
"::",
stringify!(name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).label) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(oc_form_opt),
"::",
stringify!(label)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._value) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(oc_form_opt),
"::",
stringify!(_value)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(oc_form_opt),
"::",
stringify!(flags)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(oc_form_opt),
"::",
stringify!(reserved)
)
);
}
extern "C" {
pub fn openconnect_set_option_value(
opt: *mut oc_form_opt,
value: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct oc_choice {
pub name: *mut ::std::os::raw::c_char,
pub label: *mut ::std::os::raw::c_char,
pub auth_type: *mut ::std::os::raw::c_char,
pub override_name: *mut ::std::os::raw::c_char,
pub override_label: *mut ::std::os::raw::c_char,
}
#[test]
fn bindgen_test_layout_oc_choice() {
const UNINIT: ::std::mem::MaybeUninit<oc_choice> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<oc_choice>(),
40usize,
concat!("Size of: ", stringify!(oc_choice))
);
assert_eq!(
::std::mem::align_of::<oc_choice>(),
8usize,
concat!("Alignment of ", stringify!(oc_choice))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).name) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(oc_choice),
"::",
stringify!(name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).label) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(oc_choice),
"::",
stringify!(label)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).auth_type) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(oc_choice),
"::",
stringify!(auth_type)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).override_name) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(oc_choice),
"::",
stringify!(override_name)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).override_label) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(oc_choice),
"::",
stringify!(override_label)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct oc_form_opt_select {
pub form: oc_form_opt,
pub nr_choices: ::std::os::raw::c_int,
pub choices: *mut *mut oc_choice,
}
#[test]
fn bindgen_test_layout_oc_form_opt_select() {
const UNINIT: ::std::mem::MaybeUninit<oc_form_opt_select> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<oc_form_opt_select>(),
72usize,
concat!("Size of: ", stringify!(oc_form_opt_select))
);
assert_eq!(
::std::mem::align_of::<oc_form_opt_select>(),
8usize,
concat!("Alignment of ", stringify!(oc_form_opt_select))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).form) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(oc_form_opt_select),
"::",
stringify!(form)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).nr_choices) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(oc_form_opt_select),
"::",
stringify!(nr_choices)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).choices) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(oc_form_opt_select),
"::",
stringify!(choices)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct oc_auth_form {
pub banner: *mut ::std::os::raw::c_char,
pub message: *mut ::std::os::raw::c_char,
pub error: *mut ::std::os::raw::c_char,
pub auth_id: *mut ::std::os::raw::c_char,
pub method: *mut ::std::os::raw::c_char,
pub action: *mut ::std::os::raw::c_char,
pub opts: *mut oc_form_opt,
pub authgroup_opt: *mut oc_form_opt_select,
pub authgroup_selection: ::std::os::raw::c_int,
}
#[test]
fn bindgen_test_layout_oc_auth_form() {
const UNINIT: ::std::mem::MaybeUninit<oc_auth_form> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<oc_auth_form>(),
72usize,
concat!("Size of: ", stringify!(oc_auth_form))
);
assert_eq!(
::std::mem::align_of::<oc_auth_form>(),
8usize,
concat!("Alignment of ", stringify!(oc_auth_form))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).banner) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(oc_auth_form),
"::",
stringify!(banner)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).message) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(oc_auth_form),
"::",
stringify!(message)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).error) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(oc_auth_form),
"::",
stringify!(error)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).auth_id) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(oc_auth_form),
"::",
stringify!(auth_id)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).method) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(oc_auth_form),
"::",
stringify!(method)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).action) as usize - ptr as usize },
40usize,
concat!(
"Offset of field: ",
stringify!(oc_auth_form),
"::",
stringify!(action)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).opts) as usize - ptr as usize },
48usize,
concat!(
"Offset of field: ",
stringify!(oc_auth_form),
"::",
stringify!(opts)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).authgroup_opt) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(oc_auth_form),
"::",
stringify!(authgroup_opt)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).authgroup_selection) as usize - ptr as usize },
64usize,
concat!(
"Offset of field: ",
stringify!(oc_auth_form),
"::",
stringify!(authgroup_selection)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct oc_split_include {
pub route: *const ::std::os::raw::c_char,
pub next: *mut oc_split_include,
}
#[test]
fn bindgen_test_layout_oc_split_include() {
const UNINIT: ::std::mem::MaybeUninit<oc_split_include> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<oc_split_include>(),
16usize,
concat!("Size of: ", stringify!(oc_split_include))
);
assert_eq!(
::std::mem::align_of::<oc_split_include>(),
8usize,
concat!("Alignment of ", stringify!(oc_split_include))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).route) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(oc_split_include),
"::",
stringify!(route)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).next) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(oc_split_include),
"::",
stringify!(next)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct oc_ip_info {
pub addr: *const ::std::os::raw::c_char,
pub netmask: *const ::std::os::raw::c_char,
pub addr6: *const ::std::os::raw::c_char,
pub netmask6: *const ::std::os::raw::c_char,
pub dns: [*const ::std::os::raw::c_char; 3usize],
pub nbns: [*const ::std::os::raw::c_char; 3usize],
pub domain: *const ::std::os::raw::c_char,
pub proxy_pac: *const ::std::os::raw::c_char,
pub mtu: ::std::os::raw::c_int,
pub split_dns: *mut oc_split_include,
pub split_includes: *mut oc_split_include,
pub split_excludes: *mut oc_split_include,
pub gateway_addr: *mut ::std::os::raw::c_char,
}
#[test]
fn bindgen_test_layout_oc_ip_info() {
const UNINIT: ::std::mem::MaybeUninit<oc_ip_info> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<oc_ip_info>(),
136usize,
concat!("Size of: ", stringify!(oc_ip_info))
);
assert_eq!(
::std::mem::align_of::<oc_ip_info>(),
8usize,
concat!("Alignment of ", stringify!(oc_ip_info))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).addr) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(oc_ip_info),
"::",
stringify!(addr)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).netmask) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(oc_ip_info),
"::",
stringify!(netmask)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).addr6) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(oc_ip_info),
"::",
stringify!(addr6)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).netmask6) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(oc_ip_info),
"::",
stringify!(netmask6)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).dns) as usize - ptr as usize },
32usize,
concat!(
"Offset of field: ",
stringify!(oc_ip_info),
"::",
stringify!(dns)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).nbns) as usize - ptr as usize },
56usize,
concat!(
"Offset of field: ",
stringify!(oc_ip_info),
"::",
stringify!(nbns)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).domain) as usize - ptr as usize },
80usize,
concat!(
"Offset of field: ",
stringify!(oc_ip_info),
"::",
stringify!(domain)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).proxy_pac) as usize - ptr as usize },
88usize,
concat!(
"Offset of field: ",
stringify!(oc_ip_info),
"::",
stringify!(proxy_pac)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).mtu) as usize - ptr as usize },
96usize,
concat!(
"Offset of field: ",
stringify!(oc_ip_info),
"::",
stringify!(mtu)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).split_dns) as usize - ptr as usize },
104usize,
concat!(
"Offset of field: ",
stringify!(oc_ip_info),
"::",
stringify!(split_dns)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).split_includes) as usize - ptr as usize },
112usize,
concat!(
"Offset of field: ",
stringify!(oc_ip_info),
"::",
stringify!(split_includes)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).split_excludes) as usize - ptr as usize },
120usize,
concat!(
"Offset of field: ",
stringify!(oc_ip_info),
"::",
stringify!(split_excludes)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).gateway_addr) as usize - ptr as usize },
128usize,
concat!(
"Offset of field: ",
stringify!(oc_ip_info),
"::",
stringify!(gateway_addr)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct oc_vpn_option {
pub option: *mut ::std::os::raw::c_char,
pub value: *mut ::std::os::raw::c_char,
pub next: *mut oc_vpn_option,
}
#[test]
fn bindgen_test_layout_oc_vpn_option() {
const UNINIT: ::std::mem::MaybeUninit<oc_vpn_option> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<oc_vpn_option>(),
24usize,
concat!("Size of: ", stringify!(oc_vpn_option))
);
assert_eq!(
::std::mem::align_of::<oc_vpn_option>(),
8usize,
concat!("Alignment of ", stringify!(oc_vpn_option))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).option) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(oc_vpn_option),
"::",
stringify!(option)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).value) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(oc_vpn_option),
"::",
stringify!(value)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).next) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(oc_vpn_option),
"::",
stringify!(next)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct oc_stats {
pub tx_pkts: u64,
pub tx_bytes: u64,
pub rx_pkts: u64,
pub rx_bytes: u64,
}
#[test]
fn bindgen_test_layout_oc_stats() {
const UNINIT: ::std::mem::MaybeUninit<oc_stats> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<oc_stats>(),
32usize,
concat!("Size of: ", stringify!(oc_stats))
);
assert_eq!(
::std::mem::align_of::<oc_stats>(),
8usize,
concat!("Alignment of ", stringify!(oc_stats))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).tx_pkts) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(oc_stats),
"::",
stringify!(tx_pkts)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).tx_bytes) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(oc_stats),
"::",
stringify!(tx_bytes)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).rx_pkts) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(oc_stats),
"::",
stringify!(rx_pkts)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).rx_bytes) as usize - ptr as usize },
24usize,
concat!(
"Offset of field: ",
stringify!(oc_stats),
"::",
stringify!(rx_bytes)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct oc_cert {
pub der_len: ::std::os::raw::c_int,
pub der_data: *mut ::std::os::raw::c_uchar,
pub reserved: *mut ::std::os::raw::c_void,
}
#[test]
fn bindgen_test_layout_oc_cert() {
const UNINIT: ::std::mem::MaybeUninit<oc_cert> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<oc_cert>(),
24usize,
concat!("Size of: ", stringify!(oc_cert))
);
assert_eq!(
::std::mem::align_of::<oc_cert>(),
8usize,
concat!("Alignment of ", stringify!(oc_cert))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).der_len) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(oc_cert),
"::",
stringify!(der_len)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).der_data) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(oc_cert),
"::",
stringify!(der_data)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).reserved) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(oc_cert),
"::",
stringify!(reserved)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct oc_webview_result {
pub uri: *const ::std::os::raw::c_char,
pub cookies: *mut *const ::std::os::raw::c_char,
pub headers: *mut *const ::std::os::raw::c_char,
}
#[test]
fn bindgen_test_layout_oc_webview_result() {
const UNINIT: ::std::mem::MaybeUninit<oc_webview_result> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<oc_webview_result>(),
24usize,
concat!("Size of: ", stringify!(oc_webview_result))
);
assert_eq!(
::std::mem::align_of::<oc_webview_result>(),
8usize,
concat!("Alignment of ", stringify!(oc_webview_result))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).uri) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(oc_webview_result),
"::",
stringify!(uri)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).cookies) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(oc_webview_result),
"::",
stringify!(cookies)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).headers) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(oc_webview_result),
"::",
stringify!(headers)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct openconnect_info {
_unused: [u8; 0],
}
pub const oc_token_mode_t_OC_TOKEN_MODE_NONE: oc_token_mode_t = 0;
pub const oc_token_mode_t_OC_TOKEN_MODE_STOKEN: oc_token_mode_t = 1;
pub const oc_token_mode_t_OC_TOKEN_MODE_TOTP: oc_token_mode_t = 2;
pub const oc_token_mode_t_OC_TOKEN_MODE_HOTP: oc_token_mode_t = 3;
pub const oc_token_mode_t_OC_TOKEN_MODE_YUBIOATH: oc_token_mode_t = 4;
pub const oc_token_mode_t_OC_TOKEN_MODE_OIDC: oc_token_mode_t = 5;
pub type oc_token_mode_t = ::std::os::raw::c_uint;
pub const oc_compression_mode_t_OC_COMPRESSION_MODE_NONE: oc_compression_mode_t = 0;
pub const oc_compression_mode_t_OC_COMPRESSION_MODE_STATELESS: oc_compression_mode_t = 1;
pub const oc_compression_mode_t_OC_COMPRESSION_MODE_ALL: oc_compression_mode_t = 2;
pub type oc_compression_mode_t = ::std::os::raw::c_uint;
extern "C" {
pub fn openconnect_set_csd_environ(
vpninfo: *mut openconnect_info,
name: *const ::std::os::raw::c_char,
value: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_get_peer_cert_hash(
vpninfo: *mut openconnect_info,
) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn openconnect_check_peer_cert_hash(
vpninfo: *mut openconnect_info,
old_hash: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_get_peer_cert_details(
vpninfo: *mut openconnect_info,
) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn openconnect_get_peer_cert_DER(
vpninfo: *mut openconnect_info,
buf: *mut *mut ::std::os::raw::c_uchar,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_free_cert_info(
vpninfo: *mut openconnect_info,
buf: *mut ::std::os::raw::c_void,
);
}
extern "C" {
pub fn openconnect_get_peer_cert_chain(
vpninfo: *mut openconnect_info,
chain: *mut *mut oc_cert,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_free_peer_cert_chain(vpninfo: *mut openconnect_info, chain: *mut oc_cert);
}
extern "C" {
pub fn openconnect_set_http_auth(
vpninfo: *mut openconnect_info,
methods: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_set_proxy_auth(
vpninfo: *mut openconnect_info,
methods: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_set_http_proxy(
vpninfo: *mut openconnect_info,
proxy: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_set_useragent(
vpninfo: *mut openconnect_info,
useragent: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_passphrase_from_fsid(
vpninfo: *mut openconnect_info,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_obtain_cookie(vpninfo: *mut openconnect_info) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_init_ssl() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_get_cstp_cipher(
arg1: *mut openconnect_info,
) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn openconnect_get_dtls_cipher(
arg1: *mut openconnect_info,
) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn openconnect_get_cstp_compression(
arg1: *mut openconnect_info,
) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn openconnect_get_dtls_compression(
arg1: *mut openconnect_info,
) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn openconnect_get_connect_url(
arg1: *mut openconnect_info,
) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn openconnect_get_hostname(arg1: *mut openconnect_info) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn openconnect_get_dnsname(arg1: *mut openconnect_info) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn openconnect_set_hostname(
arg1: *mut openconnect_info,
arg2: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_get_urlpath(arg1: *mut openconnect_info) -> *mut ::std::os::raw::c_char;
}
extern "C" {
pub fn openconnect_set_urlpath(
arg1: *mut openconnect_info,
arg2: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_set_localname(
arg1: *mut openconnect_info,
arg2: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_set_sni(
arg1: *mut openconnect_info,
arg2: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
pub type openconnect_lock_token_vfn = ::std::option::Option<
unsafe extern "C" fn(tokdata: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
>;
pub type openconnect_unlock_token_vfn = ::std::option::Option<
unsafe extern "C" fn(
tokdata: *mut ::std::os::raw::c_void,
new_tok: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int,
>;
extern "C" {
pub fn openconnect_set_token_callbacks(
arg1: *mut openconnect_info,
tokdata: *mut ::std::os::raw::c_void,
arg2: openconnect_lock_token_vfn,
arg3: openconnect_unlock_token_vfn,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_set_token_mode(
arg1: *mut openconnect_info,
arg2: oc_token_mode_t,
token_str: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_set_stoken_mode(
arg1: *mut openconnect_info,
arg2: ::std::os::raw::c_int,
arg3: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_set_compression_mode(
arg1: *mut openconnect_info,
arg2: oc_compression_mode_t,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_set_xmlsha1(
arg1: *mut openconnect_info,
arg2: *const ::std::os::raw::c_char,
size: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn openconnect_set_cafile(
arg1: *mut openconnect_info,
arg2: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_set_system_trust(
vpninfo: *mut openconnect_info,
val: ::std::os::raw::c_uint,
);
}
extern "C" {
pub fn openconnect_setup_csd(
arg1: *mut openconnect_info,
arg2: ::std::os::raw::c_uint,
silent: ::std::os::raw::c_int,
wrapper: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_set_xmlpost(arg1: *mut openconnect_info, enable: ::std::os::raw::c_int);
}
extern "C" {
pub fn openconnect_set_reported_os(
arg1: *mut openconnect_info,
os: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_set_version_string(
vpninfo: *mut openconnect_info,
version_string: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_set_mobile_info(
vpninfo: *mut openconnect_info,
mobile_platform_version: *const ::std::os::raw::c_char,
mobile_device_type: *const ::std::os::raw::c_char,
mobile_device_uniqueid: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_set_client_cert(
arg1: *mut openconnect_info,
cert: *const ::std::os::raw::c_char,
sslkey: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_set_key_password(
vpninfo: *mut openconnect_info,
pass: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
#[doc = " Multiple certificate authentication (MCA): the client cert _and_ the\n mca_cert are used for authentication. The mca_cert is used to sign a\n challenge sent by the server."]
pub fn openconnect_set_mca_cert(
arg1: *mut openconnect_info,
cert: *const ::std::os::raw::c_char,
key: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_set_mca_key_password(
vpninfo: *mut openconnect_info,
pass: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_get_ifname(arg1: *mut openconnect_info) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn openconnect_set_reqmtu(arg1: *mut openconnect_info, reqmtu: ::std::os::raw::c_int);
}
extern "C" {
pub fn openconnect_set_dpd(arg1: *mut openconnect_info, min_seconds: ::std::os::raw::c_int);
}
extern "C" {
pub fn openconnect_set_trojan_interval(
arg1: *mut openconnect_info,
seconds: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn openconnect_get_idle_timeout(arg1: *mut openconnect_info) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_get_auth_expiration(arg1: *mut openconnect_info) -> time_t;
}
extern "C" {
pub fn openconnect_get_ip_info(
arg1: *mut openconnect_info,
info: *mut *const oc_ip_info,
cstp_options: *mut *const oc_vpn_option,
dtls_options: *mut *const oc_vpn_option,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_get_port(arg1: *mut openconnect_info) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_get_cookie(arg1: *mut openconnect_info) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn openconnect_set_cookie(
arg1: *mut openconnect_info,
arg2: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_clear_cookie(arg1: *mut openconnect_info);
}
extern "C" {
pub fn openconnect_disable_ipv6(vpninfo: *mut openconnect_info) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_disable_dtls(vpninfo: *mut openconnect_info) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_reset_ssl(vpninfo: *mut openconnect_info);
}
extern "C" {
pub fn openconnect_parse_url(
vpninfo: *mut openconnect_info,
url: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_set_cert_expiry_warning(
vpninfo: *mut openconnect_info,
seconds: ::std::os::raw::c_int,
);
}
extern "C" {
pub fn openconnect_set_pfs(vpninfo: *mut openconnect_info, val: ::std::os::raw::c_uint);
}
extern "C" {
pub fn openconnect_set_allow_insecure_crypto(
vpninfo: *mut openconnect_info,
val: ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_set_cancel_fd(vpninfo: *mut openconnect_info, fd: ::std::os::raw::c_int);
}
extern "C" {
pub fn openconnect_setup_cmd_pipe(vpninfo: *mut openconnect_info) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_get_version() -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn openconnect_make_cstp_connection(
vpninfo: *mut openconnect_info,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_setup_tun_device(
vpninfo: *mut openconnect_info,
vpnc_script: *const ::std::os::raw::c_char,
ifname: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_setup_tun_script(
vpninfo: *mut openconnect_info,
tun_script: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_setup_tun_fd(
vpninfo: *mut openconnect_info,
tun_fd: isize,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_setup_dtls(
vpninfo: *mut openconnect_info,
dtls_attempt_period: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_mainloop(
vpninfo: *mut openconnect_info,
reconnect_timeout: ::std::os::raw::c_int,
reconnect_interval: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
pub type openconnect_validate_peer_cert_vfn = ::std::option::Option<
unsafe extern "C" fn(
privdata: *mut ::std::os::raw::c_void,
reason: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int,
>;
pub type openconnect_write_new_config_vfn = ::std::option::Option<
unsafe extern "C" fn(
privdata: *mut ::std::os::raw::c_void,
buf: *const ::std::os::raw::c_char,
buflen: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int,
>;
pub type openconnect_process_auth_form_vfn = ::std::option::Option<
unsafe extern "C" fn(
privdata: *mut ::std::os::raw::c_void,
form: *mut oc_auth_form,
) -> ::std::os::raw::c_int,
>;
pub type openconnect_progress_vfn = ::std::option::Option<
unsafe extern "C" fn(
privdata: *mut ::std::os::raw::c_void,
level: ::std::os::raw::c_int,
fmt: *const ::std::os::raw::c_char,
...
),
>;
extern "C" {
pub fn openconnect_vpninfo_new(
useragent: *const ::std::os::raw::c_char,
arg1: openconnect_validate_peer_cert_vfn,
arg2: openconnect_write_new_config_vfn,
arg3: openconnect_process_auth_form_vfn,
arg4: openconnect_progress_vfn,
privdata: *mut ::std::os::raw::c_void,
) -> *mut openconnect_info;
}
extern "C" {
pub fn openconnect_vpninfo_free(vpninfo: *mut openconnect_info);
}
pub type openconnect_open_webview_vfn = ::std::option::Option<
unsafe extern "C" fn(
arg1: *mut openconnect_info,
uri: *const ::std::os::raw::c_char,
privdata: *mut ::std::os::raw::c_void,
) -> ::std::os::raw::c_int,
>;
extern "C" {
pub fn openconnect_set_webview_callback(
vpninfo: *mut openconnect_info,
arg1: openconnect_open_webview_vfn,
);
}
extern "C" {
pub fn openconnect_webview_load_changed(
vpninfo: *mut openconnect_info,
result: *const oc_webview_result,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_set_external_browser_callback(
vpninfo: *mut openconnect_info,
arg1: openconnect_open_webview_vfn,
);
}
pub type openconnect_protect_socket_vfn = ::std::option::Option<
unsafe extern "C" fn(privdata: *mut ::std::os::raw::c_void, fd: ::std::os::raw::c_int),
>;
extern "C" {
pub fn openconnect_set_protect_socket_handler(
vpninfo: *mut openconnect_info,
protect_socket: openconnect_protect_socket_vfn,
);
}
extern "C" {
pub fn openconnect_set_loglevel(vpninfo: *mut openconnect_info, level: ::std::os::raw::c_int);
}
extern "C" {
pub fn openconnect_set_pass_tos(vpninfo: *mut openconnect_info, enable: ::std::os::raw::c_int);
}
pub type openconnect_stats_vfn = ::std::option::Option<
unsafe extern "C" fn(privdata: *mut ::std::os::raw::c_void, stats: *const oc_stats),
>;
extern "C" {
pub fn openconnect_set_stats_handler(
vpninfo: *mut openconnect_info,
stats_handler: openconnect_stats_vfn,
);
}
extern "C" {
pub fn openconnect_has_pkcs11_support() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_has_tss_blob_support() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_has_tss2_blob_support() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_has_stoken_support() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_has_oath_support() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_has_yubioath_support() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_has_system_key_support() -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_get_supported_protocols(
protos: *mut *mut oc_vpn_proto,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn openconnect_free_supported_protocols(protos: *mut oc_vpn_proto);
}
extern "C" {
pub fn openconnect_get_protocol(
vpninfo: *mut openconnect_info,
) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn openconnect_set_protocol(
vpninfo: *mut openconnect_info,
protocol: *const ::std::os::raw::c_char,
) -> ::std::os::raw::c_int;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct addrinfo {
_unused: [u8; 0],
}
pub type openconnect_getaddrinfo_vfn = ::std::option::Option<
unsafe extern "C" fn(
privdata: *mut ::std::os::raw::c_void,
node: *const ::std::os::raw::c_char,
service: *const ::std::os::raw::c_char,
hints: *const addrinfo,
res: *mut *mut addrinfo,
) -> ::std::os::raw::c_int,
>;
extern "C" {
pub fn openconnect_override_getaddrinfo(
vpninfo: *mut openconnect_info,
gai_fn: openconnect_getaddrinfo_vfn,
);
}
pub type openconnect_setup_tun_vfn =
::std::option::Option<unsafe extern "C" fn(privdata: *mut ::std::os::raw::c_void)>;
extern "C" {
pub fn openconnect_set_setup_tun_handler(
vpninfo: *mut openconnect_info,
setup_tun: openconnect_setup_tun_vfn,
);
}
pub type openconnect_reconnected_vfn =
::std::option::Option<unsafe extern "C" fn(privdata: *mut ::std::os::raw::c_void)>;
extern "C" {
pub fn openconnect_set_reconnected_handler(
vpninfo: *mut openconnect_info,
reconnected_fn: openconnect_reconnected_vfn,
);
}
pub type t_global_progress_vfn = ::std::option::Option<
unsafe extern "C" fn(
privdata: *mut ::std::os::raw::c_void,
level: ::std::os::raw::c_int,
buf: *const ::std::os::raw::c_char,
),
>;
extern "C" {
pub fn helper_format_vargs(
privdata: *mut ::std::os::raw::c_void,
level: ::std::os::raw::c_int,
fmt: *const ::std::os::raw::c_char,
...
);
}
extern "C" {
pub fn helper_set_global_progress_vfn(cb: t_global_progress_vfn);
}
pub type __builtin_va_list = *mut ::std::os::raw::c_char;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct lconv {
pub _address: u8,
}