pub const DEFAULT_EXTERNAL_BROWSER: &[u8; 14] = b"/usr/bin/open\0";
pub const DEFAULT_VPNCSCRIPT: &[u8; 14] = b"./vpnc-script\0";
pub const ENABLE_NLS: u32 = 1;
pub const HAVE_ALLOCA_H: 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_DLFCN_H: u32 = 1;
pub const HAVE_DTLS: u32 = 1;
pub const HAVE_DTLS12: u32 = 1;
pub const HAVE_DTLS1_STOP_TIMER: u32 = 1;
pub const HAVE_ENGINE: u32 = 1;
pub const HAVE_ESP: u32 = 1;
pub const HAVE_GETLINE: u32 = 1;
pub const HAVE_HPKE_SUPPORT: u32 = 1;
pub const HAVE_ICONV: u32 = 1;
pub const HAVE_INET_ATON: u32 = 1;
pub const HAVE_JSON: u32 = 1;
pub const HAVE_LOCALTIME_R: u32 = 1;
pub const HAVE_MEMSET_S: u32 = 1;
pub const HAVE_NET_UTUN_H: u32 = 1;
pub const HAVE_NL_LANGINFO: u32 = 1;
pub const HAVE_POSIX_SPAWN: u32 = 1;
pub const HAVE_SSL_CIPHER_FIND: u32 = 1;
pub const HAVE_SSL_CTX_PROTOVER: u32 = 1;
pub const HAVE_STATFS: u32 = 1;
pub const HAVE_STRCASESTR: u32 = 1;
pub const HAVE_STRNDUP: u32 = 1;
pub const HAVE_VASPRINTF: u32 = 1;
pub const LT_OBJDIR: &[u8; 7] = b".libs/\0";
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 VERSION: &[u8; 5] = b"9.12\0";
pub const __STDC_WANT_LIB_EXT1__: u32 = 1;
pub const __has_safe_buffers: u32 = 1;
pub const __DARWIN_ONLY_64_BIT_INO_T: u32 = 0;
pub const __DARWIN_ONLY_UNIX_CONFORMANCE: u32 = 1;
pub const __DARWIN_ONLY_VERS_1050: u32 = 0;
pub const __DARWIN_UNIX03: u32 = 1;
pub const __DARWIN_64_BIT_INO_T: u32 = 1;
pub const __DARWIN_VERS_1050: u32 = 1;
pub const __DARWIN_NON_CANCELABLE: u32 = 0;
pub const __DARWIN_SUF_64_BIT_INO_T: &[u8; 9] = b"$INODE64\0";
pub const __DARWIN_SUF_1050: &[u8; 6] = b"$1050\0";
pub const __DARWIN_SUF_EXTSN: &[u8; 14] = b"$DARWIN_EXTSN\0";
pub const __DARWIN_C_ANSI: u32 = 4096;
pub const __DARWIN_C_FULL: u32 = 900000;
pub const __DARWIN_C_LEVEL: u32 = 900000;
pub const __DARWIN_NO_LONG_LONG: u32 = 0;
pub const _DARWIN_FEATURE_64_BIT_INODE: u32 = 1;
pub const _DARWIN_FEATURE_ONLY_UNIX_CONFORMANCE: u32 = 1;
pub const _DARWIN_FEATURE_UNIX_CONFORMANCE: u32 = 3;
pub const __has_ptrcheck: u32 = 0;
pub const __PTHREAD_SIZE__: u32 = 8176;
pub const __PTHREAD_ATTR_SIZE__: u32 = 56;
pub const __PTHREAD_MUTEXATTR_SIZE__: u32 = 8;
pub const __PTHREAD_MUTEX_SIZE__: u32 = 56;
pub const __PTHREAD_CONDATTR_SIZE__: u32 = 8;
pub const __PTHREAD_COND_SIZE__: u32 = 40;
pub const __PTHREAD_ONCE_SIZE__: u32 = 8;
pub const __PTHREAD_RWLOCK_SIZE__: u32 = 192;
pub const __PTHREAD_RWLOCKATTR_SIZE__: u32 = 16;
pub const _QUAD_HIGHWORD: u32 = 1;
pub const _QUAD_LOWWORD: u32 = 0;
pub const __DARWIN_LITTLE_ENDIAN: u32 = 1234;
pub const __DARWIN_BIG_ENDIAN: u32 = 4321;
pub const __DARWIN_PDP_ENDIAN: u32 = 3412;
pub const __DARWIN_BYTE_ORDER: u32 = 1234;
pub const LITTLE_ENDIAN: u32 = 1234;
pub const BIG_ENDIAN: u32 = 4321;
pub const PDP_ENDIAN: u32 = 3412;
pub const BYTE_ORDER: u32 = 1234;
pub const __API_TO_BE_DEPRECATED: u32 = 100000;
pub const __API_TO_BE_DEPRECATED_MACOS: u32 = 100000;
pub const __API_TO_BE_DEPRECATED_IOS: u32 = 100000;
pub const __API_TO_BE_DEPRECATED_MACCATALYST: u32 = 100000;
pub const __API_TO_BE_DEPRECATED_WATCHOS: u32 = 100000;
pub const __API_TO_BE_DEPRECATED_TVOS: u32 = 100000;
pub const __API_TO_BE_DEPRECATED_DRIVERKIT: u32 = 100000;
pub const __API_TO_BE_DEPRECATED_VISIONOS: u32 = 100000;
pub const __MAC_10_0: u32 = 1000;
pub const __MAC_10_1: u32 = 1010;
pub const __MAC_10_2: u32 = 1020;
pub const __MAC_10_3: u32 = 1030;
pub const __MAC_10_4: u32 = 1040;
pub const __MAC_10_5: u32 = 1050;
pub const __MAC_10_6: u32 = 1060;
pub const __MAC_10_7: u32 = 1070;
pub const __MAC_10_8: u32 = 1080;
pub const __MAC_10_9: u32 = 1090;
pub const __MAC_10_10: u32 = 101000;
pub const __MAC_10_10_2: u32 = 101002;
pub const __MAC_10_10_3: u32 = 101003;
pub const __MAC_10_11: u32 = 101100;
pub const __MAC_10_11_2: u32 = 101102;
pub const __MAC_10_11_3: u32 = 101103;
pub const __MAC_10_11_4: u32 = 101104;
pub const __MAC_10_12: u32 = 101200;
pub const __MAC_10_12_1: u32 = 101201;
pub const __MAC_10_12_2: u32 = 101202;
pub const __MAC_10_12_4: u32 = 101204;
pub const __MAC_10_13: u32 = 101300;
pub const __MAC_10_13_1: u32 = 101301;
pub const __MAC_10_13_2: u32 = 101302;
pub const __MAC_10_13_4: u32 = 101304;
pub const __MAC_10_14: u32 = 101400;
pub const __MAC_10_14_1: u32 = 101401;
pub const __MAC_10_14_4: u32 = 101404;
pub const __MAC_10_14_5: u32 = 101405;
pub const __MAC_10_14_6: u32 = 101406;
pub const __MAC_10_15: u32 = 101500;
pub const __MAC_10_15_1: u32 = 101501;
pub const __MAC_10_15_4: u32 = 101504;
pub const __MAC_10_16: u32 = 101600;
pub const __MAC_11_0: u32 = 110000;
pub const __MAC_11_1: u32 = 110100;
pub const __MAC_11_3: u32 = 110300;
pub const __MAC_11_4: u32 = 110400;
pub const __MAC_11_5: u32 = 110500;
pub const __MAC_11_6: u32 = 110600;
pub const __MAC_12_0: u32 = 120000;
pub const __MAC_12_1: u32 = 120100;
pub const __MAC_12_2: u32 = 120200;
pub const __MAC_12_3: u32 = 120300;
pub const __MAC_12_4: u32 = 120400;
pub const __MAC_12_5: u32 = 120500;
pub const __MAC_12_6: u32 = 120600;
pub const __MAC_12_7: u32 = 120700;
pub const __MAC_13_0: u32 = 130000;
pub const __MAC_13_1: u32 = 130100;
pub const __MAC_13_2: u32 = 130200;
pub const __MAC_13_3: u32 = 130300;
pub const __MAC_13_4: u32 = 130400;
pub const __MAC_13_5: u32 = 130500;
pub const __MAC_13_6: u32 = 130600;
pub const __MAC_14_0: u32 = 140000;
pub const __MAC_14_1: u32 = 140100;
pub const __MAC_14_2: u32 = 140200;
pub const __MAC_14_3: u32 = 140300;
pub const __MAC_14_4: u32 = 140400;
pub const __IPHONE_2_0: u32 = 20000;
pub const __IPHONE_2_1: u32 = 20100;
pub const __IPHONE_2_2: u32 = 20200;
pub const __IPHONE_3_0: u32 = 30000;
pub const __IPHONE_3_1: u32 = 30100;
pub const __IPHONE_3_2: u32 = 30200;
pub const __IPHONE_4_0: u32 = 40000;
pub const __IPHONE_4_1: u32 = 40100;
pub const __IPHONE_4_2: u32 = 40200;
pub const __IPHONE_4_3: u32 = 40300;
pub const __IPHONE_5_0: u32 = 50000;
pub const __IPHONE_5_1: u32 = 50100;
pub const __IPHONE_6_0: u32 = 60000;
pub const __IPHONE_6_1: u32 = 60100;
pub const __IPHONE_7_0: u32 = 70000;
pub const __IPHONE_7_1: u32 = 70100;
pub const __IPHONE_8_0: u32 = 80000;
pub const __IPHONE_8_1: u32 = 80100;
pub const __IPHONE_8_2: u32 = 80200;
pub const __IPHONE_8_3: u32 = 80300;
pub const __IPHONE_8_4: u32 = 80400;
pub const __IPHONE_9_0: u32 = 90000;
pub const __IPHONE_9_1: u32 = 90100;
pub const __IPHONE_9_2: u32 = 90200;
pub const __IPHONE_9_3: u32 = 90300;
pub const __IPHONE_10_0: u32 = 100000;
pub const __IPHONE_10_1: u32 = 100100;
pub const __IPHONE_10_2: u32 = 100200;
pub const __IPHONE_10_3: u32 = 100300;
pub const __IPHONE_11_0: u32 = 110000;
pub const __IPHONE_11_1: u32 = 110100;
pub const __IPHONE_11_2: u32 = 110200;
pub const __IPHONE_11_3: u32 = 110300;
pub const __IPHONE_11_4: u32 = 110400;
pub const __IPHONE_12_0: u32 = 120000;
pub const __IPHONE_12_1: u32 = 120100;
pub const __IPHONE_12_2: u32 = 120200;
pub const __IPHONE_12_3: u32 = 120300;
pub const __IPHONE_12_4: u32 = 120400;
pub const __IPHONE_13_0: u32 = 130000;
pub const __IPHONE_13_1: u32 = 130100;
pub const __IPHONE_13_2: u32 = 130200;
pub const __IPHONE_13_3: u32 = 130300;
pub const __IPHONE_13_4: u32 = 130400;
pub const __IPHONE_13_5: u32 = 130500;
pub const __IPHONE_13_6: u32 = 130600;
pub const __IPHONE_13_7: u32 = 130700;
pub const __IPHONE_14_0: u32 = 140000;
pub const __IPHONE_14_1: u32 = 140100;
pub const __IPHONE_14_2: u32 = 140200;
pub const __IPHONE_14_3: u32 = 140300;
pub const __IPHONE_14_5: u32 = 140500;
pub const __IPHONE_14_4: u32 = 140400;
pub const __IPHONE_14_6: u32 = 140600;
pub const __IPHONE_14_7: u32 = 140700;
pub const __IPHONE_14_8: u32 = 140800;
pub const __IPHONE_15_0: u32 = 150000;
pub const __IPHONE_15_1: u32 = 150100;
pub const __IPHONE_15_2: u32 = 150200;
pub const __IPHONE_15_3: u32 = 150300;
pub const __IPHONE_15_4: u32 = 150400;
pub const __IPHONE_15_5: u32 = 150500;
pub const __IPHONE_15_6: u32 = 150600;
pub const __IPHONE_15_7: u32 = 150700;
pub const __IPHONE_15_8: u32 = 150800;
pub const __IPHONE_16_0: u32 = 160000;
pub const __IPHONE_16_1: u32 = 160100;
pub const __IPHONE_16_2: u32 = 160200;
pub const __IPHONE_16_3: u32 = 160300;
pub const __IPHONE_16_4: u32 = 160400;
pub const __IPHONE_16_5: u32 = 160500;
pub const __IPHONE_16_6: u32 = 160600;
pub const __IPHONE_16_7: u32 = 160700;
pub const __IPHONE_17_0: u32 = 170000;
pub const __IPHONE_17_1: u32 = 170100;
pub const __IPHONE_17_2: u32 = 170200;
pub const __IPHONE_17_3: u32 = 170300;
pub const __IPHONE_17_4: u32 = 170400;
pub const __WATCHOS_1_0: u32 = 10000;
pub const __WATCHOS_2_0: u32 = 20000;
pub const __WATCHOS_2_1: u32 = 20100;
pub const __WATCHOS_2_2: u32 = 20200;
pub const __WATCHOS_3_0: u32 = 30000;
pub const __WATCHOS_3_1: u32 = 30100;
pub const __WATCHOS_3_1_1: u32 = 30101;
pub const __WATCHOS_3_2: u32 = 30200;
pub const __WATCHOS_4_0: u32 = 40000;
pub const __WATCHOS_4_1: u32 = 40100;
pub const __WATCHOS_4_2: u32 = 40200;
pub const __WATCHOS_4_3: u32 = 40300;
pub const __WATCHOS_5_0: u32 = 50000;
pub const __WATCHOS_5_1: u32 = 50100;
pub const __WATCHOS_5_2: u32 = 50200;
pub const __WATCHOS_5_3: u32 = 50300;
pub const __WATCHOS_6_0: u32 = 60000;
pub const __WATCHOS_6_1: u32 = 60100;
pub const __WATCHOS_6_2: u32 = 60200;
pub const __WATCHOS_7_0: u32 = 70000;
pub const __WATCHOS_7_1: u32 = 70100;
pub const __WATCHOS_7_2: u32 = 70200;
pub const __WATCHOS_7_3: u32 = 70300;
pub const __WATCHOS_7_4: u32 = 70400;
pub const __WATCHOS_7_5: u32 = 70500;
pub const __WATCHOS_7_6: u32 = 70600;
pub const __WATCHOS_8_0: u32 = 80000;
pub const __WATCHOS_8_1: u32 = 80100;
pub const __WATCHOS_8_3: u32 = 80300;
pub const __WATCHOS_8_4: u32 = 80400;
pub const __WATCHOS_8_5: u32 = 80500;
pub const __WATCHOS_8_6: u32 = 80600;
pub const __WATCHOS_8_7: u32 = 80700;
pub const __WATCHOS_8_8: u32 = 80800;
pub const __WATCHOS_9_0: u32 = 90000;
pub const __WATCHOS_9_1: u32 = 90100;
pub const __WATCHOS_9_2: u32 = 90200;
pub const __WATCHOS_9_3: u32 = 90300;
pub const __WATCHOS_9_4: u32 = 90400;
pub const __WATCHOS_9_5: u32 = 90500;
pub const __WATCHOS_9_6: u32 = 90600;
pub const __WATCHOS_10_0: u32 = 100000;
pub const __WATCHOS_10_1: u32 = 100100;
pub const __WATCHOS_10_2: u32 = 100200;
pub const __WATCHOS_10_3: u32 = 100300;
pub const __WATCHOS_10_4: u32 = 100400;
pub const __TVOS_9_0: u32 = 90000;
pub const __TVOS_9_1: u32 = 90100;
pub const __TVOS_9_2: u32 = 90200;
pub const __TVOS_10_0: u32 = 100000;
pub const __TVOS_10_0_1: u32 = 100001;
pub const __TVOS_10_1: u32 = 100100;
pub const __TVOS_10_2: u32 = 100200;
pub const __TVOS_11_0: u32 = 110000;
pub const __TVOS_11_1: u32 = 110100;
pub const __TVOS_11_2: u32 = 110200;
pub const __TVOS_11_3: u32 = 110300;
pub const __TVOS_11_4: u32 = 110400;
pub const __TVOS_12_0: u32 = 120000;
pub const __TVOS_12_1: u32 = 120100;
pub const __TVOS_12_2: u32 = 120200;
pub const __TVOS_12_3: u32 = 120300;
pub const __TVOS_12_4: u32 = 120400;
pub const __TVOS_13_0: u32 = 130000;
pub const __TVOS_13_2: u32 = 130200;
pub const __TVOS_13_3: u32 = 130300;
pub const __TVOS_13_4: u32 = 130400;
pub const __TVOS_14_0: u32 = 140000;
pub const __TVOS_14_1: u32 = 140100;
pub const __TVOS_14_2: u32 = 140200;
pub const __TVOS_14_3: u32 = 140300;
pub const __TVOS_14_5: u32 = 140500;
pub const __TVOS_14_6: u32 = 140600;
pub const __TVOS_14_7: u32 = 140700;
pub const __TVOS_15_0: u32 = 150000;
pub const __TVOS_15_1: u32 = 150100;
pub const __TVOS_15_2: u32 = 150200;
pub const __TVOS_15_3: u32 = 150300;
pub const __TVOS_15_4: u32 = 150400;
pub const __TVOS_15_5: u32 = 150500;
pub const __TVOS_15_6: u32 = 150600;
pub const __TVOS_16_0: u32 = 160000;
pub const __TVOS_16_1: u32 = 160100;
pub const __TVOS_16_2: u32 = 160200;
pub const __TVOS_16_3: u32 = 160300;
pub const __TVOS_16_4: u32 = 160400;
pub const __TVOS_16_5: u32 = 160500;
pub const __TVOS_16_6: u32 = 160600;
pub const __TVOS_17_0: u32 = 170000;
pub const __TVOS_17_1: u32 = 170100;
pub const __TVOS_17_2: u32 = 170200;
pub const __TVOS_17_3: u32 = 170300;
pub const __TVOS_17_4: u32 = 170400;
pub const __BRIDGEOS_2_0: u32 = 20000;
pub const __BRIDGEOS_3_0: u32 = 30000;
pub const __BRIDGEOS_3_1: u32 = 30100;
pub const __BRIDGEOS_3_4: u32 = 30400;
pub const __BRIDGEOS_4_0: u32 = 40000;
pub const __BRIDGEOS_4_1: u32 = 40100;
pub const __BRIDGEOS_5_0: u32 = 50000;
pub const __BRIDGEOS_5_1: u32 = 50100;
pub const __BRIDGEOS_5_3: u32 = 50300;
pub const __BRIDGEOS_6_0: u32 = 60000;
pub const __BRIDGEOS_6_2: u32 = 60200;
pub const __BRIDGEOS_6_4: u32 = 60400;
pub const __BRIDGEOS_6_5: u32 = 60500;
pub const __BRIDGEOS_6_6: u32 = 60600;
pub const __BRIDGEOS_7_0: u32 = 70000;
pub const __BRIDGEOS_7_1: u32 = 70100;
pub const __BRIDGEOS_7_2: u32 = 70200;
pub const __BRIDGEOS_7_3: u32 = 70300;
pub const __BRIDGEOS_7_4: u32 = 70400;
pub const __BRIDGEOS_7_6: u32 = 70600;
pub const __BRIDGEOS_8_0: u32 = 80000;
pub const __BRIDGEOS_8_1: u32 = 80100;
pub const __BRIDGEOS_8_2: u32 = 80200;
pub const __BRIDGEOS_8_3: u32 = 80300;
pub const __BRIDGEOS_8_4: u32 = 80400;
pub const __DRIVERKIT_19_0: u32 = 190000;
pub const __DRIVERKIT_20_0: u32 = 200000;
pub const __DRIVERKIT_21_0: u32 = 210000;
pub const __DRIVERKIT_22_0: u32 = 220000;
pub const __DRIVERKIT_22_4: u32 = 220400;
pub const __DRIVERKIT_22_5: u32 = 220500;
pub const __DRIVERKIT_22_6: u32 = 220600;
pub const __DRIVERKIT_23_0: u32 = 230000;
pub const __DRIVERKIT_23_1: u32 = 230100;
pub const __DRIVERKIT_23_2: u32 = 230200;
pub const __DRIVERKIT_23_3: u32 = 230300;
pub const __DRIVERKIT_23_4: u32 = 230400;
pub const __VISIONOS_1_0: u32 = 10000;
pub const __VISIONOS_1_1: u32 = 10100;
pub const MAC_OS_X_VERSION_10_0: u32 = 1000;
pub const MAC_OS_X_VERSION_10_1: u32 = 1010;
pub const MAC_OS_X_VERSION_10_2: u32 = 1020;
pub const MAC_OS_X_VERSION_10_3: u32 = 1030;
pub const MAC_OS_X_VERSION_10_4: u32 = 1040;
pub const MAC_OS_X_VERSION_10_5: u32 = 1050;
pub const MAC_OS_X_VERSION_10_6: u32 = 1060;
pub const MAC_OS_X_VERSION_10_7: u32 = 1070;
pub const MAC_OS_X_VERSION_10_8: u32 = 1080;
pub const MAC_OS_X_VERSION_10_9: u32 = 1090;
pub const MAC_OS_X_VERSION_10_10: u32 = 101000;
pub const MAC_OS_X_VERSION_10_10_2: u32 = 101002;
pub const MAC_OS_X_VERSION_10_10_3: u32 = 101003;
pub const MAC_OS_X_VERSION_10_11: u32 = 101100;
pub const MAC_OS_X_VERSION_10_11_2: u32 = 101102;
pub const MAC_OS_X_VERSION_10_11_3: u32 = 101103;
pub const MAC_OS_X_VERSION_10_11_4: u32 = 101104;
pub const MAC_OS_X_VERSION_10_12: u32 = 101200;
pub const MAC_OS_X_VERSION_10_12_1: u32 = 101201;
pub const MAC_OS_X_VERSION_10_12_2: u32 = 101202;
pub const MAC_OS_X_VERSION_10_12_4: u32 = 101204;
pub const MAC_OS_X_VERSION_10_13: u32 = 101300;
pub const MAC_OS_X_VERSION_10_13_1: u32 = 101301;
pub const MAC_OS_X_VERSION_10_13_2: u32 = 101302;
pub const MAC_OS_X_VERSION_10_13_4: u32 = 101304;
pub const MAC_OS_X_VERSION_10_14: u32 = 101400;
pub const MAC_OS_X_VERSION_10_14_1: u32 = 101401;
pub const MAC_OS_X_VERSION_10_14_4: u32 = 101404;
pub const MAC_OS_X_VERSION_10_14_5: u32 = 101405;
pub const MAC_OS_X_VERSION_10_14_6: u32 = 101406;
pub const MAC_OS_X_VERSION_10_15: u32 = 101500;
pub const MAC_OS_X_VERSION_10_15_1: u32 = 101501;
pub const MAC_OS_X_VERSION_10_15_4: u32 = 101504;
pub const MAC_OS_X_VERSION_10_16: u32 = 101600;
pub const MAC_OS_VERSION_11_0: u32 = 110000;
pub const MAC_OS_VERSION_11_1: u32 = 110100;
pub const MAC_OS_VERSION_11_3: u32 = 110300;
pub const MAC_OS_VERSION_11_4: u32 = 110400;
pub const MAC_OS_VERSION_11_5: u32 = 110500;
pub const MAC_OS_VERSION_11_6: u32 = 110600;
pub const MAC_OS_VERSION_12_0: u32 = 120000;
pub const MAC_OS_VERSION_12_1: u32 = 120100;
pub const MAC_OS_VERSION_12_2: u32 = 120200;
pub const MAC_OS_VERSION_12_3: u32 = 120300;
pub const MAC_OS_VERSION_12_4: u32 = 120400;
pub const MAC_OS_VERSION_12_5: u32 = 120500;
pub const MAC_OS_VERSION_12_6: u32 = 120600;
pub const MAC_OS_VERSION_12_7: u32 = 120700;
pub const MAC_OS_VERSION_13_0: u32 = 130000;
pub const MAC_OS_VERSION_13_1: u32 = 130100;
pub const MAC_OS_VERSION_13_2: u32 = 130200;
pub const MAC_OS_VERSION_13_3: u32 = 130300;
pub const MAC_OS_VERSION_13_4: u32 = 130400;
pub const MAC_OS_VERSION_13_5: u32 = 130500;
pub const MAC_OS_VERSION_13_6: u32 = 130600;
pub const MAC_OS_VERSION_14_0: u32 = 140000;
pub const MAC_OS_VERSION_14_1: u32 = 140100;
pub const MAC_OS_VERSION_14_2: u32 = 140200;
pub const MAC_OS_VERSION_14_3: u32 = 140300;
pub const MAC_OS_VERSION_14_4: u32 = 140400;
pub const __MAC_OS_X_VERSION_MAX_ALLOWED: u32 = 140400;
pub const __ENABLE_LEGACY_MAC_AVAILABILITY: u32 = 1;
pub const __DARWIN_FD_SETSIZE: u32 = 1024;
pub const __DARWIN_NBBY: u32 = 8;
pub const NBBY: u32 = 8;
pub const FD_SETSIZE: u32 = 1024;
pub const __WORDSIZE: u32 = 64;
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 INT8_MIN: i32 = -128;
pub const INT16_MIN: i32 = -32768;
pub const INT32_MIN: i32 = -2147483648;
pub const INT64_MIN: i64 = -9223372036854775808;
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_MAX: u64 = 9223372036854775807;
pub const INTPTR_MIN: i64 = -9223372036854775808;
pub const UINTPTR_MAX: i32 = -1;
pub const SIZE_MAX: i32 = -1;
pub const RSIZE_MAX: i32 = -1;
pub const WINT_MIN: i32 = -2147483648;
pub const WINT_MAX: u32 = 2147483647;
pub const SIG_ATOMIC_MIN: i32 = -2147483648;
pub const SIG_ATOMIC_MAX: u32 = 2147483647;
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 __int8_t = ::std::os::raw::c_schar;
pub type __uint8_t = ::std::os::raw::c_uchar;
pub type __int16_t = ::std::os::raw::c_short;
pub type __uint16_t = ::std::os::raw::c_ushort;
pub type __int32_t = ::std::os::raw::c_int;
pub type __uint32_t = ::std::os::raw::c_uint;
pub type __int64_t = ::std::os::raw::c_longlong;
pub type __uint64_t = ::std::os::raw::c_ulonglong;
pub type __darwin_intptr_t = ::std::os::raw::c_long;
pub type __darwin_natural_t = ::std::os::raw::c_uint;
pub type __darwin_ct_rune_t = ::std::os::raw::c_int;
#[repr(C)]
#[derive(Copy, Clone)]
pub union __mbstate_t {
pub __mbstate8: [::std::os::raw::c_char; 128usize],
pub _mbstateL: ::std::os::raw::c_longlong,
}
#[test]
fn bindgen_test_layout___mbstate_t() {
const UNINIT: ::std::mem::MaybeUninit<__mbstate_t> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<__mbstate_t>(),
128usize,
concat!("Size of: ", stringify!(__mbstate_t))
);
assert_eq!(
::std::mem::align_of::<__mbstate_t>(),
8usize,
concat!("Alignment of ", stringify!(__mbstate_t))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__mbstate8) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(__mbstate_t),
"::",
stringify!(__mbstate8)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr)._mbstateL) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(__mbstate_t),
"::",
stringify!(_mbstateL)
)
);
}
pub type __darwin_mbstate_t = __mbstate_t;
pub type __darwin_ptrdiff_t = ::std::os::raw::c_long;
pub type __darwin_size_t = ::std::os::raw::c_ulong;
pub type __darwin_va_list = __builtin_va_list;
pub type __darwin_wchar_t = ::std::os::raw::c_int;
pub type __darwin_rune_t = __darwin_wchar_t;
pub type __darwin_wint_t = ::std::os::raw::c_int;
pub type __darwin_clock_t = ::std::os::raw::c_ulong;
pub type __darwin_socklen_t = __uint32_t;
pub type __darwin_ssize_t = ::std::os::raw::c_long;
pub type __darwin_time_t = ::std::os::raw::c_long;
pub type u_int8_t = ::std::os::raw::c_uchar;
pub type u_int16_t = ::std::os::raw::c_ushort;
pub type u_int32_t = ::std::os::raw::c_uint;
pub type u_int64_t = ::std::os::raw::c_ulonglong;
pub type register_t = i64;
pub type user_addr_t = u_int64_t;
pub type user_size_t = u_int64_t;
pub type user_ssize_t = i64;
pub type user_long_t = i64;
pub type user_ulong_t = u_int64_t;
pub type user_time_t = i64;
pub type user_off_t = i64;
pub type syscall_arg_t = u_int64_t;
pub type __darwin_blkcnt_t = __int64_t;
pub type __darwin_blksize_t = __int32_t;
pub type __darwin_dev_t = __int32_t;
pub type __darwin_fsblkcnt_t = ::std::os::raw::c_uint;
pub type __darwin_fsfilcnt_t = ::std::os::raw::c_uint;
pub type __darwin_gid_t = __uint32_t;
pub type __darwin_id_t = __uint32_t;
pub type __darwin_ino64_t = __uint64_t;
pub type __darwin_ino_t = __darwin_ino64_t;
pub type __darwin_mach_port_name_t = __darwin_natural_t;
pub type __darwin_mach_port_t = __darwin_mach_port_name_t;
pub type __darwin_mode_t = __uint16_t;
pub type __darwin_off_t = __int64_t;
pub type __darwin_pid_t = __int32_t;
pub type __darwin_sigset_t = __uint32_t;
pub type __darwin_suseconds_t = __int32_t;
pub type __darwin_uid_t = __uint32_t;
pub type __darwin_useconds_t = __uint32_t;
pub type __darwin_uuid_t = [::std::os::raw::c_uchar; 16usize];
pub type __darwin_uuid_string_t = [::std::os::raw::c_char; 37usize];
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __darwin_pthread_handler_rec {
pub __routine: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
pub __arg: *mut ::std::os::raw::c_void,
pub __next: *mut __darwin_pthread_handler_rec,
}
#[test]
fn bindgen_test_layout___darwin_pthread_handler_rec() {
const UNINIT: ::std::mem::MaybeUninit<__darwin_pthread_handler_rec> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<__darwin_pthread_handler_rec>(),
24usize,
concat!("Size of: ", stringify!(__darwin_pthread_handler_rec))
);
assert_eq!(
::std::mem::align_of::<__darwin_pthread_handler_rec>(),
8usize,
concat!("Alignment of ", stringify!(__darwin_pthread_handler_rec))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__routine) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(__darwin_pthread_handler_rec),
"::",
stringify!(__routine)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__arg) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(__darwin_pthread_handler_rec),
"::",
stringify!(__arg)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__next) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(__darwin_pthread_handler_rec),
"::",
stringify!(__next)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _opaque_pthread_attr_t {
pub __sig: ::std::os::raw::c_long,
pub __opaque: [::std::os::raw::c_char; 56usize],
}
#[test]
fn bindgen_test_layout__opaque_pthread_attr_t() {
const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_attr_t> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_opaque_pthread_attr_t>(),
64usize,
concat!("Size of: ", stringify!(_opaque_pthread_attr_t))
);
assert_eq!(
::std::mem::align_of::<_opaque_pthread_attr_t>(),
8usize,
concat!("Alignment of ", stringify!(_opaque_pthread_attr_t))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_opaque_pthread_attr_t),
"::",
stringify!(__sig)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_opaque_pthread_attr_t),
"::",
stringify!(__opaque)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _opaque_pthread_cond_t {
pub __sig: ::std::os::raw::c_long,
pub __opaque: [::std::os::raw::c_char; 40usize],
}
#[test]
fn bindgen_test_layout__opaque_pthread_cond_t() {
const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_cond_t> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_opaque_pthread_cond_t>(),
48usize,
concat!("Size of: ", stringify!(_opaque_pthread_cond_t))
);
assert_eq!(
::std::mem::align_of::<_opaque_pthread_cond_t>(),
8usize,
concat!("Alignment of ", stringify!(_opaque_pthread_cond_t))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_opaque_pthread_cond_t),
"::",
stringify!(__sig)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_opaque_pthread_cond_t),
"::",
stringify!(__opaque)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _opaque_pthread_condattr_t {
pub __sig: ::std::os::raw::c_long,
pub __opaque: [::std::os::raw::c_char; 8usize],
}
#[test]
fn bindgen_test_layout__opaque_pthread_condattr_t() {
const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_condattr_t> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_opaque_pthread_condattr_t>(),
16usize,
concat!("Size of: ", stringify!(_opaque_pthread_condattr_t))
);
assert_eq!(
::std::mem::align_of::<_opaque_pthread_condattr_t>(),
8usize,
concat!("Alignment of ", stringify!(_opaque_pthread_condattr_t))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_opaque_pthread_condattr_t),
"::",
stringify!(__sig)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_opaque_pthread_condattr_t),
"::",
stringify!(__opaque)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _opaque_pthread_mutex_t {
pub __sig: ::std::os::raw::c_long,
pub __opaque: [::std::os::raw::c_char; 56usize],
}
#[test]
fn bindgen_test_layout__opaque_pthread_mutex_t() {
const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_mutex_t> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_opaque_pthread_mutex_t>(),
64usize,
concat!("Size of: ", stringify!(_opaque_pthread_mutex_t))
);
assert_eq!(
::std::mem::align_of::<_opaque_pthread_mutex_t>(),
8usize,
concat!("Alignment of ", stringify!(_opaque_pthread_mutex_t))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_opaque_pthread_mutex_t),
"::",
stringify!(__sig)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_opaque_pthread_mutex_t),
"::",
stringify!(__opaque)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _opaque_pthread_mutexattr_t {
pub __sig: ::std::os::raw::c_long,
pub __opaque: [::std::os::raw::c_char; 8usize],
}
#[test]
fn bindgen_test_layout__opaque_pthread_mutexattr_t() {
const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_mutexattr_t> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_opaque_pthread_mutexattr_t>(),
16usize,
concat!("Size of: ", stringify!(_opaque_pthread_mutexattr_t))
);
assert_eq!(
::std::mem::align_of::<_opaque_pthread_mutexattr_t>(),
8usize,
concat!("Alignment of ", stringify!(_opaque_pthread_mutexattr_t))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_opaque_pthread_mutexattr_t),
"::",
stringify!(__sig)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_opaque_pthread_mutexattr_t),
"::",
stringify!(__opaque)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _opaque_pthread_once_t {
pub __sig: ::std::os::raw::c_long,
pub __opaque: [::std::os::raw::c_char; 8usize],
}
#[test]
fn bindgen_test_layout__opaque_pthread_once_t() {
const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_once_t> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_opaque_pthread_once_t>(),
16usize,
concat!("Size of: ", stringify!(_opaque_pthread_once_t))
);
assert_eq!(
::std::mem::align_of::<_opaque_pthread_once_t>(),
8usize,
concat!("Alignment of ", stringify!(_opaque_pthread_once_t))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_opaque_pthread_once_t),
"::",
stringify!(__sig)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_opaque_pthread_once_t),
"::",
stringify!(__opaque)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _opaque_pthread_rwlock_t {
pub __sig: ::std::os::raw::c_long,
pub __opaque: [::std::os::raw::c_char; 192usize],
}
#[test]
fn bindgen_test_layout__opaque_pthread_rwlock_t() {
const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_rwlock_t> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_opaque_pthread_rwlock_t>(),
200usize,
concat!("Size of: ", stringify!(_opaque_pthread_rwlock_t))
);
assert_eq!(
::std::mem::align_of::<_opaque_pthread_rwlock_t>(),
8usize,
concat!("Alignment of ", stringify!(_opaque_pthread_rwlock_t))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_opaque_pthread_rwlock_t),
"::",
stringify!(__sig)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_opaque_pthread_rwlock_t),
"::",
stringify!(__opaque)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _opaque_pthread_rwlockattr_t {
pub __sig: ::std::os::raw::c_long,
pub __opaque: [::std::os::raw::c_char; 16usize],
}
#[test]
fn bindgen_test_layout__opaque_pthread_rwlockattr_t() {
const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_rwlockattr_t> =
::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_opaque_pthread_rwlockattr_t>(),
24usize,
concat!("Size of: ", stringify!(_opaque_pthread_rwlockattr_t))
);
assert_eq!(
::std::mem::align_of::<_opaque_pthread_rwlockattr_t>(),
8usize,
concat!("Alignment of ", stringify!(_opaque_pthread_rwlockattr_t))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_opaque_pthread_rwlockattr_t),
"::",
stringify!(__sig)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_opaque_pthread_rwlockattr_t),
"::",
stringify!(__opaque)
)
);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _opaque_pthread_t {
pub __sig: ::std::os::raw::c_long,
pub __cleanup_stack: *mut __darwin_pthread_handler_rec,
pub __opaque: [::std::os::raw::c_char; 8176usize],
}
#[test]
fn bindgen_test_layout__opaque_pthread_t() {
const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_t> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<_opaque_pthread_t>(),
8192usize,
concat!("Size of: ", stringify!(_opaque_pthread_t))
);
assert_eq!(
::std::mem::align_of::<_opaque_pthread_t>(),
8usize,
concat!("Alignment of ", stringify!(_opaque_pthread_t))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(_opaque_pthread_t),
"::",
stringify!(__sig)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__cleanup_stack) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(_opaque_pthread_t),
"::",
stringify!(__cleanup_stack)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(_opaque_pthread_t),
"::",
stringify!(__opaque)
)
);
}
pub type __darwin_pthread_attr_t = _opaque_pthread_attr_t;
pub type __darwin_pthread_cond_t = _opaque_pthread_cond_t;
pub type __darwin_pthread_condattr_t = _opaque_pthread_condattr_t;
pub type __darwin_pthread_key_t = ::std::os::raw::c_ulong;
pub type __darwin_pthread_mutex_t = _opaque_pthread_mutex_t;
pub type __darwin_pthread_mutexattr_t = _opaque_pthread_mutexattr_t;
pub type __darwin_pthread_once_t = _opaque_pthread_once_t;
pub type __darwin_pthread_rwlock_t = _opaque_pthread_rwlock_t;
pub type __darwin_pthread_rwlockattr_t = _opaque_pthread_rwlockattr_t;
pub type __darwin_pthread_t = *mut _opaque_pthread_t;
pub type u_char = ::std::os::raw::c_uchar;
pub type u_short = ::std::os::raw::c_ushort;
pub type u_int = ::std::os::raw::c_uint;
pub type u_long = ::std::os::raw::c_ulong;
pub type ushort = ::std::os::raw::c_ushort;
pub type uint = ::std::os::raw::c_uint;
pub type u_quad_t = u_int64_t;
pub type quad_t = i64;
pub type qaddr_t = *mut quad_t;
pub type caddr_t = *mut ::std::os::raw::c_char;
pub type daddr_t = i32;
pub type dev_t = __darwin_dev_t;
pub type fixpt_t = u_int32_t;
pub type blkcnt_t = __darwin_blkcnt_t;
pub type blksize_t = __darwin_blksize_t;
pub type gid_t = __darwin_gid_t;
pub type in_addr_t = __uint32_t;
pub type in_port_t = __uint16_t;
pub type ino_t = __darwin_ino_t;
pub type ino64_t = __darwin_ino64_t;
pub type key_t = __int32_t;
pub type mode_t = __darwin_mode_t;
pub type nlink_t = __uint16_t;
pub type id_t = __darwin_id_t;
pub type pid_t = __darwin_pid_t;
pub type off_t = __darwin_off_t;
pub type segsz_t = i32;
pub type swblk_t = i32;
pub type uid_t = __darwin_uid_t;
pub type clock_t = __darwin_clock_t;
pub type time_t = __darwin_time_t;
pub type useconds_t = __darwin_useconds_t;
pub type suseconds_t = __darwin_suseconds_t;
pub type rsize_t = __darwin_size_t;
pub type errno_t = ::std::os::raw::c_int;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct fd_set {
pub fds_bits: [__int32_t; 32usize],
}
#[test]
fn bindgen_test_layout_fd_set() {
const UNINIT: ::std::mem::MaybeUninit<fd_set> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<fd_set>(),
128usize,
concat!("Size of: ", stringify!(fd_set))
);
assert_eq!(
::std::mem::align_of::<fd_set>(),
4usize,
concat!("Alignment of ", stringify!(fd_set))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).fds_bits) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(fd_set),
"::",
stringify!(fds_bits)
)
);
}
extern "C" {
pub fn __darwin_check_fd_set_overflow(
arg1: ::std::os::raw::c_int,
arg2: *const ::std::os::raw::c_void,
arg3: ::std::os::raw::c_int,
) -> ::std::os::raw::c_int;
}
pub type fd_mask = __int32_t;
pub type pthread_attr_t = __darwin_pthread_attr_t;
pub type pthread_cond_t = __darwin_pthread_cond_t;
pub type pthread_condattr_t = __darwin_pthread_condattr_t;
pub type pthread_mutex_t = __darwin_pthread_mutex_t;
pub type pthread_mutexattr_t = __darwin_pthread_mutexattr_t;
pub type pthread_once_t = __darwin_pthread_once_t;
pub type pthread_rwlock_t = __darwin_pthread_rwlock_t;
pub type pthread_rwlockattr_t = __darwin_pthread_rwlockattr_t;
pub type pthread_t = __darwin_pthread_t;
pub type pthread_key_t = __darwin_pthread_key_t;
pub type fsblkcnt_t = __darwin_fsblkcnt_t;
pub type fsfilcnt_t = __darwin_fsfilcnt_t;
pub type int_least8_t = i8;
pub type int_least16_t = i16;
pub type int_least32_t = i32;
pub type int_least64_t = i64;
pub type uint_least8_t = u8;
pub type uint_least16_t = u16;
pub type uint_least32_t = u32;
pub type uint_least64_t = u64;
pub type int_fast8_t = i8;
pub type int_fast16_t = i16;
pub type int_fast32_t = i32;
pub type int_fast64_t = i64;
pub type uint_fast8_t = u8;
pub type uint_fast16_t = u16;
pub type uint_fast32_t = u32;
pub type uint_fast64_t = u64;
pub type intmax_t = ::std::os::raw::c_long;
pub type uintmax_t = ::std::os::raw::c_ulong;
#[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: uid_t,
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: ::std::os::raw::c_int,
) -> ::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 = [__va_list_tag; 1usize];
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __va_list_tag {
pub gp_offset: ::std::os::raw::c_uint,
pub fp_offset: ::std::os::raw::c_uint,
pub overflow_arg_area: *mut ::std::os::raw::c_void,
pub reg_save_area: *mut ::std::os::raw::c_void,
}
#[test]
fn bindgen_test_layout___va_list_tag() {
const UNINIT: ::std::mem::MaybeUninit<__va_list_tag> = ::std::mem::MaybeUninit::uninit();
let ptr = UNINIT.as_ptr();
assert_eq!(
::std::mem::size_of::<__va_list_tag>(),
24usize,
concat!("Size of: ", stringify!(__va_list_tag))
);
assert_eq!(
::std::mem::align_of::<__va_list_tag>(),
8usize,
concat!("Alignment of ", stringify!(__va_list_tag))
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).gp_offset) as usize - ptr as usize },
0usize,
concat!(
"Offset of field: ",
stringify!(__va_list_tag),
"::",
stringify!(gp_offset)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).fp_offset) as usize - ptr as usize },
4usize,
concat!(
"Offset of field: ",
stringify!(__va_list_tag),
"::",
stringify!(fp_offset)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).overflow_arg_area) as usize - ptr as usize },
8usize,
concat!(
"Offset of field: ",
stringify!(__va_list_tag),
"::",
stringify!(overflow_arg_area)
)
);
assert_eq!(
unsafe { ::std::ptr::addr_of!((*ptr).reg_save_area) as usize - ptr as usize },
16usize,
concat!(
"Offset of field: ",
stringify!(__va_list_tag),
"::",
stringify!(reg_save_area)
)
);
}