- Improved information provided about current Hashing, Cipher and Suite capabilities

diff --git a/include/polarssl/cipher.h b/include/polarssl/cipher.h
index b8587f4..2e19eae 100644
--- a/include/polarssl/cipher.h
+++ b/include/polarssl/cipher.h
@@ -152,6 +152,14 @@
 #endif
 
 /**
+ * \brief Returns the list of ciphers supported by the generic cipher module.
+ *
+ * \return              a statically allocated array of ciphers, the last entry
+ *                      is 0.
+ */
+const int *cipher_list( void );
+
+/**
  * \brief               Returns the cipher information structure associated
  *                      with the given cipher name.
  *
diff --git a/include/polarssl/md.h b/include/polarssl/md.h
index 13250dd..05f6eb0 100644
--- a/include/polarssl/md.h
+++ b/include/polarssl/md.h
@@ -119,6 +119,14 @@
 #endif
 
 /**
+ * \brief Returns the list of digests supported by the generic digest module.
+ *
+ * \return          a statically allocated array of digests, the last entry
+ *                  is 0.
+ */
+const int *md_list( void );
+
+/**
  * \brief           Returns the message digest information associated with the
  *                  given digest name.
  *
diff --git a/include/polarssl/ssl.h b/include/polarssl/ssl.h
index 6d7b495..7ddf7b1 100644
--- a/include/polarssl/ssl.h
+++ b/include/polarssl/ssl.h
@@ -320,6 +320,26 @@
 extern int ssl_default_ciphers[];
 
 /**
+ * \brief Returns the list of ciphers supported by the SSL/TLS module.
+ *
+ * \return              a statically allocated array of ciphers, the last entry
+ *                      is 0.
+ */
+static inline const int *ssl_list_ciphers( void )
+{
+    return ssl_default_ciphers;
+}
+
+/**
+ * \brief          Return the name of the cipher associated with the given ID
+ *
+ * \param cipher_id     SSL cipher ID
+ *
+ * \return              a string containing the cipher name
+ */
+const char *ssl_get_cipher_name( const int cipher_id );
+
+/**
  * \brief          Initialize an SSL context
  *
  * \param ssl      SSL context