]> git.sur5r.net Git - openldap/blobdiff - contrib/slapd-modules/comp_match/asn_to_syn_mr.c
Merge remote branch 'origin/mdb.master'
[openldap] / contrib / slapd-modules / comp_match / asn_to_syn_mr.c
index 930b39cba74695673d618d166bb27af1cb298a3a..e7e1ee7c3a730b7d68c92cd9bf26c9807f6ad337 100644 (file)
@@ -1,6 +1,7 @@
 #include <component.h>
 #include "asn.h"
 #include "componentlib.h"
+#include "certificate.h"
 
 AsnTypetoMatchingRuleTable directory_component_matching_table[] = {
        "1.2.36.79672281.1.13.7",
@@ -163,35 +164,116 @@ AsnTypetoCompType asntype_to_compType_mapping_tbl[] = {
 };
 
 AsnTypetoCompDesc asntype_to_compdesc_mapping_tbl[] = {
-{ BASICTYPE_BOOLEAN,{}},
-{ BASICTYPE_INTEGER, {}},
-{ BASICTYPE_BITSTRING, {}},
-{ BASICTYPE_OCTETSTRING, {}},
-{ BASICTYPE_NULL, {}},
-{ BASICTYPE_OID, {}},
-{ BASICTYPE_REAL, {}},
-{ BASICTYPE_ENUMERATED, {}},
-{ BASICTYPE_NUMERIC_STR, {}},
-{ BASICTYPE_PRINTABLE_STR, {}},
-{ BASICTYPE_UNIVERSAL_STR, {}},
-{ BASICTYPE_IA5_STR, {}},
-{ BASICTYPE_BMP_STR, {}},
-{ BASICTYPE_UTF8_STR, {}},
-{ BASICTYPE_UTCTIME, {}},
-{ BASICTYPE_GENERALIZEDTIME, {}},
-{ BASICTYPE_GRAPHIC_STR, {}},
-{ BASICTYPE_VISIBLE_STR, {}},
-{ BASICTYPE_GENERAL_STR,{}},
-{ BASICTYPE_OBJECTDESCRIPTOR, {}},
-{ BASICTYPE_VIDEOTEX_STR, {}},
-{ BASICTYPE_T61_STR, {}},
-{ BASICTYPE_OCTETCONTAINING, {}},
-{ BASICTYPE_BITCONTAINING, {}},
-{ BASICTYPE_RELATIVE_OID, {}},
+{ BASICTYPE_BOOLEAN, { -1, NULL, {},{},0,ASN_BASIC,BASICTYPE_BOOLEAN,
+       (encoder_func*)NULL,(encoder_func*)GEncComponentBool,(encoder_func*)NULL,
+       (gser_decoder_func*)GDecComponentBool,(ber_decoder_func*)BDecComponentBool,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,MatchingComponentBool}},
+{ BASICTYPE_INTEGER, { -1, NULL, {},{},0,ASN_BASIC,BASICTYPE_INTEGER,
+       (encoder_func*)NULL,(encoder_func*)GEncComponentInt,(encoder_func*)NULL,
+       (gser_decoder_func*)GDecComponentInt,(ber_decoder_func*)BDecComponentInt,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,MatchingComponentInt}},
+{ BASICTYPE_BITSTRING, { -1, NULL, {},{},0,ASN_BASIC,BASICTYPE_BITSTRING,
+       (encoder_func*)NULL,(encoder_func*)GEncComponentBits,(encoder_func*)NULL,
+       (gser_decoder_func*)GDecComponentBits,(ber_decoder_func*)BDecComponentBits,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,MatchingComponentBits}},
+{ BASICTYPE_OCTETSTRING, { -1, NULL, {},{},0,ASN_BASIC,BASICTYPE_OCTETSTRING,
+       (encoder_func*)NULL,(encoder_func*)GEncComponentOcts,(encoder_func*)NULL,
+       (gser_decoder_func*)GDecComponentOcts,(ber_decoder_func*)BDecComponentOcts,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,MatchingComponentOcts}},
+{ BASICTYPE_NULL, { -1, NULL, {},{},0,ASN_BASIC,BASICTYPE_NULL,
+       (encoder_func*)NULL,(encoder_func*)GEncComponentNull,(encoder_func*)NULL,
+       (gser_decoder_func*)GDecComponentNull,(ber_decoder_func*)BDecComponentNull,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,MatchingComponentNull}},
+{ BASICTYPE_OID, { -1, NULL, {},{},0,ASN_BASIC,BASICTYPE_OID,
+       (encoder_func*)NULL,(encoder_func*)GEncComponentOid,(encoder_func*)NULL,
+       (gser_decoder_func*)GDecComponentOid,(ber_decoder_func*)BDecComponentOid,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,MatchingComponentOid}},
+{ BASICTYPE_REAL, { -1, NULL, {},{},0,ASN_BASIC,BASICTYPE_REAL,
+       (encoder_func*)NULL,(encoder_func*)GEncComponentReal,(encoder_func*)NULL,
+       (gser_decoder_func*)GDecComponentReal,(ber_decoder_func*)BDecComponentReal,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,MatchingComponentReal}},
+{ BASICTYPE_ENUMERATED, { -1, NULL, {},{},0,ASN_BASIC,BASICTYPE_ENUMERATED,
+       (encoder_func*)NULL,(encoder_func*)GEncComponentEnum,(encoder_func*)NULL,
+       (gser_decoder_func*)GDecComponentEnum,(ber_decoder_func*)BDecComponentEnum,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,MatchingComponentEnum}},
+{ BASICTYPE_NUMERIC_STR, { -1, NULL, {},{},0,ASN_BASIC,BASICTYPE_NUMERIC_STR,
+       (encoder_func*)NULL,(encoder_func*)GEncComponentNumericString,(encoder_func*)NULL,
+       (gser_decoder_func*)GDecComponentNumericString,(ber_decoder_func*)BDecComponentNumericString,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,MatchingComponentNumericString}},
+{ BASICTYPE_PRINTABLE_STR, { -1, NULL, {},{},0,ASN_BASIC,BASICTYPE_PRINTABLE_STR,
+       (encoder_func*)NULL,(encoder_func*)GEncComponentPrintableString,(encoder_func*)NULL,
+       (gser_decoder_func*)GDecComponentPrintableString,(ber_decoder_func*)BDecComponentPrintableString,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,MatchingComponentPrintableString}},
+{ BASICTYPE_UNIVERSAL_STR, { -1, NULL, {},{},0,ASN_BASIC,BASICTYPE_UNIVERSAL_STR,
+       (encoder_func*)NULL,(encoder_func*)GEncComponentUniversalString,(encoder_func*)NULL,
+       (gser_decoder_func*)GDecComponentUniversalString,(ber_decoder_func*)BDecComponentUniversalString,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,MatchingComponentUniversalString}},
+{ BASICTYPE_IA5_STR, { -1, NULL, {},{},0,ASN_BASIC,BASICTYPE_IA5_STR,
+       (encoder_func*)NULL,(encoder_func*)GEncComponentIA5String,(encoder_func*)NULL,
+       (gser_decoder_func*)GDecComponentIA5String,(ber_decoder_func*)BDecComponentIA5String,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,MatchingComponentIA5String}},
+{ BASICTYPE_BMP_STR, { -1, NULL, {},{},0,ASN_BASIC,BASICTYPE_BMP_STR,
+       (encoder_func*)NULL,(encoder_func*)GEncComponentBMPString,(encoder_func*)NULL,
+       (gser_decoder_func*)GDecComponentBMPString,(ber_decoder_func*)BDecComponentBMPString,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,MatchingComponentBMPString}},
+{ BASICTYPE_UTF8_STR, { -1, NULL, {},{},0,ASN_BASIC,BASICTYPE_UTF8_STR,
+       (encoder_func*)NULL,(encoder_func*)GEncComponentUTF8String,(encoder_func*)NULL,
+       (gser_decoder_func*)GDecComponentUTF8String,(ber_decoder_func*)BDecComponentUTF8String,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,MatchingComponentUTF8String}},
+{ BASICTYPE_UTCTIME, { -1, NULL, {},{},0,ASN_BASIC,BASICTYPE_UTCTIME,
+       (encoder_func*)NULL,(encoder_func*)GEncComponentUTCTime,(encoder_func*)NULL,
+       (gser_decoder_func*)GDecComponentUTCTime,(ber_decoder_func*)BDecComponentUTCTime,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,MatchingComponentUTCTime}},
+{ BASICTYPE_GENERALIZEDTIME, { -1, NULL, {},{},0,ASN_BASIC,BASICTYPE_GENERALIZEDTIME,
+       (encoder_func*)NULL,(encoder_func*)GEncComponentUTCTime,(encoder_func*)NULL,
+       (gser_decoder_func*)GDecComponentUTCTime,(ber_decoder_func*)BDecComponentUTCTime,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,MatchingComponentUTCTime}},
+{ BASICTYPE_GRAPHIC_STR, { -1, NULL, {},{},0,ASN_BASIC,BASICTYPE_GRAPHIC_STR,
+       (encoder_func*)NULL,(encoder_func*)GEncComponentPrintableString,(encoder_func*)NULL,
+       (gser_decoder_func*)GDecComponentPrintableString,(ber_decoder_func*)BDecComponentPrintableString,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,MatchingComponentPrintableString}},
+{ BASICTYPE_VISIBLE_STR, { -1, NULL, {},{},0,ASN_BASIC,BASICTYPE_VISIBLE_STR,
+       (encoder_func*)NULL,(encoder_func*)GEncComponentVisibleString,(encoder_func*)NULL,
+       (gser_decoder_func*)GDecComponentVisibleString,(ber_decoder_func*)BDecComponentVisibleString,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,MatchingComponentVisibleString}},
+{ BASICTYPE_GENERAL_STR,{ -1, NULL, {},{},0,ASN_BASIC,BASICTYPE_GENERAL_STR,
+       (encoder_func*)NULL,(encoder_func*)GEncComponentUTF8String,(encoder_func*)NULL,
+       (gser_decoder_func*)GDecComponentUTF8String,(ber_decoder_func*)BDecComponentUTF8String,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,MatchingComponentUTF8String}},
+{ BASICTYPE_OBJECTDESCRIPTOR, { -1, NULL, {},{},0,ASN_BASIC,BASICTYPE_OBJECTDESCRIPTOR,
+       (encoder_func*)NULL,(encoder_func*)GEncComponentUTF8String,(encoder_func*)NULL,
+       (gser_decoder_func*)GDecComponentUTF8String,(ber_decoder_func*)BDecComponentUTF8String,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,MatchingComponentUTF8String}},
+{ BASICTYPE_VIDEOTEX_STR, { -1, NULL, {},{},0,ASN_BASIC,BASICTYPE_VIDEOTEX_STR,
+       (encoder_func*)NULL,(encoder_func*)GEncComponentTeletexString,(encoder_func*)NULL,
+       (gser_decoder_func*)GDecComponentTeletexString,(ber_decoder_func*)BDecComponentTeletexString,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,MatchingComponentTeletexString}},
+{ BASICTYPE_T61_STR, { -1, NULL, {},{},0,ASN_BASIC,BASICTYPE_T61_STR,
+       (encoder_func*)NULL,(encoder_func*)GEncComponentUTF8String,(encoder_func*)NULL,
+       (gser_decoder_func*)GDecComponentUTF8String,(ber_decoder_func*)BDecComponentUTF8String,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,MatchingComponentUTF8String}},
+{ BASICTYPE_OCTETCONTAINING, { -1, NULL, {},{},0,ASN_BASIC,BASICTYPE_OCTETCONTAINING,
+       (encoder_func*)NULL,(encoder_func*)NULL,(encoder_func*)NULL,
+       (gser_decoder_func*)NULL,(ber_decoder_func*)NULL,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,NULL}},
+{ BASICTYPE_BITCONTAINING, { -1, NULL, {},{},0,ASN_BASIC,BASICTYPE_BITCONTAINING,
+       (encoder_func*)NULL,(encoder_func*)NULL,(encoder_func*)NULL,
+       (gser_decoder_func*)NULL,(ber_decoder_func*)NULL,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,NULL}},
+{ BASICTYPE_RELATIVE_OID, { -1, NULL, {},{},0,ASN_BASIC,BASICTYPE_RELATIVE_OID,
+       (encoder_func*)NULL,(encoder_func*)GEncComponentRelativeOid,(encoder_func*)NULL,
+       (gser_decoder_func*)GDecComponentRelativeOid,(ber_decoder_func*)BDecComponentRelativeOid,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,MatchingComponentRelativeOid}},
 { BASICTYPE_ANY, {}},
 { COMPOSITE_ASN1_TYPE, {}},
-{ RDNSequence, {}},
-{ RelativeDistinguishedName, {}}, 
+{ RDNSequence, { -1, NULL, {},{},0,ASN_COMPOSITE,RDNSequence,
+       (encoder_func*)ConvertRDNSequence2RFC2253,(encoder_func*)NULL,(encoder_func*)NULL,
+       (gser_decoder_func*)GDecComponentRDNSequence,(ber_decoder_func*)BDecComponentRDNSequence,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,MatchingComponentRDNSequence}},
+{ RelativeDistinguishedName, { -1, NULL, {},{},0,ASN_COMPOSITE,RDNSequence,
+       (encoder_func*)ConvertRDNSequence2RFC2253,(encoder_func*)NULL,(encoder_func*)NULL,
+       (gser_decoder_func*)GDecComponentRDNSequence,(ber_decoder_func*)BDecComponentRDNSequence,
+       (comp_free_func*)NULL,(extract_component_from_id_func*)NULL,MatchingComponentRDNSequence}}, 
 { TelephoneNumber, {}},
 { FacsimileTelephoneNumber__telephoneNumber, {}},
 { DirectoryString, {}},