summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikos Mavrogiannopoulos <nmav@gnutls.org>2004-02-10 21:04:21 +0000
committerNikos Mavrogiannopoulos <nmav@gnutls.org>2004-02-10 21:04:21 +0000
commit4a3973c7cbab574673ef3ca79c7a010dd3df76e9 (patch)
tree6a814b734af5bca0373d5eb375bf8632cb8126dc
parentc05ec8d781434991a800bb6d626638151c62ddb6 (diff)
downloadgnutls-4a3973c7cbab574673ef3ca79c7a010dd3df76e9.tar.gz
some bugfixes.
-rw-r--r--NEWS1
-rw-r--r--lib/ext_server_name.c3
-rw-r--r--lib/gnutls.h.in.in3
-rw-r--r--src/cli.c7
4 files changed, 9 insertions, 5 deletions
diff --git a/NEWS b/NEWS
index 4c78bb6c1e..2c1053df3c 100644
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,5 @@
Version 1.0.5
+- Fixed a bug where 'server name' extension was always sent.
- Backported several things from the development branch:
- Added CRL verification functionality to certtool.
- Corrected the CRL distribution point extension handling.
diff --git a/lib/ext_server_name.c b/lib/ext_server_name.c
index 6f41afba74..e8778145f6 100644
--- a/lib/ext_server_name.c
+++ b/lib/ext_server_name.c
@@ -125,6 +125,9 @@ int _gnutls_server_name_send_params(gnutls_session session, opaque * data,
*/
if (session->security_parameters.entity == GNUTLS_CLIENT) {
+ if (session->security_parameters.extensions.server_names_size == 0)
+ return 0;
+
/* uint16 */
total_size = 2;
for (i = 0;
diff --git a/lib/gnutls.h.in.in b/lib/gnutls.h.in.in
index b39d7bcc16..cd790c9640 100644
--- a/lib/gnutls.h.in.in
+++ b/lib/gnutls.h.in.in
@@ -86,8 +86,9 @@ typedef enum gnutls_digest_algorithm { GNUTLS_DIG_NULL=1, GNUTLS_DIG_MD5,
*/
#define GNUTLS_MAX_ALGORITHM_NUM 16
+#define GNUTLS_COMP_ZLIB GNUTLS_COMP_DEFLATE
typedef enum gnutls_compression_method { GNUTLS_COMP_NULL=1,
- GNUTLS_COMP_ZLIB,
+ GNUTLS_COMP_DEFLATE,
GNUTLS_COMP_LZO /* only available if gnutls-extra has been initialized
*/
} gnutls_compression_method;
diff --git a/src/cli.c b/src/cli.c
index d54bc53184..926a3070eb 100644
--- a/src/cli.c
+++ b/src/cli.c
@@ -157,19 +157,18 @@ static gnutls_session init_tls_session(const char *hostname)
/* allow the use of private ciphersuites.
*/
- if (disable_extensions == 0)
+ if (disable_extensions == 0) {
gnutls_handshake_set_private_extensions(session, 1);
-
- if (disable_extensions == 0)
gnutls_server_name_set(session, GNUTLS_NAME_DNS, hostname,
strlen(hostname));
+ gnutls_certificate_type_set_priority(session, cert_type_priority);
+ }
gnutls_cipher_set_priority(session, cipher_priority);
gnutls_compression_set_priority(session, comp_priority);
gnutls_kx_set_priority(session, kx_priority);
gnutls_protocol_set_priority(session, protocol_priority);
gnutls_mac_set_priority(session, mac_priority);
- gnutls_certificate_type_set_priority(session, cert_type_priority);
gnutls_dh_set_prime_bits(session, 512);