]> git.ipfire.org Git - thirdparty/gnutls.git/commitdiff
priority: add GROUP-GOST-ALL keyword
authorDmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Sun, 10 Feb 2019 09:18:40 +0000 (12:18 +0300)
committerDmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Wed, 18 Dec 2019 20:42:47 +0000 (23:42 +0300)
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
lib/priority.c

index 93cd9d5fef99114421c36814fa4cda57eb516d34..c1669220c6c7d5967ef02b4db135f77d235a3dce 100644 (file)
@@ -136,6 +136,19 @@ static const int _supported_groups_ecdh[] = {
        0
 };
 
+static const int _supported_groups_gost[] = {
+#ifdef ENABLE_GOST
+       GNUTLS_GROUP_GC256A,
+       GNUTLS_GROUP_GC256B,
+       GNUTLS_GROUP_GC256C,
+       GNUTLS_GROUP_GC256D,
+       GNUTLS_GROUP_GC512A,
+       GNUTLS_GROUP_GC512B,
+       GNUTLS_GROUP_GC512C,
+#endif
+       0
+};
+
 static const int _supported_groups_normal[] = {
        GNUTLS_GROUP_SECP256R1,
        GNUTLS_GROUP_SECP384R1,
@@ -2061,6 +2074,12 @@ gnutls_priority_init(gnutls_priority_t * priority_cache,
                                        bulk_given_fn(&(*priority_cache)->
                                                _supported_ecc,
                                                _supported_groups_ecdh);
+                               } else if (strncasecmp
+                                   (&broken_list[i][1], "GROUP-GOST-ALL",
+                                    12) == 0) {
+                                       bulk_given_fn(&(*priority_cache)->
+                                               _supported_ecc,
+                                               _supported_groups_gost);
                                } else {
                                        if ((algo =
                                             gnutls_group_get_id