@@ -70,9 +70,9 @@ impl CMAC {
7070 /// ```
7171 #[ cfg( aes) ]
7272 pub fn generate ( key : & [ u8 ] , data : & [ u8 ] , dout : & mut [ u8 ] ) -> Result < ( ) , i32 > {
73- let key_size = key. len ( ) as u32 ;
74- let data_size = data. len ( ) as u32 ;
75- let mut dout_size = dout. len ( ) as u32 ;
73+ let key_size = crate :: buffer_len_to_u32 ( key. len ( ) ) ? ;
74+ let data_size = crate :: buffer_len_to_u32 ( data. len ( ) ) ? ;
75+ let mut dout_size = crate :: buffer_len_to_u32 ( dout. len ( ) ) ? ;
7676 let rc = unsafe {
7777 sys:: wc_AesCmacGenerate ( dout. as_mut_ptr ( ) , & mut dout_size,
7878 data. as_ptr ( ) , data_size,
@@ -134,7 +134,7 @@ impl CMAC {
134134 /// let mut cmac = CMAC::new_ex(&key, None, None).expect("Error with new_ex()");
135135 /// ```
136136 pub fn new_ex ( key : & [ u8 ] , heap : Option < * mut core:: ffi:: c_void > , dev_id : Option < i32 > ) -> Result < Self , i32 > {
137- let key_size = key. len ( ) as u32 ;
137+ let key_size = crate :: buffer_len_to_u32 ( key. len ( ) ) ? ;
138138 let mut ws_cmac: MaybeUninit < sys:: Cmac > = MaybeUninit :: uninit ( ) ;
139139 let typ = sys:: CmacType_WC_CMAC_AES as i32 ;
140140 let heap = match heap {
@@ -193,9 +193,9 @@ impl CMAC {
193193 /// ```
194194 #[ cfg( aes) ]
195195 pub fn verify ( key : & [ u8 ] , data : & [ u8 ] , check : & [ u8 ] ) -> Result < bool , i32 > {
196- let key_size = key. len ( ) as u32 ;
197- let data_size = data. len ( ) as u32 ;
198- let check_size = check. len ( ) as u32 ;
196+ let key_size = crate :: buffer_len_to_u32 ( key. len ( ) ) ? ;
197+ let data_size = crate :: buffer_len_to_u32 ( data. len ( ) ) ? ;
198+ let check_size = crate :: buffer_len_to_u32 ( check. len ( ) ) ? ;
199199 let rc = unsafe {
200200 sys:: wc_AesCmacVerify ( check. as_ptr ( ) , check_size,
201201 data. as_ptr ( ) , data_size,
@@ -243,9 +243,9 @@ impl CMAC {
243243 /// ```
244244 #[ cfg( aes) ]
245245 pub fn generate_ex ( & mut self , key : & [ u8 ] , data : & [ u8 ] , dout : & mut [ u8 ] , heap : Option < * mut core:: ffi:: c_void > , dev_id : Option < i32 > ) -> Result < ( ) , i32 > {
246- let key_size = key. len ( ) as u32 ;
247- let data_size = data. len ( ) as u32 ;
248- let mut dout_size = dout. len ( ) as u32 ;
246+ let key_size = crate :: buffer_len_to_u32 ( key. len ( ) ) ? ;
247+ let data_size = crate :: buffer_len_to_u32 ( data. len ( ) ) ? ;
248+ let mut dout_size = crate :: buffer_len_to_u32 ( dout. len ( ) ) ? ;
249249 let heap = match heap {
250250 Some ( heap) => heap,
251251 None => core:: ptr:: null_mut ( ) ,
@@ -293,7 +293,7 @@ impl CMAC {
293293 /// cmac.update(&message).expect("Error with update()");
294294 /// ```
295295 pub fn update ( & mut self , data : & [ u8 ] ) -> Result < ( ) , i32 > {
296- let data_size = data. len ( ) as u32 ;
296+ let data_size = crate :: buffer_len_to_u32 ( data. len ( ) ) ? ;
297297 let rc = unsafe {
298298 sys:: wc_CmacUpdate ( & mut self . ws_cmac , data. as_ptr ( ) , data_size)
299299 } ;
@@ -335,7 +335,7 @@ impl CMAC {
335335 /// cmac.finalize(&mut finalize_out).expect("Error with finalize()");
336336 /// ```
337337 pub fn finalize ( mut self , dout : & mut [ u8 ] ) -> Result < ( ) , i32 > {
338- let mut dout_size = dout. len ( ) as u32 ;
338+ let mut dout_size = crate :: buffer_len_to_u32 ( dout. len ( ) ) ? ;
339339 let rc = unsafe {
340340 sys:: wc_CmacFinalNoFree ( & mut self . ws_cmac ,
341341 dout. as_mut_ptr ( ) , & mut dout_size)
@@ -385,9 +385,9 @@ impl CMAC {
385385 /// ```
386386 #[ cfg( aes) ]
387387 pub fn verify_ex ( & mut self , key : & [ u8 ] , data : & [ u8 ] , check : & [ u8 ] , heap : Option < * mut core:: ffi:: c_void > , dev_id : Option < i32 > ) -> Result < bool , i32 > {
388- let key_size = key. len ( ) as u32 ;
389- let data_size = data. len ( ) as u32 ;
390- let check_size = check. len ( ) as u32 ;
388+ let key_size = crate :: buffer_len_to_u32 ( key. len ( ) ) ? ;
389+ let data_size = crate :: buffer_len_to_u32 ( data. len ( ) ) ? ;
390+ let check_size = crate :: buffer_len_to_u32 ( check. len ( ) ) ? ;
391391 let heap = match heap {
392392 Some ( heap) => heap,
393393 None => core:: ptr:: null_mut ( ) ,
0 commit comments