Add human-friendly name in ecp_curve_info
diff --git a/include/polarssl/ecp.h b/include/polarssl/ecp.h
index 1d18b14..513b355 100644
--- a/include/polarssl/ecp.h
+++ b/include/polarssl/ecp.h
@@ -68,9 +68,10 @@
  */
 typedef struct
 {
-    ecp_group_id grp_id;    /*!< Internal identifier    */
-    uint16_t name;          /*!< TLS NamedCurve value   */
-    uint16_t size;          /*!< Curve size in bits     */
+    ecp_group_id grp_id;    /*!< Internal identifier        */
+    uint16_t tls_id;        /*!< TLS NamedCurve identifier  */
+    uint16_t size;          /*!< Curve size in bits         */
+    const char *name;       /*!< Human-friendly name        */
 } ecp_curve_info;
 
 /**
diff --git a/library/ecp.c b/library/ecp.c
index 47216e0..48ce5d3 100644
--- a/library/ecp.c
+++ b/library/ecp.c
@@ -70,27 +70,28 @@
 /*
  * List of supported curves:
  *  - internal ID
- *  - TLS NamedCurve number (RFC 4492 section 5.1.1)
+ *  - TLS NamedCurve ID (RFC 4492 section 5.1.1)
  *  - size in bits
+ *  - readeble name
  */
 const ecp_curve_info ecp_supported_curves[] =
 {
 #if defined(POLARSSL_ECP_DP_SECP521R1_ENABLED)
-    { POLARSSL_ECP_DP_SECP521R1,    25,     521, },
+    { POLARSSL_ECP_DP_SECP521R1,    25,     521,    "secp521r1" },
 #endif
 #if defined(POLARSSL_ECP_DP_SECP384R1_ENABLED)
-    { POLARSSL_ECP_DP_SECP384R1,    24,     384, },
+    { POLARSSL_ECP_DP_SECP384R1,    24,     384,    "secp384r1" },
 #endif
 #if defined(POLARSSL_ECP_DP_SECP256R1_ENABLED)
-    { POLARSSL_ECP_DP_SECP256R1,    23,     256, },
+    { POLARSSL_ECP_DP_SECP256R1,    23,     256,    "secp256r1" },
 #endif
 #if defined(POLARSSL_ECP_DP_SECP224R1_ENABLED)
-    { POLARSSL_ECP_DP_SECP224R1,    21,     224, },
+    { POLARSSL_ECP_DP_SECP224R1,    21,     224,    "secp224r1" },
 #endif
 #if defined(POLARSSL_ECP_DP_SECP192R1_ENABLED)
-    { POLARSSL_ECP_DP_SECP192R1,    19,     192, },
+    { POLARSSL_ECP_DP_SECP192R1,    19,     192,    "secp192r1" },
 #endif
-    { POLARSSL_ECP_DP_NONE,          0,     0 },
+    { POLARSSL_ECP_DP_NONE,          0,     0,      NULL        },
 };
 
 /*
@@ -741,7 +742,7 @@
 /*
  * Get the internal identifer from the TLS name
  */
-ecp_group_id ecp_grp_id_from_named_curve( uint16_t name )
+ecp_group_id ecp_grp_id_from_named_curve( uint16_t tls_id )
 {
     const ecp_curve_info *curve_info;
 
@@ -749,7 +750,7 @@
          curve_info->grp_id != POLARSSL_ECP_DP_NONE;
          curve_info++ )
     {
-        if( curve_info->name == name )
+        if( curve_info->tls_id == tls_id )
             return( curve_info->grp_id );
     }
 
@@ -759,7 +760,7 @@
 /*
  * Get the TLS name for the internal identifer
  */
-uint16_t ecp_named_curve_from_grp_id( ecp_group_id id )
+uint16_t ecp_named_curve_from_grp_id( ecp_group_id grp_id )
 {
     const ecp_curve_info *curve_info;
 
@@ -767,8 +768,8 @@
          curve_info->grp_id != POLARSSL_ECP_DP_NONE;
          curve_info++ )
     {
-        if( curve_info->grp_id == id )
-            return( curve_info->name );
+        if( curve_info->grp_id == grp_id )
+            return( curve_info->tls_id );
     }
 
     return( 0 );
diff --git a/library/ssl_cli.c b/library/ssl_cli.c
index be4d011..284c0a8 100644
--- a/library/ssl_cli.c
+++ b/library/ssl_cli.c
@@ -244,8 +244,8 @@
          curve->grp_id != POLARSSL_ECP_DP_NONE;
          curve++ )
     {
-        elliptic_curve_list[elliptic_curve_len++] = curve->name >> 8;
-        elliptic_curve_list[elliptic_curve_len++] = curve->name & 0xFF;
+        elliptic_curve_list[elliptic_curve_len++] = curve->tls_id >> 8;
+        elliptic_curve_list[elliptic_curve_len++] = curve->tls_id & 0xFF;
     }
 
     if( elliptic_curve_len == 0 )
diff --git a/programs/test/benchmark.c b/programs/test/benchmark.c
index 0aa37db..3f6c72f 100644
--- a/programs/test/benchmark.c
+++ b/programs/test/benchmark.c
@@ -456,11 +456,15 @@
             if( ecdsa_genkey( &ecdsa, curve_info->grp_id, myrand, NULL ) != 0 )
                 exit( 1 );
 
-            snprintf( title, sizeof( title ), "ECDSA-%d",
-                                              (int) curve_info->size );
+            snprintf( title, sizeof( title ), "ECDSA-%s",
+                                              curve_info->name );
             TIME_PUBLIC( title, "sign",
                     ret = ecdsa_write_signature( &ecdsa, buf, curve_info->size,
-                                           tmp, &sig_len, myrand, NULL ) );
+                                                tmp, &sig_len, myrand, NULL ) );
+
+            TIME_PUBLIC( title, "verify",
+                    ret = ecdsa_read_signature( &ecdsa, buf, curve_info->size,
+                                                tmp, sig_len ) );
 
             ecdsa_free( &ecdsa );
         }
@@ -488,16 +492,16 @@
                 exit( 1 );
             }
 
-            snprintf( title, sizeof( title ), "ECDHE-%d",
-                                              (int) curve_info->size );
+            snprintf( title, sizeof( title ), "ECDHE-%s",
+                                              curve_info->name );
             TIME_PUBLIC( title, "handshake",
                     ret |= ecdh_make_public( &ecdh, &olen, buf, sizeof( buf),
                                              myrand, NULL );
                     ret |= ecdh_calc_secret( &ecdh, &olen, buf, sizeof( buf ),
                                              myrand, NULL ) );
 
-            snprintf( title, sizeof( title ), "ECDH-%d",
-                                              (int) curve_info->size );
+            snprintf( title, sizeof( title ), "ECDH-%s",
+                                              curve_info->name );
             TIME_PUBLIC( title, "handshake",
                     ret |= ecdh_calc_secret( &ecdh, &olen, buf, sizeof( buf ),
                                              myrand, NULL ) );