]> git.ipfire.org Git - thirdparty/gnutls.git/commitdiff
When two initial keywords are specified then treat the second as having the '+' modifier.
authorNikos Mavrogiannopoulos <nmav@gnutls.org>
Sun, 2 Feb 2014 07:58:25 +0000 (08:58 +0100)
committerNikos Mavrogiannopoulos <nmav@gnutls.org>
Sun, 2 Feb 2014 07:58:25 +0000 (08:58 +0100)
This will handle SECURE256:SECURE128 the same way as SECURE256:+SECURE128.

lib/gnutls_priority.c

index 7eff609f35962b163cf3be114ae6a9f2306b6146..1ec6f280accc7141841886988cabdbb0f580f305 100644 (file)
@@ -838,6 +838,7 @@ gnutls_priority_init (gnutls_priority_t * priority_cache,
   int broken_list_size = 0, i = 0, j;
   char *darg = NULL;
   int algo;
+  unsigned ikeyword_set = 0;
   rmadd_func *fn;
   bulk_rmadd_func *bulk_fn;
 
@@ -886,12 +887,14 @@ gnutls_priority_init (gnutls_priority_t * priority_cache,
   else
     {
       i = 1;
+      ikeyword_set = 1;
     }
 
   for (; i < broken_list_size; i++)
     {
-      if (check_level(broken_list[i], *priority_cache, 0) != 0)
+      if (check_level(broken_list[i], *priority_cache, ikeyword_set) != 0)
         {
+          ikeyword_set = 1;
           continue;
         }
       else if (broken_list[i][0] == '!' || broken_list[i][0] == '+'