diff --git a/openssl-sys/src/x509.rs b/openssl-sys/src/x509.rs index 99956fb0..847be83e 100644 --- a/openssl-sys/src/x509.rs +++ b/openssl-sys/src/x509.rs @@ -85,7 +85,7 @@ cfg_if! { } else { #[repr(C)] pub struct X509_OBJECT { - pub type_: X509_LOOKUP_TYPE, + pub type_: c_int, pub data: X509_OBJECT_data, } #[repr(C)] diff --git a/systest/build.rs b/systest/build.rs index 8ff03c87..e60e37ce 100644 --- a/systest/build.rs +++ b/systest/build.rs @@ -97,7 +97,9 @@ fn main() { || s == "bio_info_cb" || s.starts_with("CRYPTO_EX_") }); - cfg.skip_struct(|s| s == "ProbeResult"); + cfg.skip_struct(|s| { + s == "ProbeResult" || s == "X509_OBJECT_data" // inline union + }); cfg.skip_fn(move |s| { s == "CRYPTO_memcmp" || // uses volatile @@ -114,7 +116,8 @@ fn main() { }); cfg.skip_field_type(|s, field| { (s == "EVP_PKEY" && field == "pkey") || // union - (s == "GENERAL_NAME" && field == "d") // union + (s == "GENERAL_NAME" && field == "d") || // union + (s == "X509_OBJECT" && field == "data") // union }); cfg.skip_signededness(|s| { s.ends_with("_cb")