Add name and get_size() members in PK
diff --git a/library/pk_wrap.c b/library/pk_wrap.c
index 9a89796..f898591 100644
--- a/library/pk_wrap.c
+++ b/library/pk_wrap.c
@@ -45,6 +45,11 @@
     return( type == POLARSSL_PK_RSA );
 }
 
+static size_t rsa_get_size( void * ctx )
+{
+    return( mpi_size( &((rsa_context *) ctx)->N ) * 8 );
+}
+
 static int rsa_verify_wrap( void *ctx,
                    const unsigned char *hash, const md_info_t *md_info,
                    const unsigned char *sig, size_t sig_len )
@@ -57,6 +62,8 @@
 
 const pk_info_t rsa_info = {
     POLARSSL_PK_RSA,
+    "RSA",
+    rsa_get_size,
     rsa_can_do,
     rsa_verify_wrap,
 };
@@ -68,6 +75,11 @@
     return( type == POLARSSL_PK_ECDSA );
 }
 
+static size_t ecdsa_get_size( void *ctx )
+{
+    return( ((ecdsa_context *) ctx)->grp.pbits );
+}
+
 int ecdsa_verify_wrap( void *ctx,
                        const unsigned char *hash, const md_info_t *md_info,
                        const unsigned char *sig, size_t sig_len )
@@ -78,6 +90,8 @@
 
 const pk_info_t ecdsa_info = {
     POLARSSL_PK_ECDSA,
+    "ECDSA",
+    ecdsa_get_size,
     ecdsa_can_do,
     ecdsa_verify_wrap,
 };
@@ -94,6 +108,11 @@
             type == POLARSSL_PK_ECDSA );
 }
 
+static size_t eckey_get_size( void *ctx )
+{
+    return( ((ecp_keypair *) ctx)->grp.pbits );
+}
+
 static int eckey_verify_wrap( void *ctx,
                        const unsigned char *hash, const md_info_t *md_info,
                        const unsigned char *sig, size_t sig_len )
@@ -123,6 +142,8 @@
 
 const pk_info_t eckey_info = {
     POLARSSL_PK_ECKEY,
+    "EC",
+    eckey_get_size,
     eckey_can_do,
     eckey_verify_wrap,
 };
@@ -151,6 +172,8 @@
 
 const pk_info_t eckeydh_info = {
     POLARSSL_PK_ECKEY_DH,
+    "EC_DH",
+    eckey_get_size,         /* Same underlying key structure */
     eckeydh_can_do,
     eckeydh_verify_wrap,
 };