Skip to content

Commit 5e2e603

Browse files
Rust wrapper: remove return value from MlKem::encode_{public,private}_key()
Fixes F-3093
1 parent a61dfbd commit 5e2e603

2 files changed

Lines changed: 12 additions & 20 deletions

File tree

wrapper/rust/wolfssl-wolfcrypt/src/mlkem.rs

Lines changed: 10 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -637,8 +637,8 @@ impl MlKem {
637637
///
638638
/// # Returns
639639
///
640-
/// Returns either Ok(size) containing the number of bytes written or Err(e)
641-
/// containing the wolfSSL library error code value.
640+
/// Returns either Ok(()) or Err(e) containing the wolfSSL library error
641+
/// code value.
642642
///
643643
/// # Example
644644
///
@@ -652,20 +652,18 @@ impl MlKem {
652652
/// .expect("Error with generate()");
653653
/// let pub_size = key.public_key_size().unwrap();
654654
/// let mut pub_buf = vec![0u8; pub_size];
655-
/// let written = key.encode_public_key(&mut pub_buf)
656-
/// .expect("Error with encode_public_key()");
657-
/// assert_eq!(written, pub_size);
655+
/// key.encode_public_key(&mut pub_buf).expect("Error with encode_public_key()");
658656
/// }
659657
/// ```
660-
pub fn encode_public_key(&self, out: &mut [u8]) -> Result<usize, i32> {
658+
pub fn encode_public_key(&self, out: &mut [u8]) -> Result<(), i32> {
661659
let out_size = crate::buffer_len_to_u32(out.len())?;
662660
let rc = unsafe {
663661
sys::wc_MlKemKey_EncodePublicKey(self.ws_key, out.as_mut_ptr(), out_size)
664662
};
665663
if rc != 0 {
666664
return Err(rc);
667665
}
668-
Ok(out.len())
666+
Ok(())
669667
}
670668

671669
/// Encode (export) the private key to a byte buffer.
@@ -678,8 +676,8 @@ impl MlKem {
678676
///
679677
/// # Returns
680678
///
681-
/// Returns either Ok(size) containing the number of bytes written or Err(e)
682-
/// containing the wolfSSL library error code value.
679+
/// Returns either Ok(()) or Err(e) containing the wolfSSL library error
680+
/// code value.
683681
///
684682
/// # Example
685683
///
@@ -693,20 +691,18 @@ impl MlKem {
693691
/// .expect("Error with generate()");
694692
/// let priv_size = key.private_key_size().unwrap();
695693
/// let mut priv_buf = vec![0u8; priv_size];
696-
/// let written = key.encode_private_key(&mut priv_buf)
697-
/// .expect("Error with encode_private_key()");
698-
/// assert_eq!(written, priv_size);
694+
/// key.encode_private_key(&mut priv_buf).expect("Error with encode_private_key()");
699695
/// }
700696
/// ```
701-
pub fn encode_private_key(&self, out: &mut [u8]) -> Result<usize, i32> {
697+
pub fn encode_private_key(&self, out: &mut [u8]) -> Result<(), i32> {
702698
let out_size = crate::buffer_len_to_u32(out.len())?;
703699
let rc = unsafe {
704700
sys::wc_MlKemKey_EncodePrivateKey(self.ws_key, out.as_mut_ptr(), out_size)
705701
};
706702
if rc != 0 {
707703
return Err(rc);
708704
}
709-
Ok(out.len())
705+
Ok(())
710706
}
711707

712708
/// Decode (import) a public key from a byte buffer.

wrapper/rust/wolfssl-wolfcrypt/tests/test_mlkem.rs

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -244,9 +244,7 @@ fn test_encode_decode_public_key() {
244244
let ss_size = key.shared_secret_size().expect("Error with shared_secret_size()");
245245

246246
let mut pub_buf = vec![0u8; pub_size];
247-
let written = key.encode_public_key(&mut pub_buf)
248-
.expect("Error with encode_public_key()");
249-
assert_eq!(written, pub_size);
247+
key.encode_public_key(&mut pub_buf).expect("Error with encode_public_key()");
250248

251249
// Re-import public key and encapsulate.
252250
let mut pub_key = MlKem::new(MlKem::TYPE_768).expect("Error with new()");
@@ -280,9 +278,7 @@ fn test_encode_decode_private_key() {
280278
let ss_size = key.shared_secret_size().expect("Error with shared_secret_size()");
281279

282280
let mut priv_buf = vec![0u8; priv_size];
283-
let written = key.encode_private_key(&mut priv_buf)
284-
.expect("Error with encode_private_key()");
285-
assert_eq!(written, priv_size);
281+
key.encode_private_key(&mut priv_buf).expect("Error with encode_private_key()");
286282

287283
// Encapsulate with the original key.
288284
let mut ct = vec![0u8; ct_size];

0 commit comments

Comments
 (0)