]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
remove is_pair
authorAlan T. DeKok <aland@freeradius.org>
Thu, 20 Feb 2025 16:13:15 +0000 (11:13 -0500)
committerAlan T. DeKok <aland@freeradius.org>
Thu, 20 Feb 2025 16:13:15 +0000 (11:13 -0500)
now that we have sequence_of=oid_and_value

src/protocols/der/base.c
src/tests/unit/protocols/der/dictionary.test

index a6c19724c1dbc60e96d92907ab78d03656000fdc..cd8e2ebc3d076a2cac00ae7334707086f6fc8b88 100644 (file)
@@ -317,29 +317,6 @@ static int dict_flag_set_of(fr_dict_attr_t **da_p, char const *value, UNUSED fr_
        return 0;
 }
 
-static int dict_flag_is_pair(fr_dict_attr_t **da_p, UNUSED char const *value, UNUSED fr_dict_flag_parser_rule_t const *rules)
-{
-       fr_der_attr_flags_t *flags = fr_dict_attr_ext(*da_p, FR_DICT_ATTR_EXT_PROTOCOL_SPECIFIC);
-
-       if ((*da_p)->type != FR_TYPE_GROUP) {
-               fr_strerror_printf("Invalid data type '%s' for 'is_pair'.  Only 'group' is allowed",
-                                  fr_type_to_str((*da_p)->type));
-               return -1;
-       }
-
-       /*
-        *      Only sets and sequences can use 'is_pair'.
-        */
-       if ((flags->der_type != FR_DER_TAG_SET) && (flags->der_type != FR_DER_TAG_SEQUENCE)) {
-               fr_strerror_printf("Cannot use 'is_pair' for DER type '%s'", fr_der_tag_to_str(flags->der_type));
-               return -1;
-       }
-
-       flags->is_pair = true;
-
-       return 0;
-}
-
 static int dict_flag_is_extensions(fr_dict_attr_t **da_p, UNUSED char const *value, UNUSED fr_dict_flag_parser_rule_t const *rules)
 {
        fr_der_attr_flags_t *flags = fr_dict_attr_ext(*da_p, FR_DICT_ATTR_EXT_PROTOCOL_SPECIFIC);
@@ -430,7 +407,6 @@ static const fr_dict_flag_parser_t  der_flags[] = {
        { L("is_choice"),       { .func = dict_flag_is_choice } },
        { L("is_extensions"),   { .func = dict_flag_is_extensions } },
        { L("is_oid_leaf"),     { .func = dict_flag_is_oid_leaf } },
-       { L("is_pair"),         { .func = dict_flag_is_pair } },
        { L("max"),             { .func = dict_flag_max, .needs_value = true } },
        { L("option"),          { .func = dict_flag_option} },
        { L("sequence_of"),     { .func = dict_flag_sequence_of, .needs_value = true } },
index 6e3831fe8524bf40b1d872fc9ed89ce0360539dd..07bae1c6cc3ca809133c6f8ef3b12e2109a27e7d 100644 (file)
@@ -8,7 +8,7 @@ DEFINE  Issuer                                          sequence sequence_of=set
 BEGIN Issuer
 DEFINE RelativeDistinguishedName                       set
 BEGIN RelativeDistinguishedName
-DEFINE AttributeTypeAndValue                           group ref=OID-Tree,sequence_of=set,is_pair
+DEFINE AttributeTypeAndValue                           sequence sequence_of=oid_and_value,ref=OID-Tree
 END RelativeDistinguishedName
 END Issuer
 
@@ -16,7 +16,7 @@ DEFINE        Issuer-Set                                      set set_of=set
 BEGIN Issuer-Set
 DEFINE RelativeDistinguishedName                       set
 BEGIN RelativeDistinguishedName
-DEFINE AttributeTypeAndValue                           group ref=OID-Tree,sequence_of=set,is_pair
+DEFINE AttributeTypeAndValue                           sequence sequence_of=oid_and_value,ref=OID-Tree
 END RelativeDistinguishedName
 END Issuer-Set