|
@@ -18,27 +18,32 @@
|
|
|
#ifdef LTC_DER
|
|
|
|
|
|
/* LTC define to ASN.1 TAG */
|
|
|
-static int ltc_to_asn1(int v)
|
|
|
+static int ltc_to_asn1(ltc_asn1_type v)
|
|
|
{
|
|
|
switch (v) {
|
|
|
case LTC_ASN1_BOOLEAN: return 0x01;
|
|
|
case LTC_ASN1_INTEGER:
|
|
|
case LTC_ASN1_SHORT_INTEGER: return 0x02;
|
|
|
+ case LTC_ASN1_RAW_BIT_STRING:
|
|
|
case LTC_ASN1_BIT_STRING: return 0x03;
|
|
|
case LTC_ASN1_OCTET_STRING: return 0x04;
|
|
|
case LTC_ASN1_NULL: return 0x05;
|
|
|
case LTC_ASN1_OBJECT_IDENTIFIER: return 0x06;
|
|
|
case LTC_ASN1_UTF8_STRING: return 0x0C;
|
|
|
case LTC_ASN1_PRINTABLE_STRING: return 0x13;
|
|
|
+ case LTC_ASN1_TELETEX_STRING: return 0x14;
|
|
|
case LTC_ASN1_IA5_STRING: return 0x16;
|
|
|
case LTC_ASN1_UTCTIME: return 0x17;
|
|
|
case LTC_ASN1_SEQUENCE: return 0x30;
|
|
|
case LTC_ASN1_SET:
|
|
|
case LTC_ASN1_SETOF: return 0x31;
|
|
|
- default: return -1;
|
|
|
+ case LTC_ASN1_CHOICE:
|
|
|
+ case LTC_ASN1_CONSTRUCTED:
|
|
|
+ case LTC_ASN1_EOL: return -1;
|
|
|
}
|
|
|
-}
|
|
|
-
|
|
|
+ return -1;
|
|
|
+}
|
|
|
+
|
|
|
|
|
|
static int qsort_helper(const void *a, const void *b)
|
|
|
{
|