diff options
author | Andreas Steffen <andreas.steffen@strongswan.org> | 2009-08-27 16:07:59 +0200 |
---|---|---|
committer | Andreas Steffen <andreas.steffen@strongswan.org> | 2009-08-27 16:07:59 +0200 |
commit | 263872c47d2b2cadb7f3abab374354ef7ca83623 (patch) | |
tree | 3e0353ddde3a5235c0e9c9369ace00527a8d46dd /src/libstrongswan/asn1 | |
parent | 050649ac41dc8e3b475d8cdc728ea876af928d4f (diff) | |
download | strongswan-263872c47d2b2cadb7f3abab374354ef7ca83623.tar.bz2 strongswan-263872c47d2b2cadb7f3abab374354ef7ca83623.tar.xz |
added OID_EC_PUBLIC_KEY algorithmIdentifier
Diffstat (limited to 'src/libstrongswan/asn1')
-rw-r--r-- | src/libstrongswan/asn1/asn1.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/libstrongswan/asn1/asn1.c b/src/libstrongswan/asn1/asn1.c index df922c54d..0a585dc9f 100644 --- a/src/libstrongswan/asn1/asn1.c +++ b/src/libstrongswan/asn1/asn1.c @@ -43,23 +43,24 @@ const chunk_t ASN1_INTEGER_2 = chunk_from_buf(ASN1_INTEGER_2_str); */ chunk_t asn1_algorithmIdentifier(int oid) { - chunk_t null; + chunk_t parameters; - /* some algorithmIdentifiers have an appended NULL */ + /* some algorithmIdentifiers have a NULL parameters field and some do not */ switch (oid) { + case OID_EC_PUBLICKEY: case OID_ECDSA_WITH_SHA1: case OID_ECDSA_WITH_SHA224: case OID_ECDSA_WITH_SHA256: case OID_ECDSA_WITH_SHA384: case OID_ECDSA_WITH_SHA512: - null = chunk_empty; + parameters = chunk_empty; break; default: - null = asn1_wrap(ASN1_NULL, "");; + parameters = asn1_simple_object(ASN1_NULL, chunk_empty); break; } - return asn1_wrap(ASN1_SEQUENCE, "mm", asn1_build_known_oid(oid), null); + return asn1_wrap(ASN1_SEQUENCE, "mm", asn1_build_known_oid(oid), parameters); } /* |