diff options
author | Simo Sorce <simo@redhat.com> | 2014-11-13 11:31:09 -0500 |
---|---|---|
committer | Simo Sorce <simo@redhat.com> | 2014-11-20 10:52:13 -0500 |
commit | c6afc489a1c9d86fd593bd47c4a8dae6d9a008d2 (patch) | |
tree | 27ad9cc99e3c8e38b8df1adacb3cca5e3f8f1e43 /asn1/asn1c/KrbKey.c | |
parent | b170851058d6712442d553ef3d11ecd21b282443 (diff) | |
download | freeipa-c6afc489a1c9d86fd593bd47c4a8dae6d9a008d2.tar.gz freeipa-c6afc489a1c9d86fd593bd47c4a8dae6d9a008d2.tar.xz freeipa-c6afc489a1c9d86fd593bd47c4a8dae6d9a008d2.zip |
Add asn1c generated code for keytab controls
Instead of manually encoding controls, use an actual asn1 compiler.
The file asn1/asn1c/ipa.asn1 will contain ipa modules. The generated code
is committed to the tree and built into a static library that is linked
to the code that uses it.
The first module implements the GetKeytabControl control.
Related:
https://fedorahosted.org/freeipa/ticket/4718
https://fedorahosted.org/freeipa/ticket/4728
Reviewed-By: Alexander Bokovoy <abokovoy@redhat.com>
Reviewed-By: Nathaniel McCallum <npmccallum@redhat.com>
Diffstat (limited to 'asn1/asn1c/KrbKey.c')
-rw-r--r-- | asn1/asn1c/KrbKey.c | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/asn1/asn1c/KrbKey.c b/asn1/asn1c/KrbKey.c new file mode 100644 index 000000000..3abbdf1b6 --- /dev/null +++ b/asn1/asn1c/KrbKey.c @@ -0,0 +1,81 @@ +/* + * Generated by asn1c-0.9.21 (http://lionet.info/asn1c) + * From ASN.1 module "KeytabModule" + * found in "ipa.asn1" + * `asn1c -fskeletons-copy` + */ + +#include <asn_internal.h> + +#include "KrbKey.h" + +static asn_TYPE_member_t asn_MBR_KrbKey_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct KrbKey, key), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_TypeValuePair, + 0, /* Defer constraints checking to the member type */ + 0, /* PER is not compiled, use -gen-PER */ + 0, + "key" + }, + { ATF_POINTER, 2, offsetof(struct KrbKey, salt), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_TypeValuePair, + 0, /* Defer constraints checking to the member type */ + 0, /* PER is not compiled, use -gen-PER */ + 0, + "salt" + }, + { ATF_POINTER, 1, offsetof(struct KrbKey, s2kparams), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_OCTET_STRING, + 0, /* Defer constraints checking to the member type */ + 0, /* PER is not compiled, use -gen-PER */ + 0, + "s2kparams" + }, +}; +static ber_tlv_tag_t asn_DEF_KrbKey_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static asn_TYPE_tag2member_t asn_MAP_KrbKey_tag2el_1[] = { + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* key at 28 */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* salt at 29 */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* s2kparams at 30 */ +}; +static asn_SEQUENCE_specifics_t asn_SPC_KrbKey_specs_1 = { + sizeof(struct KrbKey), + offsetof(struct KrbKey, _asn_ctx), + asn_MAP_KrbKey_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* Start extensions */ + -1 /* Stop extensions */ +}; +asn_TYPE_descriptor_t asn_DEF_KrbKey = { + "KrbKey", + "KrbKey", + SEQUENCE_free, + SEQUENCE_print, + SEQUENCE_constraint, + SEQUENCE_decode_ber, + SEQUENCE_encode_der, + SEQUENCE_decode_xer, + SEQUENCE_encode_xer, + 0, 0, /* No PER support, use "-gen-PER" to enable */ + 0, /* Use generic outmost tag fetcher */ + asn_DEF_KrbKey_tags_1, + sizeof(asn_DEF_KrbKey_tags_1) + /sizeof(asn_DEF_KrbKey_tags_1[0]), /* 1 */ + asn_DEF_KrbKey_tags_1, /* Same as above */ + sizeof(asn_DEF_KrbKey_tags_1) + /sizeof(asn_DEF_KrbKey_tags_1[0]), /* 1 */ + 0, /* No PER visible constraints */ + asn_MBR_KrbKey_1, + 3, /* Elements count */ + &asn_SPC_KrbKey_specs_1 /* Additional specs */ +}; + |