- Const correctness mpi_get_bit()
- Documentation mpi_lsb(), mpi_msb()
diff --git a/ChangeLog b/ChangeLog
index 8d88ccf..d414222 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -21,6 +21,8 @@
Changes
* Removed redundant POLARSSL_DEBUG_MSG define
* AES code only check for Padlock once
+ * Fixed const-correctness mpi_get_bit()
+ * Documentation for mpi_lsb() and mpi_msb()
Bugfix
* Fixed handling error in mpi_cmp_mpi() on longer B values (found by
diff --git a/include/polarssl/bignum.h b/include/polarssl/bignum.h
index ad03308..898e37d 100644
--- a/include/polarssl/bignum.h
+++ b/include/polarssl/bignum.h
@@ -192,7 +192,7 @@
*
* \return Either a 0 or a 1
*/
-int mpi_get_bit( mpi *X, size_t pos );
+int mpi_get_bit( const mpi *X, size_t pos );
/*
* \brief Set a bit of X to a specific value of 0 or 1
@@ -211,14 +211,20 @@
int mpi_set_bit( mpi *X, size_t pos, unsigned char val );
/**
- * \brief Return the number of least significant bits
+ * \brief Return the number of zero-bits before the least significant
+ * '1' bit
+ *
+ * Note: Thus also the zero-based index of the least significant '1' bit
*
* \param X MPI to use
*/
size_t mpi_lsb( const mpi *X );
/**
- * \brief Return the number of most significant bits
+ * \brief Return the number of bits up to and including the most
+ * significant '1' bit'
+ *
+ * Note: Thus also the one-based index of the most significant '1' bit
*
* \param X MPI to use
*/
diff --git a/library/bignum.c b/library/bignum.c
index 0cb9505..5c0d622 100644
--- a/library/bignum.c
+++ b/library/bignum.c
@@ -173,7 +173,7 @@
/*
* Get a specific bit
*/
-int mpi_get_bit( mpi *X, size_t pos )
+int mpi_get_bit( const mpi *X, size_t pos )
{
if( X->n * biL <= pos )
return( 0 );