mirror of
https://github.com/wolfSSL/wolfssl.git
synced 2026-07-05 12:20:52 +02:00
Rust wrapper: remove return value from MlKem::encode_{public,private}_key()
Fixes F-3093
This commit is contained in:
@@ -637,8 +637,8 @@ impl MlKem {
|
||||
///
|
||||
/// # Returns
|
||||
///
|
||||
/// Returns either Ok(size) containing the number of bytes written or Err(e)
|
||||
/// containing the wolfSSL library error code value.
|
||||
/// Returns either Ok(()) or Err(e) containing the wolfSSL library error
|
||||
/// code value.
|
||||
///
|
||||
/// # Example
|
||||
///
|
||||
@@ -652,12 +652,10 @@ impl MlKem {
|
||||
/// .expect("Error with generate()");
|
||||
/// let pub_size = key.public_key_size().unwrap();
|
||||
/// let mut pub_buf = vec![0u8; pub_size];
|
||||
/// let written = key.encode_public_key(&mut pub_buf)
|
||||
/// .expect("Error with encode_public_key()");
|
||||
/// assert_eq!(written, pub_size);
|
||||
/// key.encode_public_key(&mut pub_buf).expect("Error with encode_public_key()");
|
||||
/// }
|
||||
/// ```
|
||||
pub fn encode_public_key(&self, out: &mut [u8]) -> Result<usize, i32> {
|
||||
pub fn encode_public_key(&self, out: &mut [u8]) -> Result<(), i32> {
|
||||
let out_size = crate::buffer_len_to_u32(out.len())?;
|
||||
let rc = unsafe {
|
||||
sys::wc_MlKemKey_EncodePublicKey(self.ws_key, out.as_mut_ptr(), out_size)
|
||||
@@ -665,7 +663,7 @@ impl MlKem {
|
||||
if rc != 0 {
|
||||
return Err(rc);
|
||||
}
|
||||
Ok(out.len())
|
||||
Ok(())
|
||||
}
|
||||
|
||||
/// Encode (export) the private key to a byte buffer.
|
||||
@@ -678,8 +676,8 @@ impl MlKem {
|
||||
///
|
||||
/// # Returns
|
||||
///
|
||||
/// Returns either Ok(size) containing the number of bytes written or Err(e)
|
||||
/// containing the wolfSSL library error code value.
|
||||
/// Returns either Ok(()) or Err(e) containing the wolfSSL library error
|
||||
/// code value.
|
||||
///
|
||||
/// # Example
|
||||
///
|
||||
@@ -693,12 +691,10 @@ impl MlKem {
|
||||
/// .expect("Error with generate()");
|
||||
/// let priv_size = key.private_key_size().unwrap();
|
||||
/// let mut priv_buf = vec![0u8; priv_size];
|
||||
/// let written = key.encode_private_key(&mut priv_buf)
|
||||
/// .expect("Error with encode_private_key()");
|
||||
/// assert_eq!(written, priv_size);
|
||||
/// key.encode_private_key(&mut priv_buf).expect("Error with encode_private_key()");
|
||||
/// }
|
||||
/// ```
|
||||
pub fn encode_private_key(&self, out: &mut [u8]) -> Result<usize, i32> {
|
||||
pub fn encode_private_key(&self, out: &mut [u8]) -> Result<(), i32> {
|
||||
let out_size = crate::buffer_len_to_u32(out.len())?;
|
||||
let rc = unsafe {
|
||||
sys::wc_MlKemKey_EncodePrivateKey(self.ws_key, out.as_mut_ptr(), out_size)
|
||||
@@ -706,7 +702,7 @@ impl MlKem {
|
||||
if rc != 0 {
|
||||
return Err(rc);
|
||||
}
|
||||
Ok(out.len())
|
||||
Ok(())
|
||||
}
|
||||
|
||||
/// Decode (import) a public key from a byte buffer.
|
||||
|
||||
@@ -244,9 +244,7 @@ fn test_encode_decode_public_key() {
|
||||
let ss_size = key.shared_secret_size().expect("Error with shared_secret_size()");
|
||||
|
||||
let mut pub_buf = vec![0u8; pub_size];
|
||||
let written = key.encode_public_key(&mut pub_buf)
|
||||
.expect("Error with encode_public_key()");
|
||||
assert_eq!(written, pub_size);
|
||||
key.encode_public_key(&mut pub_buf).expect("Error with encode_public_key()");
|
||||
|
||||
// Re-import public key and encapsulate.
|
||||
let mut pub_key = MlKem::new(MlKem::TYPE_768).expect("Error with new()");
|
||||
@@ -280,9 +278,7 @@ fn test_encode_decode_private_key() {
|
||||
let ss_size = key.shared_secret_size().expect("Error with shared_secret_size()");
|
||||
|
||||
let mut priv_buf = vec![0u8; priv_size];
|
||||
let written = key.encode_private_key(&mut priv_buf)
|
||||
.expect("Error with encode_private_key()");
|
||||
assert_eq!(written, priv_size);
|
||||
key.encode_private_key(&mut priv_buf).expect("Error with encode_private_key()");
|
||||
|
||||
// Encapsulate with the original key.
|
||||
let mut ct = vec![0u8; ct_size];
|
||||
|
||||
Reference in New Issue
Block a user