From: Nikos Mavrogiannopoulos Date: Sun, 2 Feb 2014 07:58:25 +0000 (+0100) Subject: When two initial keywords are specified then treat the second as having the '+' modifier. X-Git-Tag: gnutls_3_1_21~10 X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=3209f21e7dda37fc4af610951044a3f467db6bce;p=thirdparty%2Fgnutls.git When two initial keywords are specified then treat the second as having the '+' modifier. This will handle SECURE256:SECURE128 the same way as SECURE256:+SECURE128. --- diff --git a/lib/gnutls_priority.c b/lib/gnutls_priority.c index 7eff609f35..1ec6f280ac 100644 --- a/lib/gnutls_priority.c +++ b/lib/gnutls_priority.c @@ -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] == '+'