Implemented full BLISS support for IKEv2 public key authentication and the pki tool

This commit is contained in:
Andreas Steffen
2014-11-29 14:51:18 +01:00
parent 43d9247599
commit b6bb32e658
17 changed files with 97 additions and 18 deletions
+18 -5
View File
@@ -1124,6 +1124,7 @@ static void load_secrets(private_stroke_cred_t *this, mem_cred_t *secrets,
while (fetchline(src, &line))
{
chunk_t ids, token;
key_type_t key_type;
shared_key_type_t type;
line_nr++;
@@ -1222,10 +1223,22 @@ static void load_secrets(private_stroke_cred_t *this, mem_cred_t *secrets,
DBG1(DBG_CFG, "line %d: missing token", line_nr);
break;
}
if (match("RSA", &token) || match("ECDSA", &token))
if (match("RSA", &token) || match("ECDSA", &token) ||
match("BLISS", &token))
{
if (!load_private(secrets, line, line_nr, prompt,
match("RSA", &token) ? KEY_RSA : KEY_ECDSA))
if (match("RSA", &token))
{
key_type = KEY_RSA;
}
else if (match("ECDSA", &token))
{
key_type = KEY_ECDSA;
}
else
{
key_type = KEY_BLISS;
}
if (!load_private(secrets, line, line_nr, prompt, key_type))
{
break;
}
@@ -1256,8 +1269,8 @@ static void load_secrets(private_stroke_cred_t *this, mem_cred_t *secrets,
}
else
{
DBG1(DBG_CFG, "line %d: token must be either "
"RSA, ECDSA, P12, PIN, PSK, EAP, XAUTH or NTLM", line_nr);
DBG1(DBG_CFG, "line %d: token must be either RSA, ECDSA, BLISS, "
"P12, PIN, PSK, EAP, XAUTH or NTLM", line_nr);
break;
}
}
@@ -69,6 +69,7 @@ METHOD(plugin_t, get_features, int,
PLUGIN_SDEPEND(PRIVKEY, KEY_RSA),
PLUGIN_SDEPEND(PRIVKEY, KEY_ECDSA),
PLUGIN_SDEPEND(PRIVKEY, KEY_DSA),
PLUGIN_SDEPEND(PRIVKEY, KEY_BLISS),
PLUGIN_SDEPEND(CERT_DECODE, CERT_ANY),
PLUGIN_SDEPEND(CERT_DECODE, CERT_X509),
PLUGIN_SDEPEND(CERT_DECODE, CERT_X509_CRL),