Change optional handling in ASN.1 encoder
authorGreg Hudson <ghudson@mit.edu>
Sat, 11 Feb 2012 23:25:21 +0000 (23:25 +0000)
committerGreg Hudson <ghudson@mit.edu>
Sat, 11 Feb 2012 23:25:21 +0000 (23:25 +0000)
commit0af4df0af5fb856419681e8d259a5229c59e361f
tree987ce4e9758a9eebb9bc1a8a3231fc412dd4ee4c
parent17585adb23c120ae10a410c8f77207a53208c59d
Change optional handling in ASN.1 encoder

Create a new atype_optional with a function pointer to decide whether
the type is present in the C object.  For simple cases, sequences just
reference the optional version of a type.  For more complex cases (such
as when the presence of the usec field of a sequence depends on whether
the timestamp is set), we define a predicate on the structure object
and nest the field type inside the optional type.

git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@25692 dc483132-0cff-0310-8789-dd5450dbe970
src/lib/krb5/asn.1/asn1_encode.c
src/lib/krb5/asn.1/asn1_encode.h
src/lib/krb5/asn.1/asn1_k_encode.c
src/lib/krb5/asn.1/ldap_key_seq.c
src/lib/krb5/error_tables/asn1_err.et