From: Andreas Steffen Date: Mon, 18 Jun 2018 22:29:39 +0000 (+0200) Subject: vici: Support for QSKE mechanisms X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=bbfa79a43f44916a21aee4b97fc3a774ad582204;p=thirdparty%2Fstrongswan.git vici: Support for QSKE mechanisms --- diff --git a/src/libcharon/plugins/vici/vici_query.c b/src/libcharon/plugins/vici/vici_query.c index 16e3c8b1fc..1e17375b77 100644 --- a/src/libcharon/plugins/vici/vici_query.c +++ b/src/libcharon/plugins/vici/vici_query.c @@ -54,6 +54,7 @@ #include #include +#include #include #include #include @@ -439,6 +440,10 @@ static void list_ike(private_vici_query_t *this, vici_builder_t *b, { b->add_kv(b, "dh-group", "%N", diffie_hellman_group_names, alg); } + if (proposal->get_algorithm(proposal, QSKE_MECHANISM, &alg, NULL)) + { + b->add_kv(b, "qske-mechanism", "%N", qske_mechanism_names, alg); + } } add_condition(b, ike_sa, "ppk", COND_PPK); @@ -1232,6 +1237,7 @@ CALLBACK(get_algorithms, vici_message_t*, pseudo_random_function_t prf; ext_out_function_t xof; diffie_hellman_group_t group; + qske_mechanism_t mechanism; rng_quality_t quality; const char *plugin_name; @@ -1300,6 +1306,15 @@ CALLBACK(get_algorithms, vici_message_t*, enumerator->destroy(enumerator); b->end_section(b); + b->begin_section(b, "qske"); + enumerator = lib->crypto->create_qske_enumerator(lib->crypto); + while (enumerator->enumerate(enumerator, &mechanism, &plugin_name)) + { + add_algorithm(b, qske_mechanism_names, mechanism, plugin_name); + } + enumerator->destroy(enumerator); + b->end_section(b); + b->begin_section(b, "rng"); enumerator = lib->crypto->create_rng_enumerator(lib->crypto); while (enumerator->enumerate(enumerator, &quality, &plugin_name))