Clarifications in comments; code cosmetics & style
diff --git a/include/polarssl/ecp.h b/include/polarssl/ecp.h
index 6a504f1..a7f6258 100644
--- a/include/polarssl/ecp.h
+++ b/include/polarssl/ecp.h
@@ -55,7 +55,15 @@
* The curves we consider are defined by y^2 = x^3 - 3x + b mod p,
* and a generator for a large subgroup is fixed.
*
- * modp may be NULL; pbits will not be used in this case.
+ * If modp is NULL, pbits will not be used, and reduction modulo P is
+ * done using a generic algorithm.
+ *
+ * If modp is not NULL, pbits must be the size of P in bits and modp
+ * must be a function that takes an mpi in the range 0..2^(2*pbits) and
+ * transforms it in-place in an integer of little more than pbits, so
+ * that the integer may be efficiently brought in the 0..P range by a
+ * few additions or substractions. It must return 0 on success and a
+ * POLARSSL_ERR_ECP_XXX error on failure.
*/
typedef struct
{
@@ -77,7 +85,7 @@
*
* \warning This library does not support validation of arbitrary domain
* parameters. Therefore, only well-known domain parameters from trusted
- * sources (such as the ones below) should be used. See ecp_use_known_dp().
+ * sources should be used. See ecp_use_known_dp().
*/
#define POLARSSL_ECP_DP_SECP192R1 0
#define POLARSSL_ECP_DP_SECP224R1 1
@@ -161,7 +169,7 @@
* \param grp Destination group
* \param index Index in the list of well-known domain parameters
*
- * \return O if successul,
+ * \return O if successful,
* POLARSSL_ERR_MPI_XXX if initialization failed
* POLARSSL_ERR_ECP_GENERIC if index is out of range
*