diff options
author | Simon Josefsson <simon@josefsson.org> | 2007-04-04 10:45:50 +0000 |
---|---|---|
committer | Simon Josefsson <simon@josefsson.org> | 2007-04-04 10:45:50 +0000 |
commit | 34e370cbd8b0f9dfbf215ad8ae36b362d17436a7 (patch) | |
tree | 7e12885e6224bd4919232396b62111ba53b1d147 /src | |
parent | 622802f37fe08c38b1f44d7ab10a24563869889c (diff) | |
download | gnutls-34e370cbd8b0f9dfbf215ad8ae36b362d17436a7.tar.gz |
Don't hard code algorithm list.
Diffstat (limited to 'src')
-rw-r--r-- | src/common.c | 128 |
1 files changed, 83 insertions, 45 deletions
diff --git a/src/common.c b/src/common.c index bfbceca5ee..7985873197 100644 --- a/src/common.c +++ b/src/common.c @@ -596,51 +596,89 @@ print_cert_info (gnutls_session session, const char *hostname) void print_list (void) { - /* FIXME: This is hard coded. Make it print all the supported - * algorithms. - */ - printf ("\n"); - printf ("Certificate types:"); - printf (" X.509"); - printf (", OPENPGP\n"); - - printf ("Protocols:"); - printf (" TLS1.2"); - printf (", TLS1.1"); - printf (", TLS1.0"); - printf (", SSL3.0\n"); - - printf ("Ciphers:"); - printf (" AES-256-CBC"); - printf (", AES-128-CBC"); - printf (", 3DES-CBC"); - printf (", ARCFOUR"); - printf (", ARCFOUR-40\n"); - - printf ("MACs:"); - printf (" SHA512"); - printf (", SHA384"); - printf (", SHA256"); - printf (", SHA1"); - printf (", MD5"); - printf (", RMD160\n"); - - printf ("Key exchange algorithms:"); - printf (" RSA"); - printf (", RSA-EXPORT"); - printf (", DHE-DSS"); - printf (", DHE-RSA"); - printf (", DHE-PSK"); - printf (", PSK"); - printf (", SRP"); - printf (", SRP-RSA"); - printf (", SRP-DSS"); - printf (", ANON-DH\n"); - - printf ("Compression methods:"); - printf (" DEFLATE"); - printf (", LZO"); - printf (", NULL\n"); + { + const gnutls_protocol_t *p = gnutls_certificate_type_list(); + + printf ("Certificate types: "); + for (; *p; p++) + { + printf ("%s", gnutls_certificate_type_get_name (*p)); + if (*(p+1)) + printf (", "); + else + printf ("\n"); + } + } + + { + const gnutls_protocol_t *p = gnutls_protocol_list(); + + printf ("Protocols: "); + for (; *p; p++) + { + printf ("%s", gnutls_protocol_get_name (*p)); + if (*(p+1)) + printf (", "); + else + printf ("\n"); + } + } + + { + const gnutls_cipher_algorithm_t *p = gnutls_cipher_list(); + + printf ("Ciphers: "); + for (; *p; p++) + { + printf ("%s", gnutls_cipher_get_name (*p)); + if (*(p+1)) + printf (", "); + else + printf ("\n"); + } + } + + { + const gnutls_cipher_algorithm_t *p = gnutls_mac_list(); + + printf ("MACs: "); + for (; *p; p++) + { + printf ("%s", gnutls_mac_get_name (*p)); + if (*(p+1)) + printf (", "); + else + printf ("\n"); + } + } + + { + const gnutls_kx_algorithm_t *p = gnutls_kx_list(); + + printf ("Key exchange algorithms: "); + for (; *p; p++) + { + printf ("%s", gnutls_kx_get_name (*p)); + if (*(p+1)) + printf (", "); + else + printf ("\n"); + } + } + + { + const gnutls_compression_method_t *p = gnutls_compression_list(); + + printf ("Compression: "); + for (; *p; p++) + { + printf ("%s", gnutls_compression_get_name (*p)); + if (*(p+1)) + printf (", "); + else + printf ("\n"); + } + } } void |