[vlc-commits] core: update_crypto: Use uint32_t for buffer sizes

Hugo Beauzée-Luyssen git at videolan.org
Tue Apr 27 11:46:49 UTC 2021


vlc/vlc-3.0 | branch: master | Hugo Beauzée-Luyssen <hugo at beauzee.fr> | Mon Apr 19 11:46:56 2021 +0200| [4df4378f433fb5b175bf0792f32bb7014f055c10] | committer: Hugo Beauzée-Luyssen

core: update_crypto: Use uint32_t for buffer sizes

(cherry picked from commit 1778e11aaffc628f62cfb6e35ba9d64b1953620e)
Signed-off-by: Hugo Beauzée-Luyssen <hugo at beauzee.fr>

> http://git.videolan.org/gitweb.cgi/vlc/vlc-3.0.git/?a=commit;h=4df4378f433fb5b175bf0792f32bb7014f055c10
---

 src/misc/update_crypto.c | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

diff --git a/src/misc/update_crypto.c b/src/misc/update_crypto.c
index 87800d11a4..d4e65fa2a6 100644
--- a/src/misc/update_crypto.c
+++ b/src/misc/update_crypto.c
@@ -54,7 +54,7 @@
 #define packet_header_len( c ) ( ( c & 0x03 ) + 1 ) /* number of bytes in a packet header */
 
 
-static inline int scalar_number( const uint8_t *p, int header_len )
+static inline uint32_t scalar_number( const uint8_t *p, int header_len )
 {
     assert( header_len == 1 || header_len == 2 || header_len == 4 );
 
@@ -70,7 +70,7 @@ static inline int scalar_number( const uint8_t *p, int header_len )
 
 
 /* number of data bytes in a MPI */
-static int mpi_len(const uint8_t *mpi)
+static uint32_t mpi_len(const uint8_t *mpi)
 {
     return (scalar_number(mpi, 2) + 7) / 8;
 }
@@ -482,15 +482,15 @@ static int verify_signature_rsa( signature_packet_t *sign, public_key_packet_t *
     gcry_sexp_t key_sexp, hash_sexp, sig_sexp;
     key_sexp = hash_sexp = sig_sexp = NULL;
 
-    int i_n_len = mpi_len( p_key->sig.rsa.n );
-    int i_e_len = mpi_len( p_key->sig.rsa.e );
+    size_t i_e_len = mpi_len( p_key->sig.rsa.e );
+    size_t i_n_len = mpi_len( p_key->sig.rsa.n );
     if( gcry_mpi_scan( &n, GCRYMPI_FMT_USG, p_key->sig.rsa.n + 2, i_n_len, NULL ) ||
         gcry_mpi_scan( &e, GCRYMPI_FMT_USG, p_key->sig.rsa.e + 2, i_e_len, NULL ) ||
         gcry_sexp_build( &key_sexp, &erroff, key_sexp_s, n, e ) )
         goto out;
 
     uint8_t *p_s = sign->algo_specific.rsa.s;
-    int i_s_len = mpi_len( p_s );
+    size_t i_s_len = mpi_len( p_s );
     if( gcry_mpi_scan( &s, GCRYMPI_FMT_USG, p_s + 2, i_s_len, NULL ) ||
         gcry_sexp_build( &sig_sexp, &erroff, sig_sexp_s, s ) )
         goto out;
@@ -536,10 +536,10 @@ static int verify_signature_dsa( signature_packet_t *sign, public_key_packet_t *
     gcry_sexp_t key_sexp, hash_sexp, sig_sexp;
     key_sexp = hash_sexp = sig_sexp = NULL;
 
-    int i_p_len = mpi_len( p_key->sig.dsa.p );
-    int i_q_len = mpi_len( p_key->sig.dsa.q );
-    int i_g_len = mpi_len( p_key->sig.dsa.g );
-    int i_y_len = mpi_len( p_key->sig.dsa.y );
+    size_t i_p_len = mpi_len( p_key->sig.dsa.p );
+    size_t i_q_len = mpi_len( p_key->sig.dsa.q );
+    size_t i_g_len = mpi_len( p_key->sig.dsa.g );
+    size_t i_y_len = mpi_len( p_key->sig.dsa.y );
     if( gcry_mpi_scan( &p, GCRYMPI_FMT_USG, p_key->sig.dsa.p + 2, i_p_len, NULL ) ||
         gcry_mpi_scan( &q, GCRYMPI_FMT_USG, p_key->sig.dsa.q + 2, i_q_len, NULL ) ||
         gcry_mpi_scan( &g, GCRYMPI_FMT_USG, p_key->sig.dsa.g + 2, i_g_len, NULL ) ||
@@ -549,14 +549,14 @@ static int verify_signature_dsa( signature_packet_t *sign, public_key_packet_t *
 
     uint8_t *p_r = sign->algo_specific.dsa.r;
     uint8_t *p_s = sign->algo_specific.dsa.s;
-    int i_r_len = mpi_len( p_r );
-    int i_s_len = mpi_len( p_s );
+    size_t i_r_len = mpi_len( p_r );
+    size_t i_s_len = mpi_len( p_s );
     if( gcry_mpi_scan( &r, GCRYMPI_FMT_USG, p_r + 2, i_r_len, NULL ) ||
         gcry_mpi_scan( &s, GCRYMPI_FMT_USG, p_s + 2, i_s_len, NULL ) ||
         gcry_sexp_build( &sig_sexp, &erroff, sig_sexp_s, r, s ) )
         goto out;
 
-    int i_hash_len = gcry_md_get_algo_dlen (sign->digest_algo);
+    unsigned int i_hash_len = gcry_md_get_algo_dlen (sign->digest_algo);
     if (i_hash_len > i_q_len)
         i_hash_len = i_q_len;
     if( gcry_mpi_scan( &hash, GCRYMPI_FMT_USG, p_hash, i_hash_len, NULL ) ||
@@ -648,7 +648,7 @@ int parse_public_key( const uint8_t *p_key_data, size_t i_key_len,
             ( i_header_len != 1 && i_header_len != 2 && i_header_len != 4 ) )
             goto error;
 
-        int i_packet_len = scalar_number( pos, i_header_len );
+        size_t i_packet_len = scalar_number( pos, i_header_len );
         pos += i_header_len;
 
         if( pos + i_packet_len > max_pos )



More information about the vlc-commits mailing list