]> git.ipfire.org Git - thirdparty/gnutls.git/commitdiff
some fixes in server_name extension
authorNikos Mavrogiannopoulos <nmav@gnutls.org>
Sat, 7 Dec 2002 11:46:55 +0000 (11:46 +0000)
committerNikos Mavrogiannopoulos <nmav@gnutls.org>
Sat, 7 Dec 2002 11:46:55 +0000 (11:46 +0000)
lib/ext_server_name.c

index 5547d47eb076314d82b5749e03a37f1697cd736c..e6c481858f8613d15b9a751afbe851c6641a26c9 100644 (file)
@@ -174,12 +174,13 @@ int _gnutls_server_name_send_params(gnutls_session session, opaque * data,
               p += len;
            break;
         default:
+           gnutls_assert();
            return GNUTLS_E_UNIMPLEMENTED_FEATURE;
         }
       }
    }
    if (total_size == 0)
-      return GNUTLS_E_INVALID_REQUEST;
+      return 0;
    return total_size;
 }
 
@@ -213,12 +214,16 @@ int gnutls_server_name_get(gnutls_session session, void *data,
 {
    char *_data = data;
    
-   if (session->security_parameters.entity == GNUTLS_CLIENT)
+   if (session->security_parameters.entity == GNUTLS_CLIENT) {
+      gnutls_assert();
       return GNUTLS_E_INVALID_REQUEST;
+   }
 
    if (index >
-       session->security_parameters.extensions.server_names_size - 1)
+       session->security_parameters.extensions.server_names_size - 1) {
+      gnutls_assert();
       return GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE;
+   }
 
    *type =
        session->security_parameters.extensions.server_names[index].type;
@@ -268,8 +273,10 @@ int gnutls_server_name_set(gnutls_session session,
 {
    int server_names;
 
-   if (session->security_parameters.entity == GNUTLS_SERVER)
+   if (session->security_parameters.entity == GNUTLS_SERVER) {
+      gnutls_assert();
       return GNUTLS_E_INVALID_REQUEST;
+   }
 
    if (name_length > MAX_SERVER_NAME_SIZE)
       return GNUTLS_E_SHORT_MEMORY_BUFFER;