Rename mbedtls_mpi_msb to mbedtls_mpi_bitlen
diff --git a/library/bignum.c b/library/bignum.c
index 563e67a..ad0aa2c 100644
--- a/library/bignum.c
+++ b/library/bignum.c
@@ -331,7 +331,7 @@
 }
 
 /*
- * Return the number of least significant bits
+ * Return the number of less significant zero-bits
  */
 size_t mbedtls_mpi_lsb( const mbedtls_mpi *X )
 {
@@ -346,9 +346,9 @@
 }
 
 /*
- * Return the number of most significant bits
+ * Return the number of bits
  */
-size_t mbedtls_mpi_msb( const mbedtls_mpi *X )
+size_t mbedtls_mpi_bitlen( const mbedtls_mpi *X )
 {
     size_t i, j;
 
@@ -371,7 +371,7 @@
  */
 size_t mbedtls_mpi_size( const mbedtls_mpi *X )
 {
-    return( ( mbedtls_mpi_msb( X ) + 7 ) >> 3 );
+    return( ( mbedtls_mpi_bitlen( X ) + 7 ) >> 3 );
 }
 
 /*
@@ -501,7 +501,7 @@
     if( radix < 2 || radix > 16 )
         return( MBEDTLS_ERR_MPI_BAD_INPUT_DATA );
 
-    n = mbedtls_mpi_msb( X );
+    n = mbedtls_mpi_bitlen( X );
     if( radix >=  4 ) n >>= 1;
     if( radix >= 16 ) n >>= 1;
     n += 3;
@@ -686,7 +686,7 @@
     v0 = count / (biL    );
     t1 = count & (biL - 1);
 
-    i = mbedtls_mpi_msb( X ) + count;
+    i = mbedtls_mpi_bitlen( X ) + count;
 
     if( X->n * biL < i )
         MBEDTLS_MPI_CHK( mbedtls_mpi_grow( X, BITS_TO_LIMBS( i ) ) );
@@ -1212,7 +1212,7 @@
     MBEDTLS_MPI_CHK( mbedtls_mpi_grow( &T1, 2 ) );
     MBEDTLS_MPI_CHK( mbedtls_mpi_grow( &T2, 3 ) );
 
-    k = mbedtls_mpi_msb( &Y ) % biL;
+    k = mbedtls_mpi_bitlen( &Y ) % biL;
     if( k < biL - 1 )
     {
         k = biL - 1 - k;
@@ -1537,7 +1537,7 @@
     mbedtls_mpi_init( &Apos );
     memset( W, 0, sizeof( W ) );
 
-    i = mbedtls_mpi_msb( E );
+    i = mbedtls_mpi_bitlen( E );
 
     wsize = ( i > 671 ) ? 6 : ( i > 239 ) ? 5 :
             ( i >  79 ) ? 4 : ( i >  23 ) ? 3 : 1;
@@ -1972,7 +1972,7 @@
     MBEDTLS_MPI_CHK( mbedtls_mpi_copy( &R, &W ) );
     MBEDTLS_MPI_CHK( mbedtls_mpi_shift_r( &R, s ) );
 
-    i = mbedtls_mpi_msb( X );
+    i = mbedtls_mpi_bitlen( X );
     /*
      * HAC, table 4.4
      */
@@ -1989,7 +1989,7 @@
 
         if( mbedtls_mpi_cmp_mpi( &A, &W ) >= 0 )
         {
-            j = mbedtls_mpi_msb( &A ) - mbedtls_mpi_msb( &W );
+            j = mbedtls_mpi_bitlen( &A ) - mbedtls_mpi_bitlen( &W );
             MBEDTLS_MPI_CHK( mbedtls_mpi_shift_r( &A, j + 1 ) );
         }
         A.p[0] |= 3;
@@ -1998,8 +1998,8 @@
         do {
             MBEDTLS_MPI_CHK( mbedtls_mpi_fill_random( &A, X->n * ciL, f_rng, p_rng ) );
 
-            j = mbedtls_mpi_msb( &A );
-            k = mbedtls_mpi_msb( &W );
+            j = mbedtls_mpi_bitlen( &A );
+            k = mbedtls_mpi_bitlen( &W );
             if (j > k) {
                 MBEDTLS_MPI_CHK( mbedtls_mpi_shift_r( &A, j - k ) );
             }
@@ -2106,7 +2106,7 @@
 
     MBEDTLS_MPI_CHK( mbedtls_mpi_fill_random( X, n * ciL, f_rng, p_rng ) );
 
-    k = mbedtls_mpi_msb( X );
+    k = mbedtls_mpi_bitlen( X );
     if( k > nbits ) MBEDTLS_MPI_CHK( mbedtls_mpi_shift_r( X, k - nbits + 1 ) );
 
     mbedtls_mpi_set_bit( X, nbits-1, 1 );
diff --git a/library/ecp.c b/library/ecp.c
index b733bcc..a802747 100644
--- a/library/ecp.c
+++ b/library/ecp.c
@@ -660,7 +660,7 @@
 
     /* N->s < 0 is a much faster test, which fails only if N is 0 */
     if( ( N->s < 0 && mbedtls_mpi_cmp_int( N, 0 ) != 0 ) ||
-        mbedtls_mpi_msb( N ) > 2 * grp->pbits )
+        mbedtls_mpi_bitlen( N ) > 2 * grp->pbits )
     {
         return( MBEDTLS_ERR_ECP_BAD_INPUT_DATA );
     }
@@ -1568,7 +1568,7 @@
         MBEDTLS_MPI_CHK( ecp_randomize_mxz( grp, &RP, f_rng, p_rng ) );
 
     /* Loop invariant: R = result so far, RP = R + P */
-    i = mbedtls_mpi_msb( m ); /* one past the (zero-based) most significant bit */
+    i = mbedtls_mpi_bitlen( m ); /* one past the (zero-based) most significant bit */
     while( i-- > 0 )
     {
         b = mbedtls_mpi_get_bit( m, i );
@@ -1747,7 +1747,7 @@
         if( mbedtls_mpi_get_bit( d, 0 ) != 0 ||
             mbedtls_mpi_get_bit( d, 1 ) != 0 ||
             mbedtls_mpi_get_bit( d, 2 ) != 0 ||
-            mbedtls_mpi_msb( d ) - 1 != grp->nbits ) /* mbedtls_mpi_msb is one-based! */
+            mbedtls_mpi_bitlen( d ) - 1 != grp->nbits ) /* mbedtls_mpi_bitlen is one-based! */
             return( MBEDTLS_ERR_ECP_INVALID_KEY );
         else
             return( 0 );
@@ -1787,7 +1787,7 @@
         MBEDTLS_MPI_CHK( mbedtls_mpi_fill_random( d, n_size, f_rng, p_rng ) );
 
         /* Make sure the most significant bit is nbits */
-        b = mbedtls_mpi_msb( d ) - 1; /* mbedtls_mpi_msb is one-based */
+        b = mbedtls_mpi_bitlen( d ) - 1; /* mbedtls_mpi_bitlen is one-based */
         if( b > grp->nbits )
             MBEDTLS_MPI_CHK( mbedtls_mpi_shift_r( d, b - grp->nbits ) );
         else
diff --git a/library/ecp_curves.c b/library/ecp_curves.c
index 41d7f79..e97c401 100644
--- a/library/ecp_curves.c
+++ b/library/ecp_curves.c
@@ -594,8 +594,8 @@
     ecp_mpi_load( &grp->G.Y, gy, gylen );
     ecp_mpi_set1( &grp->G.Z );
 
-    grp->pbits = mbedtls_mpi_msb( &grp->P );
-    grp->nbits = mbedtls_mpi_msb( &grp->N );
+    grp->pbits = mbedtls_mpi_bitlen( &grp->P );
+    grp->nbits = mbedtls_mpi_bitlen( &grp->N );
 
     grp->h = 1;
 
@@ -670,7 +670,7 @@
     MBEDTLS_MPI_CHK( mbedtls_mpi_lset( &grp->P, 1 ) );
     MBEDTLS_MPI_CHK( mbedtls_mpi_shift_l( &grp->P, 255 ) );
     MBEDTLS_MPI_CHK( mbedtls_mpi_sub_int( &grp->P, &grp->P, 19 ) );
-    grp->pbits = mbedtls_mpi_msb( &grp->P );
+    grp->pbits = mbedtls_mpi_bitlen( &grp->P );
 
     /* Y intentionaly not set, since we use x/z coordinates.
      * This is used as a marker to identify Montgomery curves! */
diff --git a/library/pkparse.c b/library/pkparse.c
index c8a68eb..f24dbad 100644
--- a/library/pkparse.c
+++ b/library/pkparse.c
@@ -274,7 +274,7 @@
     if( ( ret = mbedtls_asn1_get_mpi( &p, end_field, &grp->P ) ) != 0 )
         return( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT + ret );
 
-    grp->pbits = mbedtls_mpi_msb( &grp->P );
+    grp->pbits = mbedtls_mpi_bitlen( &grp->P );
 
     if( p != end_field )
         return( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT +
@@ -355,7 +355,7 @@
     if( ( ret = mbedtls_asn1_get_mpi( &p, end, &grp->N ) ) != 0 )
         return( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT + ret );
 
-    grp->nbits = mbedtls_mpi_msb( &grp->N );
+    grp->nbits = mbedtls_mpi_bitlen( &grp->N );
 
     /*
      * Allow optional elements by purposefully not enforcing p == end here.
diff --git a/library/rsa.c b/library/rsa.c
index 6aee109..9f0d461 100644
--- a/library/rsa.c
+++ b/library/rsa.c
@@ -118,7 +118,7 @@
             continue;
 
         MBEDTLS_MPI_CHK( mbedtls_mpi_mul_mpi( &ctx->N, &ctx->P, &ctx->Q ) );
-        if( mbedtls_mpi_msb( &ctx->N ) != nbits )
+        if( mbedtls_mpi_bitlen( &ctx->N ) != nbits )
             continue;
 
         MBEDTLS_MPI_CHK( mbedtls_mpi_sub_int( &P1, &ctx->P, 1 ) );
@@ -139,7 +139,7 @@
     MBEDTLS_MPI_CHK( mbedtls_mpi_mod_mpi( &ctx->DQ, &ctx->D, &Q1 ) );
     MBEDTLS_MPI_CHK( mbedtls_mpi_inv_mod( &ctx->QP, &ctx->Q, &ctx->P ) );
 
-    ctx->len = ( mbedtls_mpi_msb( &ctx->N ) + 7 ) >> 3;
+    ctx->len = ( mbedtls_mpi_bitlen( &ctx->N ) + 7 ) >> 3;
 
 cleanup:
 
@@ -168,11 +168,11 @@
         ( ctx->E.p[0] & 1 ) == 0 )
         return( MBEDTLS_ERR_RSA_KEY_CHECK_FAILED );
 
-    if( mbedtls_mpi_msb( &ctx->N ) < 128 ||
-        mbedtls_mpi_msb( &ctx->N ) > MBEDTLS_MPI_MAX_BITS )
+    if( mbedtls_mpi_bitlen( &ctx->N ) < 128 ||
+        mbedtls_mpi_bitlen( &ctx->N ) > MBEDTLS_MPI_MAX_BITS )
         return( MBEDTLS_ERR_RSA_KEY_CHECK_FAILED );
 
-    if( mbedtls_mpi_msb( &ctx->E ) < 2 ||
+    if( mbedtls_mpi_bitlen( &ctx->E ) < 2 ||
         mbedtls_mpi_cmp_mpi( &ctx->E, &ctx->N ) >= 0 )
         return( MBEDTLS_ERR_RSA_KEY_CHECK_FAILED );
 
@@ -980,7 +980,7 @@
 
     // Note: EMSA-PSS encoding is over the length of N - 1 bits
     //
-    msb = mbedtls_mpi_msb( &ctx->N ) - 1;
+    msb = mbedtls_mpi_bitlen( &ctx->N ) - 1;
     p += olen - hlen * 2 - 2;
     *p++ = 0x01;
     memcpy( p, salt, slen );
@@ -1008,7 +1008,7 @@
 
     mbedtls_md_free( &md_ctx );
 
-    msb = mbedtls_mpi_msb( &ctx->N ) - 1;
+    msb = mbedtls_mpi_bitlen( &ctx->N ) - 1;
     sig[0] &= 0xFF >> ( olen * 8 - msb );
 
     p += hlen;
@@ -1206,7 +1206,7 @@
 
     // Note: EMSA-PSS verification is over the length of N - 1 bits
     //
-    msb = mbedtls_mpi_msb( &ctx->N ) - 1;
+    msb = mbedtls_mpi_bitlen( &ctx->N ) - 1;
 
     // Compensate for boundary condition when applying mask
     //