Skip to content

Commit 3e64198

Browse files
authored
Merge pull request #255 from Jakuje/message-encrypt
Add support for message-based encryption and decryption (PKCS#11 3.0)
2 parents 3869b37 + 614c946 commit 3e64198

25 files changed

+3253
-128
lines changed

cryptoki-sys/src/bindings/aarch64-apple-darwin.rs

+212-6
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/* automatically generated by rust-bindgen 0.70.1 */
22

33
pub const CRYPTOKI_VERSION_MAJOR: CK_BYTE = 3;
4-
pub const CRYPTOKI_VERSION_MINOR: CK_BYTE = 0;
4+
pub const CRYPTOKI_VERSION_MINOR: CK_BYTE = 1;
55
pub const CRYPTOKI_VERSION_AMENDMENT: CK_BYTE = 0;
66
pub const CK_EFFECTIVELY_INFINITE: CK_ULONG = 0;
77
pub const CK_INVALID_HANDLE: CK_ULONG = 0;
@@ -156,6 +156,12 @@ pub const CKA_X2RATCHET_NR: CK_ATTRIBUTE_TYPE = 1551;
156156
pub const CKA_X2RATCHET_NS: CK_ATTRIBUTE_TYPE = 1552;
157157
pub const CKA_X2RATCHET_PNS: CK_ATTRIBUTE_TYPE = 1553;
158158
pub const CKA_X2RATCHET_RK: CK_ATTRIBUTE_TYPE = 1554;
159+
pub const CKA_HSS_LEVELS: CK_ATTRIBUTE_TYPE = 1559;
160+
pub const CKA_HSS_LMS_TYPE: CK_ATTRIBUTE_TYPE = 1560;
161+
pub const CKA_HSS_LMOTS_TYPE: CK_ATTRIBUTE_TYPE = 1561;
162+
pub const CKA_HSS_LMS_TYPES: CK_ATTRIBUTE_TYPE = 1562;
163+
pub const CKA_HSS_LMOTS_TYPES: CK_ATTRIBUTE_TYPE = 1563;
164+
pub const CKA_HSS_KEYS_REMAINING: CK_ATTRIBUTE_TYPE = 1564;
159165
pub const CKA_VENDOR_DEFINED: CK_ATTRIBUTE_TYPE = 2147483648;
160166
pub const CKA_WRAP_TEMPLATE: CK_ATTRIBUTE_TYPE = 1073742353;
161167
pub const CKA_UNWRAP_TEMPLATE: CK_ATTRIBUTE_TYPE = 1073742354;
@@ -266,6 +272,7 @@ pub const CKG_NO_GENERATE: CK_GENERATOR_FUNCTION = 0;
266272
pub const CKG_GENERATE: CK_GENERATOR_FUNCTION = 1;
267273
pub const CKG_GENERATE_COUNTER: CK_GENERATOR_FUNCTION = 2;
268274
pub const CKG_GENERATE_RANDOM: CK_GENERATOR_FUNCTION = 3;
275+
pub const CKG_GENERATE_COUNTER_XOR: CK_GENERATOR_FUNCTION = 4;
269276
pub const CKG_MGF1_SHA1: CK_GENERATOR_FUNCTION = 1;
270277
pub const CKG_MGF1_SHA256: CK_GENERATOR_FUNCTION = 2;
271278
pub const CKG_MGF1_SHA384: CK_GENERATOR_FUNCTION = 3;
@@ -339,6 +346,7 @@ pub const CKK_HKDF: CK_KEY_TYPE = 66;
339346
pub const CKK_SHA512_224_HMAC: CK_KEY_TYPE = 67;
340347
pub const CKK_SHA512_256_HMAC: CK_KEY_TYPE = 68;
341348
pub const CKK_SHA512_T_HMAC: CK_KEY_TYPE = 69;
349+
pub const CKK_HSS: CK_KEY_TYPE = 70;
342350
pub const CKK_VENDOR_DEFINED: CK_KEY_TYPE = 2147483648;
343351
pub const CKK_ECDSA: CK_KEY_TYPE = 3;
344352
pub const CKK_CAST5: CK_KEY_TYPE = 24;
@@ -714,6 +722,7 @@ pub const CKM_AES_CFB1: CK_MECHANISM_TYPE = 8456;
714722
pub const CKM_AES_KEY_WRAP: CK_MECHANISM_TYPE = 8457;
715723
pub const CKM_AES_KEY_WRAP_PAD: CK_MECHANISM_TYPE = 8458;
716724
pub const CKM_AES_KEY_WRAP_KWP: CK_MECHANISM_TYPE = 8459;
725+
pub const CKM_AES_KEY_WRAP_PKCS7: CK_MECHANISM_TYPE = 8460;
717726
pub const CKM_RSA_PKCS_TPM_1_1: CK_MECHANISM_TYPE = 16385;
718727
pub const CKM_RSA_PKCS_OAEP_TPM_1_1: CK_MECHANISM_TYPE = 16386;
719728
pub const CKM_SHA_1_KEY_GEN: CK_MECHANISM_TYPE = 16387;
@@ -769,6 +778,12 @@ pub const CKM_EDDSA: CK_MECHANISM_TYPE = 4183;
769778
pub const CKM_SP800_108_COUNTER_KDF: CK_MECHANISM_TYPE = 940;
770779
pub const CKM_SP800_108_FEEDBACK_KDF: CK_MECHANISM_TYPE = 941;
771780
pub const CKM_SP800_108_DOUBLE_PIPELINE_KDF: CK_MECHANISM_TYPE = 942;
781+
pub const CKM_IKE2_PRF_PLUS_DERIVE: CK_MECHANISM_TYPE = 16430;
782+
pub const CKM_IKE_PRF_DERIVE: CK_MECHANISM_TYPE = 16431;
783+
pub const CKM_IKE1_PRF_DERIVE: CK_MECHANISM_TYPE = 16432;
784+
pub const CKM_IKE1_EXTENDED_DERIVE: CK_MECHANISM_TYPE = 16433;
785+
pub const CKM_HSS_KEY_PAIR_GEN: CK_MECHANISM_TYPE = 16434;
786+
pub const CKM_HSS: CK_MECHANISM_TYPE = 16435;
772787
pub const CKM_VENDOR_DEFINED: CK_MECHANISM_TYPE = 2147483648;
773788
pub const CKM_CAST5_KEY_GEN: CK_MECHANISM_TYPE = 800;
774789
pub const CKM_CAST5_CBC: CK_MECHANISM_TYPE = 802;
@@ -796,6 +811,8 @@ pub const CKP_BASELINE_PROVIDER: CK_PROFILE_ID = 1;
796811
pub const CKP_EXTENDED_PROVIDER: CK_PROFILE_ID = 2;
797812
pub const CKP_AUTHENTICATION_TOKEN: CK_PROFILE_ID = 3;
798813
pub const CKP_PUBLIC_CERTIFICATES_TOKEN: CK_PROFILE_ID = 4;
814+
pub const CKP_COMPLETE_PROVIDER: CK_PROFILE_ID = 5;
815+
pub const CKP_HKDF_TLS_TOKEN: CK_PROFILE_ID = 6;
799816
pub const CKP_VENDOR_DEFINED: CK_PROFILE_ID = 2147483648;
800817
pub const CKP_PKCS5_PBKD2_HMAC_SHA1: CK_PROFILE_ID = 1;
801818
pub const CKP_PKCS5_PBKD2_HMAC_GOSTR3411: CK_PROFILE_ID = 2;
@@ -902,6 +919,7 @@ pub const CKR_PUBLIC_KEY_INVALID: CK_RV = 441;
902919
pub const CKR_FUNCTION_REJECTED: CK_RV = 512;
903920
pub const CKR_TOKEN_RESOURCE_EXCEEDED: CK_RV = 513;
904921
pub const CKR_OPERATION_CANCEL_FAILED: CK_RV = 514;
922+
pub const CKR_KEY_EXHAUSTED: CK_RV = 515;
905923
pub const CKR_VENDOR_DEFINED: CK_RV = 2147483648;
906924
pub const CKS_RO_PUBLIC_SESSION: CK_STATE = 0;
907925
pub const CKS_RO_USER_FUNCTIONS: CK_STATE = 1;
@@ -939,12 +957,18 @@ pub type CK_FLAGS = CK_ULONG;
939957
pub type CK_FLAGS_PTR = *mut CK_FLAGS;
940958
pub type CK_GENERATOR_FUNCTION = CK_ULONG;
941959
pub type CK_GENERATOR_FUNCTION_PTR = *mut CK_GENERATOR_FUNCTION;
960+
pub type CK_HSS_LEVELS = CK_ULONG;
961+
pub type CK_HSS_LEVELS_PTR = *mut CK_HSS_LEVELS;
942962
pub type CK_HW_FEATURE_TYPE = CK_ULONG;
943963
pub type CK_HW_FEATURE_TYPE_PTR = *mut CK_HW_FEATURE_TYPE;
944964
pub type CK_JAVA_MIDP_SECURITY_DOMAIN = CK_ULONG;
945965
pub type CK_JAVA_MIDP_SECURITY_DOMAIN_PTR = *mut CK_JAVA_MIDP_SECURITY_DOMAIN;
946966
pub type CK_KEY_TYPE = CK_ULONG;
947967
pub type CK_KEY_TYPE_PTR = *mut CK_KEY_TYPE;
968+
pub type CK_LMS_TYPE = CK_ULONG;
969+
pub type CK_LMS_TYPE_PTR = *mut CK_LMS_TYPE;
970+
pub type CK_LMOTS_TYPE = CK_ULONG;
971+
pub type CK_LMOTS_TYPE_PTR = *mut CK_LMOTS_TYPE;
948972
pub type CK_MAC_GENERAL_PARAMS = CK_ULONG;
949973
pub type CK_MAC_GENERAL_PARAMS_PTR = *mut CK_MAC_GENERAL_PARAMS;
950974
pub type CK_MECHANISM_TYPE = CK_ULONG;
@@ -1409,6 +1433,14 @@ pub type CK_GOSTR3410_KEY_WRAP_PARAMS_PTR = *mut CK_GOSTR3410_KEY_WRAP_PARAMS;
14091433
pub type CK_GOSTR3410_KEY_WRAP_PARAMS_PTR_PTR = *mut *mut CK_GOSTR3410_KEY_WRAP_PARAMS;
14101434
pub type CK_HKDF_PARAMS_PTR = *mut CK_HKDF_PARAMS;
14111435
pub type CK_HKDF_PARAMS_PTR_PTR = *mut *mut CK_HKDF_PARAMS;
1436+
pub type CK_IKE_PRF_DERIVE_PARAMS_PTR = *mut CK_IKE_PRF_DERIVE_PARAMS;
1437+
pub type CK_IKE_PRF_DERIVE_PARAMS_PTR_PTR = *mut *mut CK_IKE_PRF_DERIVE_PARAMS;
1438+
pub type CK_IKE1_EXTENDED_DERIVE_PARAMS_PTR = *mut CK_IKE1_EXTENDED_DERIVE_PARAMS;
1439+
pub type CK_IKE1_EXTENDED_DERIVE_PARAMS_PTR_PTR = *mut *mut CK_IKE1_EXTENDED_DERIVE_PARAMS;
1440+
pub type CK_IKE1_PRF_DERIVE_PARAMS_PTR = *mut CK_IKE1_PRF_DERIVE_PARAMS;
1441+
pub type CK_IKE1_PRF_DERIVE_PARAMS_PTR_PTR = *mut *mut CK_IKE1_PRF_DERIVE_PARAMS;
1442+
pub type CK_IKE2_PRF_PLUS_DERIVE_PARAMS_PTR = *mut CK_IKE2_PRF_PLUS_DERIVE_PARAMS;
1443+
pub type CK_IKE2_PRF_PLUS_DERIVE_PARAMS_PTR_PTR = *mut *mut CK_IKE2_PRF_PLUS_DERIVE_PARAMS;
14121444
pub type CK_KEA_DERIVE_PARAMS_PTR = *mut CK_KEA_DERIVE_PARAMS;
14131445
pub type CK_KEA_DERIVE_PARAMS_PTR_PTR = *mut *mut CK_KEA_DERIVE_PARAMS;
14141446
pub type CK_KEY_DERIVATION_STRING_DATA_PTR = *mut CK_KEY_DERIVATION_STRING_DATA;
@@ -1485,11 +1517,6 @@ pub type CK_X9_42_MQV_DERIVE_PARAMS_PTR = *mut CK_X9_42_MQV_DERIVE_PARAMS;
14851517
pub type CK_X9_42_MQV_DERIVE_PARAMS_PTR_PTR = *mut *mut CK_X9_42_MQV_DERIVE_PARAMS;
14861518
pub type CK_XEDDSA_PARAMS_PTR = *mut CK_XEDDSA_PARAMS;
14871519
pub type CK_XEDDSA_PARAMS_PTR_PTR = *mut *mut CK_XEDDSA_PARAMS;
1488-
#[repr(C)]
1489-
#[derive(Debug, Copy, Clone)]
1490-
pub struct specifiedParams {
1491-
_unused: [u8; 0],
1492-
}
14931520
pub type specifiedParams_PTR = *mut specifiedParams;
14941521
pub type specifiedParams_PTR_PTR = *mut *mut specifiedParams;
14951522
#[repr(C)]
@@ -2266,6 +2293,167 @@ impl Default for CK_HKDF_PARAMS {
22662293
}
22672294
#[repr(C)]
22682295
#[derive(Debug, Copy, Clone)]
2296+
pub struct CK_IKE_PRF_DERIVE_PARAMS {
2297+
pub prfMechanism: CK_MECHANISM_TYPE,
2298+
pub bDataAsKey: CK_BBOOL,
2299+
pub bRekey: CK_BBOOL,
2300+
pub pNi: *mut CK_BYTE,
2301+
pub ulNiLen: CK_ULONG,
2302+
pub pNr: *mut CK_BYTE,
2303+
pub ulNrLen: CK_ULONG,
2304+
pub hNewKey: CK_OBJECT_HANDLE,
2305+
}
2306+
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2307+
const _: () = {
2308+
["Size of CK_IKE_PRF_DERIVE_PARAMS"]
2309+
[::std::mem::size_of::<CK_IKE_PRF_DERIVE_PARAMS>() - 56usize];
2310+
["Alignment of CK_IKE_PRF_DERIVE_PARAMS"]
2311+
[::std::mem::align_of::<CK_IKE_PRF_DERIVE_PARAMS>() - 8usize];
2312+
["Offset of field: CK_IKE_PRF_DERIVE_PARAMS::prfMechanism"]
2313+
[::std::mem::offset_of!(CK_IKE_PRF_DERIVE_PARAMS, prfMechanism) - 0usize];
2314+
["Offset of field: CK_IKE_PRF_DERIVE_PARAMS::bDataAsKey"]
2315+
[::std::mem::offset_of!(CK_IKE_PRF_DERIVE_PARAMS, bDataAsKey) - 8usize];
2316+
["Offset of field: CK_IKE_PRF_DERIVE_PARAMS::bRekey"]
2317+
[::std::mem::offset_of!(CK_IKE_PRF_DERIVE_PARAMS, bRekey) - 9usize];
2318+
["Offset of field: CK_IKE_PRF_DERIVE_PARAMS::pNi"]
2319+
[::std::mem::offset_of!(CK_IKE_PRF_DERIVE_PARAMS, pNi) - 16usize];
2320+
["Offset of field: CK_IKE_PRF_DERIVE_PARAMS::ulNiLen"]
2321+
[::std::mem::offset_of!(CK_IKE_PRF_DERIVE_PARAMS, ulNiLen) - 24usize];
2322+
["Offset of field: CK_IKE_PRF_DERIVE_PARAMS::pNr"]
2323+
[::std::mem::offset_of!(CK_IKE_PRF_DERIVE_PARAMS, pNr) - 32usize];
2324+
["Offset of field: CK_IKE_PRF_DERIVE_PARAMS::ulNrLen"]
2325+
[::std::mem::offset_of!(CK_IKE_PRF_DERIVE_PARAMS, ulNrLen) - 40usize];
2326+
["Offset of field: CK_IKE_PRF_DERIVE_PARAMS::hNewKey"]
2327+
[::std::mem::offset_of!(CK_IKE_PRF_DERIVE_PARAMS, hNewKey) - 48usize];
2328+
};
2329+
impl Default for CK_IKE_PRF_DERIVE_PARAMS {
2330+
fn default() -> Self {
2331+
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
2332+
unsafe {
2333+
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
2334+
s.assume_init()
2335+
}
2336+
}
2337+
}
2338+
#[repr(C)]
2339+
#[derive(Debug, Copy, Clone)]
2340+
pub struct CK_IKE1_EXTENDED_DERIVE_PARAMS {
2341+
pub prfMechanism: CK_MECHANISM_TYPE,
2342+
pub bHasKeygxy: CK_BBOOL,
2343+
pub hKeygxy: CK_OBJECT_HANDLE,
2344+
pub pExtraData: *mut CK_BYTE,
2345+
pub ulExtraDataLen: CK_ULONG,
2346+
}
2347+
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2348+
const _: () = {
2349+
["Size of CK_IKE1_EXTENDED_DERIVE_PARAMS"]
2350+
[::std::mem::size_of::<CK_IKE1_EXTENDED_DERIVE_PARAMS>() - 40usize];
2351+
["Alignment of CK_IKE1_EXTENDED_DERIVE_PARAMS"]
2352+
[::std::mem::align_of::<CK_IKE1_EXTENDED_DERIVE_PARAMS>() - 8usize];
2353+
["Offset of field: CK_IKE1_EXTENDED_DERIVE_PARAMS::prfMechanism"]
2354+
[::std::mem::offset_of!(CK_IKE1_EXTENDED_DERIVE_PARAMS, prfMechanism) - 0usize];
2355+
["Offset of field: CK_IKE1_EXTENDED_DERIVE_PARAMS::bHasKeygxy"]
2356+
[::std::mem::offset_of!(CK_IKE1_EXTENDED_DERIVE_PARAMS, bHasKeygxy) - 8usize];
2357+
["Offset of field: CK_IKE1_EXTENDED_DERIVE_PARAMS::hKeygxy"]
2358+
[::std::mem::offset_of!(CK_IKE1_EXTENDED_DERIVE_PARAMS, hKeygxy) - 16usize];
2359+
["Offset of field: CK_IKE1_EXTENDED_DERIVE_PARAMS::pExtraData"]
2360+
[::std::mem::offset_of!(CK_IKE1_EXTENDED_DERIVE_PARAMS, pExtraData) - 24usize];
2361+
["Offset of field: CK_IKE1_EXTENDED_DERIVE_PARAMS::ulExtraDataLen"]
2362+
[::std::mem::offset_of!(CK_IKE1_EXTENDED_DERIVE_PARAMS, ulExtraDataLen) - 32usize];
2363+
};
2364+
impl Default for CK_IKE1_EXTENDED_DERIVE_PARAMS {
2365+
fn default() -> Self {
2366+
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
2367+
unsafe {
2368+
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
2369+
s.assume_init()
2370+
}
2371+
}
2372+
}
2373+
#[repr(C)]
2374+
#[derive(Debug, Copy, Clone)]
2375+
pub struct CK_IKE1_PRF_DERIVE_PARAMS {
2376+
pub prfMechanism: CK_MECHANISM_TYPE,
2377+
pub bHasPrevKey: CK_BBOOL,
2378+
pub hKeygxy: CK_OBJECT_HANDLE,
2379+
pub hPrevKey: CK_OBJECT_HANDLE,
2380+
pub pCKYi: *mut CK_BYTE,
2381+
pub ulCKYiLen: CK_ULONG,
2382+
pub pCKYr: *mut CK_BYTE,
2383+
pub ulCKYrLen: CK_ULONG,
2384+
pub keyNumber: CK_BYTE,
2385+
}
2386+
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2387+
const _: () = {
2388+
["Size of CK_IKE1_PRF_DERIVE_PARAMS"]
2389+
[::std::mem::size_of::<CK_IKE1_PRF_DERIVE_PARAMS>() - 72usize];
2390+
["Alignment of CK_IKE1_PRF_DERIVE_PARAMS"]
2391+
[::std::mem::align_of::<CK_IKE1_PRF_DERIVE_PARAMS>() - 8usize];
2392+
["Offset of field: CK_IKE1_PRF_DERIVE_PARAMS::prfMechanism"]
2393+
[::std::mem::offset_of!(CK_IKE1_PRF_DERIVE_PARAMS, prfMechanism) - 0usize];
2394+
["Offset of field: CK_IKE1_PRF_DERIVE_PARAMS::bHasPrevKey"]
2395+
[::std::mem::offset_of!(CK_IKE1_PRF_DERIVE_PARAMS, bHasPrevKey) - 8usize];
2396+
["Offset of field: CK_IKE1_PRF_DERIVE_PARAMS::hKeygxy"]
2397+
[::std::mem::offset_of!(CK_IKE1_PRF_DERIVE_PARAMS, hKeygxy) - 16usize];
2398+
["Offset of field: CK_IKE1_PRF_DERIVE_PARAMS::hPrevKey"]
2399+
[::std::mem::offset_of!(CK_IKE1_PRF_DERIVE_PARAMS, hPrevKey) - 24usize];
2400+
["Offset of field: CK_IKE1_PRF_DERIVE_PARAMS::pCKYi"]
2401+
[::std::mem::offset_of!(CK_IKE1_PRF_DERIVE_PARAMS, pCKYi) - 32usize];
2402+
["Offset of field: CK_IKE1_PRF_DERIVE_PARAMS::ulCKYiLen"]
2403+
[::std::mem::offset_of!(CK_IKE1_PRF_DERIVE_PARAMS, ulCKYiLen) - 40usize];
2404+
["Offset of field: CK_IKE1_PRF_DERIVE_PARAMS::pCKYr"]
2405+
[::std::mem::offset_of!(CK_IKE1_PRF_DERIVE_PARAMS, pCKYr) - 48usize];
2406+
["Offset of field: CK_IKE1_PRF_DERIVE_PARAMS::ulCKYrLen"]
2407+
[::std::mem::offset_of!(CK_IKE1_PRF_DERIVE_PARAMS, ulCKYrLen) - 56usize];
2408+
["Offset of field: CK_IKE1_PRF_DERIVE_PARAMS::keyNumber"]
2409+
[::std::mem::offset_of!(CK_IKE1_PRF_DERIVE_PARAMS, keyNumber) - 64usize];
2410+
};
2411+
impl Default for CK_IKE1_PRF_DERIVE_PARAMS {
2412+
fn default() -> Self {
2413+
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
2414+
unsafe {
2415+
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
2416+
s.assume_init()
2417+
}
2418+
}
2419+
}
2420+
#[repr(C)]
2421+
#[derive(Debug, Copy, Clone)]
2422+
pub struct CK_IKE2_PRF_PLUS_DERIVE_PARAMS {
2423+
pub prfMechanism: CK_MECHANISM_TYPE,
2424+
pub bHasSeedKey: CK_BBOOL,
2425+
pub hSeedKey: CK_OBJECT_HANDLE,
2426+
pub pSeedData: *mut CK_BYTE,
2427+
pub ulSeedDataLen: CK_ULONG,
2428+
}
2429+
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
2430+
const _: () = {
2431+
["Size of CK_IKE2_PRF_PLUS_DERIVE_PARAMS"]
2432+
[::std::mem::size_of::<CK_IKE2_PRF_PLUS_DERIVE_PARAMS>() - 40usize];
2433+
["Alignment of CK_IKE2_PRF_PLUS_DERIVE_PARAMS"]
2434+
[::std::mem::align_of::<CK_IKE2_PRF_PLUS_DERIVE_PARAMS>() - 8usize];
2435+
["Offset of field: CK_IKE2_PRF_PLUS_DERIVE_PARAMS::prfMechanism"]
2436+
[::std::mem::offset_of!(CK_IKE2_PRF_PLUS_DERIVE_PARAMS, prfMechanism) - 0usize];
2437+
["Offset of field: CK_IKE2_PRF_PLUS_DERIVE_PARAMS::bHasSeedKey"]
2438+
[::std::mem::offset_of!(CK_IKE2_PRF_PLUS_DERIVE_PARAMS, bHasSeedKey) - 8usize];
2439+
["Offset of field: CK_IKE2_PRF_PLUS_DERIVE_PARAMS::hSeedKey"]
2440+
[::std::mem::offset_of!(CK_IKE2_PRF_PLUS_DERIVE_PARAMS, hSeedKey) - 16usize];
2441+
["Offset of field: CK_IKE2_PRF_PLUS_DERIVE_PARAMS::pSeedData"]
2442+
[::std::mem::offset_of!(CK_IKE2_PRF_PLUS_DERIVE_PARAMS, pSeedData) - 24usize];
2443+
["Offset of field: CK_IKE2_PRF_PLUS_DERIVE_PARAMS::ulSeedDataLen"]
2444+
[::std::mem::offset_of!(CK_IKE2_PRF_PLUS_DERIVE_PARAMS, ulSeedDataLen) - 32usize];
2445+
};
2446+
impl Default for CK_IKE2_PRF_PLUS_DERIVE_PARAMS {
2447+
fn default() -> Self {
2448+
let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
2449+
unsafe {
2450+
::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
2451+
s.assume_init()
2452+
}
2453+
}
2454+
}
2455+
#[repr(C)]
2456+
#[derive(Debug, Copy, Clone)]
22692457
pub struct CK_KEA_DERIVE_PARAMS {
22702458
pub isSender: CK_BBOOL,
22712459
pub ulRandomLen: CK_ULONG,
@@ -3448,6 +3636,24 @@ const _: () = {
34483636
["Offset of field: CK_XEDDSA_PARAMS::hash"]
34493637
[::std::mem::offset_of!(CK_XEDDSA_PARAMS, hash) - 0usize];
34503638
};
3639+
#[repr(C)]
3640+
#[derive(Debug, Default, Copy, Clone)]
3641+
pub struct specifiedParams {
3642+
pub levels: CK_HSS_LEVELS,
3643+
pub lm_type: [CK_LMS_TYPE; 8usize],
3644+
pub lm_ots_type: [CK_LMOTS_TYPE; 8usize],
3645+
}
3646+
#[allow(clippy::unnecessary_operation, clippy::identity_op)]
3647+
const _: () = {
3648+
["Size of specifiedParams"][::std::mem::size_of::<specifiedParams>() - 136usize];
3649+
["Alignment of specifiedParams"][::std::mem::align_of::<specifiedParams>() - 8usize];
3650+
["Offset of field: specifiedParams::levels"]
3651+
[::std::mem::offset_of!(specifiedParams, levels) - 0usize];
3652+
["Offset of field: specifiedParams::lm_type"]
3653+
[::std::mem::offset_of!(specifiedParams, lm_type) - 8usize];
3654+
["Offset of field: specifiedParams::lm_ots_type"]
3655+
[::std::mem::offset_of!(specifiedParams, lm_ots_type) - 72usize];
3656+
};
34513657
pub type CK_SSL3_KEY_MAT_OUT_PTR = *mut CK_SSL3_KEY_MAT_OUT;
34523658
pub type CK_SSL3_KEY_MAT_OUT_PTR_PTR = *mut *mut CK_SSL3_KEY_MAT_OUT;
34533659
pub type CK_SSL3_KEY_MAT_PARAMS_PTR = *mut CK_SSL3_KEY_MAT_PARAMS;

0 commit comments

Comments
 (0)