1 2007-02-02 Love Hörnquist Åstrand <lha@it.su.se>
3 * digest.asn1: rename hash-a1 to session key
5 2007-01-20 Love Hörnquist Åstrand <lha@it.su.se>
7 * check-der.c: Test for NUL char in string in GENERAL STRING.
9 * der_get.c: Check for NUL characters in string and return
10 ASN1_BAD_CHARACTER error-code if we find them.
12 * asn1_err.et: Add BAD_CHARACTER error.
14 2007-01-16 Love Hörnquist Åstrand <lha@it.su.se>
16 * Makefile.am: Add id-at-streetAddress.
18 * rfc2459.asn1: Add id-at-streetAddress.
20 2007-01-12 Love Hörnquist Åstrand <lha@it.su.se>
22 * rfc2459.asn1: Add PKIXXmppAddr and id-pkix-on-xmppAddr.
24 2006-12-30 Love Hörnquist Åstrand <lha@it.su.se>
26 * Makefile.am: Add id-pkix-kp oids.
28 * rfc2459.asn1: Add id-pkix-kp oids.
30 2006-12-29 Love Hörnquist Åstrand <lha@it.su.se>
32 * gen_encode.c: Named bit strings have this horrible, disgusting,
33 compress bits until they are no longer really there but stuff in
34 an initial octet anyway encoding scheme. Try to get it right and
35 calculate the initial octet runtime instead of compiletime.
37 * check-gen.c: Check all other silly bitstring combinations.
39 * Makefile.am: Add --sequence=Extensions to rfc2459.
41 2006-12-28 Love Hörnquist Åstrand <lha@it.su.se>
43 * kx509.asn1: Add kx509.
45 * Makefile.am: Add kx509.
47 * Add VisibleString parsing
49 2006-12-15 Love Hörnquist Åstrand <lha@it.su.se>
51 * Makefile.am: Add ntlm files.
53 * digest.asn1: Add bits for handling NTLM.
55 2006-12-08 Love Hörnquist Åstrand <lha@it.su.se>
57 * Makefile.am: add pkix proxy cert policy lang oids
59 * rfc2459.asn1: add pkix proxy cert policy lang oids
61 2006-12-07 Love Hörnquist Åstrand <lha@it.su.se>
63 * rfc2459.asn1: unbreak id-pe-proxyCertInfo
65 * rfc2459.asn1: Add id-pkix-on-dnsSRV and related oids
67 2006-11-28 Love Hörnquist Åstrand <lha@it.su.se>
69 * Makefile.am: Add explicit depenency to LIB_roken for libasn1.la,
72 2006-11-27 Love Hörnquist Åstrand <lha@it.su.se>
74 * der_format.c (der_print_heim_oid): oid with zero length is
75 invalid, fail to print.
77 2006-11-24 Love Hörnquist Åstrand <lha@it.su.se>
79 * der_format.c (der_print_heim_oid): use delim when printing.
81 2006-11-21 Love Hörnquist Åstrand <lha@it.su.se>
83 * k5.asn1: Make KRB5-PADATA-S4U2SELF pa type 129.
85 2006-10-24 Love Hörnquist Åstrand <lha@it.su.se>
87 * asn1_err.et: add EXTRA_DATA
89 2006-10-21 Love Hörnquist Åstrand <lha@it.su.se>
91 * check-gen.c: avoid leaking memory
93 * check-der.c: avoid leaking memory
95 * der_format.c (der_parse_heim_oid): avoid leaking memory
97 * check-common.c: Print size_t as (unsigned long) and cast.
99 * check-common.c: Try to align data, IA64's gets upset if its
102 * lex.l: add missing */
104 * lex.c: need %e for hpux lex
106 2006-10-20 Love Hörnquist Åstrand <lha@it.su.se>
108 * Makefile.am: remove dups from gen_files_test, add check-timegm.
110 * Makefile.am: include more test.asn1 built files
112 * Makefile.am: More files, now for make check.
114 2006-10-19 Love Hörnquist Åstrand <lha@it.su.se>
116 * Makefile.am: Add missing files
118 * Makefile.am (asn1_compile_SOURCES): add gen_locl.h
120 * check-timegm.c: Add check for _der_timegm.
122 * der_get.c (generalizedtime2time): always use _der_timegm.
124 * timegm.c: make more strict
126 * der_locl.h: Rename timegm to _der_timegm.
128 2006-10-17 Love Hörnquist Åstrand <lha@it.su.se>
130 * timegm.c: vJust fail if tm_mon is out of range for now XXXX this
133 2006-10-16 Love Hörnquist Åstrand <lha@it.su.se>
135 * Makefile.am: extra depencies on der-protos.h
137 2006-10-14 Love Hörnquist Åstrand <lha@it.su.se>
139 * check-der.c: Prefix primitive types with der_.
141 * timegm.c: rename the buildin timegm to _der_timegm
143 * heim_asn1.h: move prototype away from here.
145 * der_format.c: Add der_parse_heim_oid
147 * gen_free.c: prefix primitive types with der_
149 * der_copy.c: prefix primitive types with der_
151 * gen_length.c: prefix primitive types with der_
153 * der_length.c: prefix primitive types with der_
155 * der_cmp.c: prefix primitive types with der_
157 * gen_free.c: prefix primitive types with der_
159 * der_free.c: prefix primitive types with der_
161 * gen_copy.c: prefix primitive types with der_
163 * der_copy.c: rename copy_ to der_copy_
165 * Makefile.am: Add der-protos.h to nodist_include_HEADERS.
167 * der.h: use newly built <der-protos.h>
169 * Makefile.am: Generate der prototypes.
171 * gen.c: move any definitions here.
173 * asn1-common.h: move any definitions here.
175 * der.h: remove der_parse_oid prototype, it was never implemented.
177 * der.h: New der_print_heim_oid signature. Test
180 * check-der.c: New der_print_heim_oid signature. Test
183 2006-10-07 Love Hörnquist Åstrand <lha@it.su.se>
185 * lex.l: Grow an even larger output table size.
187 * Makefile.am: split build files into dist_ and noinst_ SOURCES
189 2006-10-04 Love Hörnquist Åstrand <lha@it.su.se>
191 * gen_seq.c: In generation of remove_TYPE: if you just removed the
192 last element, you must not memmove memory beyond the array. From
195 2006-10-01 Love Hörnquist Åstrand <lha@it.su.se>
197 * lex.l: Grow (%p, %a, %n) tables for Solaris 10 lex. From Harald
200 2006-09-24 Love Hörnquist Åstrand <lha@it.su.se>
202 * gen_decode.c (decode_type): drop unused variable realtype.
204 2006-09-11 Love Hörnquist Åstrand <lha@it.su.se>
206 * Makefile.am: Add KRB5SignedPath and friends.
208 * k5.asn1: Add KRB5SignedPath and friends.
210 * Makefile.am: Add new sequence generation for GeneralNames.
212 2006-09-07 Love Hörnquist Åstrand <lha@it.su.se>
214 * CMS.asn1 (CMSVersion): rename versions from v0 to CMSVersion_v0,
217 2006-09-05 Love Hörnquist Åstrand <lha@it.su.se>
219 * Makefile.am: Add TESTSeqOf for testing sequence generation code.
221 * check-gen.c: Add sequence tests.
223 * test.asn1: Add TESTSeqOf for testing sequence generation code.
225 * gen_seq.c: fix warning.
227 * gen_seq.c: make generated data work
229 * setchgpw2.asn1: enctype is part of the krb5 module now, use that
230 instead of locally defining it.
232 * Makefile.am: asn1_compile += gen_seq.c
234 * gen_locl.h: add new prototypes, remove unused ones.
236 * gen.c: Generate sequence function.
238 * main.c: add --sequence
240 * gen_seq.c: Add generated add_ and remove_ for "SEQUENCE OF
241 TType". I'm tried of writing realloc(foo->data,
242 sizeof(foo->data[0]) + (foo->len + 1)); Only generated for those
243 type that is enabled by the command flag --sequence.
245 2006-08-25 Love Hörnquist Åstrand <lha@it.su.se>
247 * digest.asn1 (DigestRequest): add authid
249 * digest.asn1: Comment describing on how to communicate the sasl
252 2006-08-23 Love Hörnquist Åstrand <lha@it.su.se>
254 * digest.asn1: Add some missing fields needed for digest.
256 2006-08-21 Love Hörnquist Åstrand <lha@it.su.se>
258 * digest.asn1: Tweak to make consisten and more easier to use.
260 2006-07-20 Love Hörnquist Åstrand <lha@it.su.se>
262 * Makefile.am: Remove CMS symmetric encryption support. Add
265 * digest.asn1: DigestProtocol
267 * k5.asn1: Remove CMS symmetric encryption support.
269 2006-06-22 Love Hörnquist Åstrand <lha@it.su.se>
271 * check-der.c (check_fail_heim_integer): disable test
273 * der_get.c (der_get_heim_integer): revert part of previous
275 * der_get.c (der_get_heim_integer): Add more checks
277 * asn1_print.c: Add printing of bignums and use der_print_heim_oid
279 * check-der.c (test_heim_oid_format_same): add printing on failure
281 * check-der.c: Add one check for heim_int, add checking for oid
284 2006-06-06 Love Hörnquist Åstrand <lha@it.su.se>
286 * Makefile.am: Impersonation support bits (and sort)
288 * k5.asn1: Impersonation support bits.
290 2006-05-13 Love Hörnquist Åstrand <lha@it.su.se>
292 * der_format.c (der_parse_hex_heim_integer): avoid shadowing.
294 2006-04-29 Love Hörnquist Åstrand <lha@it.su.se>
296 * Makefile.am: Add ExternalPrincipalIdentifiers, shared between
299 * pkinit.asn1: Add ExternalPrincipalIdentifiers, shared between
302 2006-04-28 Love Hörnquist Åstrand <lha@it.su.se>
304 * parse.y: Add missing ;'s, found by bison on a SuSE 8.2 machine.
306 2006-04-26 Love Hörnquist Åstrand <lha@it.su.se>
308 * Makefile.am: Add definitions from RFC 3820, Proxy Certificate
311 * rfc2459.asn1: Add definitions from RFC 3820, Proxy Certificate
314 2006-04-24 Love Hörnquist Åstrand <lha@it.su.se>
316 * rfc2459.asn1: Add id-Userid
318 * Makefile.am: Add UID and email
320 * pkcs9.asn1: Add id-pkcs9-emailAddress
322 * Makefile.am: Add attribute type oids from X520 and RFC 2247 DC
325 * rfc2459.asn1: Add attribute type oids from X520 and RFC 2247 DC
328 2006-04-21 Love Hörnquist Åstrand <lha@it.su.se>
330 * Makefile.am: add sha-1 and sha-2
332 * rfc2459.asn1: add sha-1 and sha-2
334 2006-04-15 Love Hörnquist Åstrand <lha@it.su.se>
336 * Makefile.am: Add id-pkcs1-sha256WithRSAEncryption and friends
338 * rfc2459.asn1: Add id-pkcs1-sha256WithRSAEncryption and friends
340 * CMS.asn1: Turn CMSRC2CBCParameter.rc2ParameterVersion into a
343 2006-04-08 Love Hörnquist Åstrand <lha@it.su.se>
345 * hash.c (hashtabnew): check for NULL before setting structure.
346 Coverity, NetBSD CID#4
348 2006-03-31 Love Hörnquist Åstrand <lha@it.su.se>
350 * Makefile.am: gen_files_rfc2459 += asn1_ExtKeyUsage.x
352 * rfc2459.asn1: Add ExtKeyUsage.
354 * gen.c (generate_header_of_codefile): remove unused variable.
356 2006-03-30 Love Hörnquist Åstrand <lha@it.su.se>
358 * gen.c: Put all the IMPORTed headers into the headerfile to avoid
361 2006-03-27 Love Hörnquist Åstrand <lha@it.su.se>
363 * Makefile.am: Add id-pkinit-ms-san.
365 * pkinit.asn1: Add id-pkinit-ms-san.
367 * k5.asn1 (PADATA-TYPE): Add KRB5-PADATA-PA-PK-OCSP-RESPONSE
369 2006-03-26 Love Hörnquist Åstrand <lha@it.su.se>
371 * Makefile.am: Add pkinit-san.
373 * pkinit.asn1: Rename id-pksan to id-pkinit-san
375 2006-03-08 Love Hörnquist Åstrand <lha@it.su.se>
377 * gen.c (init_generate): Nothing in the generated files needs
378 timegm(), so no need to provide a prototype for it.
380 2006-02-13 Love Hörnquist Åstrand <lha@it.su.se>
382 * pkinit.asn1: paChecksum is now OPTIONAL so it can be upgraded to
383 something better then SHA1
385 2006-01-31 Love Hörnquist Åstrand <lha@it.su.se>
387 * extra.c: Stub-generator now generates alloc statements for
388 tagless ANY OPTIONAL, remove workaround.
390 * check-gen.c: check for "tagless ANY OPTIONAL"
392 * test.asn1: check for "tagless ANY OPTIONAL"
394 2006-01-30 Love Hörnquist Åstrand <lha@it.su.se>
396 * der.h: UniversalString and BMPString are both implemented.
398 * der.h: Remove , after the last element of enum.
400 * asn1_gen.c: Spelling.
402 2006-01-20 Love Hörnquist Åstrand <lha@it.su.se>
404 * der_length.c (length_heim_integer): Try handle negative length
407 * der_get.c (der_get_heim_integer): handle negative integers.
409 * check-der.c: check heim_integer.
411 2006-01-18 Love Hörnquist Åstrand <lha@it.su.se>
413 * Makefile.am: Its cRLReason, not cRLReasons
415 * canthandle.asn1: "Allocation is done on CONTEXT tags" works just
418 * rfc2459.asn1: Add CRL structures and OIDs.
420 * Makefile.am: Add CRL and TESTAlloc structures and OIDs.
422 * check-gen.c: Check OPTIONAL context-tagless elements.
424 * test.asn1: Check OPTIONAL context-tagless elements.
426 * der_cmp.c (heim_integer_cmp): make it work with negative
429 2006-01-17 Love Hörnquist Åstrand <lha@it.su.se>
431 * check-der.c: check that der_parse_hex_heim_integer() handles odd
434 * der_format.c (der_parse_hex_heim_integer): make more resiliant
435 to errors, handle odd length numbers.
437 2006-01-13 Love Hörnquist Åstrand <lha@it.su.se>
439 * Makefile.am: Add RSAPrivateKey
441 * rfc2459.asn1: Add RSAPrivateKey.
443 2006-01-05 Love Hörnquist Åstrand <lha@it.su.se>
445 * der_copy.c (copy_heim_integer): copy the negative flag
447 2005-12-14 Love Hörnquist Åstrand <lha@it.su.se>
449 * parse.y: Drop ExceptionSpec for now, its not used.
451 2005-12-06 Love Hörnquist Åstrand <lha@it.su.se>
453 * test.asn1: Add test string for constraints.
455 * symbol.h: Add support for part of the Constraint-s
457 * gen.c: Set new constraints pointer in Type to NULL for inline
460 * parse.y: Add support for parsing part of the Constraint-s
462 2005-10-29 Love Hörnquist Åstrand <lha@it.su.se>
464 * Makefile.am: Add some X9.57 (DSA) oids, sort lines
466 * rfc2459.asn1: Add some X9.57 (DSA) oids.
468 2005-10-07 Love Hörnquist Åstrand <lha@it.su.se>
470 * Makefile.am: Remove pk-init-19 support.
472 * pkinit.asn1: Fix comment
474 * check-der.c: Add tests for parse and print functions for
477 * Makefile.am: Add parse and print functions for heim_integer.
479 * der_format.c: Add parse and print functions for heim_integer.
481 * der.h: Add parse and print functions for heim_integer.
483 2005-09-22 Love Hörnquist Åstrand <lha@it.su.se>
485 * Makefile.am (gen_files_rfc2459) += asn1_DHPublicKey.x
487 * rfc2459.asn1: Add DHPublicKey, and INTEGER to for storing the DH
488 public key in the SubjectPublicKeyInfo.subjectPublicKey BIT
491 2005-09-20 Love Hörnquist Åstrand <lha@it.su.se>
493 * gen_decode.c: TSequenceOf/TSetOf: Increase the length of the
494 array after successful decoding the next element, so that the
495 array don't contain heap-data.
497 2005-09-13 Love Hörnquist Åstrand <lha@it.su.se>
499 * check-der.c: Avoid empty array initiators.
501 * pkcs8.asn1 (PKCS8PrivateKeyInfo): Inline SET OF to avoid
504 * check-common.c: Avoid signedness warnings.
506 * check-common.h: Makes bytes native platform signed to avoid
509 * check-der.c: Don't depend on malloc(very-very-larger-value) will
510 fail. Cast to unsigned long before printing size_t.
512 * check-gen.c: Don't depend on malloc(very-very-larger-value) will
515 * check-gen.c: Fix signedness warnings.
517 * lex.l: unput() have to hanppen in actions for flex 2.5.31, can
518 do them in user code sesction, so move up handle_comment and
519 handle_string into action, not much sharing was done anyway.
521 2005-09-09 Love Hörnquist Åstrand <lha@it.su.se>
523 * check-der.c (test_one_int): len and len_len is size_t
525 2005-08-23 Love Hörnquist Åstrand <lha@it.su.se>
527 * gen_encode.c: Change name of oldret for each instance its used
528 to avoid shadow warning. From: Stefan Metzmacher
531 * gen_length.c: Change name of oldret for each instance its used
532 to avoid shadow warning. From: Stefan Metzmacher
535 * gen_decode.c: Change name of oldret for each instance its used
536 to avoid shadow warning. From: Stefan Metzmacher
539 * parse.y: Const poision yyerror.
541 * gen.c: Const poision.
543 2005-08-22 Love Hörnquist Åstrand <lha@it.su.se>
545 * k5.asn1: Add KRB5-PADATA-PK-AS-09-BINDING, client send
546 this (with an empty pa-data.padata-value) to tell the KDC that the
547 client support the binding the PA-REP to the AS-REQ packet. This
548 is to fix the problem lack of binding the AS-REQ to the PK-AS-REP
549 in pre PK-INIT-27. The nonce is replaced with a asCheckSum.
551 2005-08-11 Love Hörnquist Åstrand <lha@it.su.se>
553 * canthandle.asn1: Allocation is done on CONTEXT tags.
555 * asn1_gen.c: rename optind to optidx to avoid shadow warnings
557 2005-07-28 Love Hörnquist Åstrand <lha@it.su.se>
559 * rfc2459.asn1: add id-rsadsi-rc2-cbc
561 * Makefile.am: add another oid for rc2
563 2005-07-27 Love Hörnquist Åstrand <lha@it.su.se>
565 * check-der.c: Make variable initiation constant by moving them to
568 * check-gen.c: change to c89 comment
570 2005-07-27 Love Hörnquist Åstrand <lha@it.su.se>
572 * Makefile.am: remove duplicate asn1_CMSAttributes.x
574 2005-07-26 Love Hörnquist Åstrand <lha@it.su.se>
576 * asn1_print.c: rename optind to optidx
578 * Makefile.am: Update to pkinit-27
580 * pkinit.asn1: Update to pkinit-27
582 2005-07-25 Love Hörnquist Åstrand <lha@it.su.se>
584 * check-der.c: make it work for non c99 compilers too
586 * check-der.c: start testing BIT STRING
588 * der_cmp.c (heim_bit_string_cmp): try handle corner cases better
590 * gen_free.c (free_type): free bignum integers
592 2005-07-23 Love Hörnquist Åstrand <lha@it.su.se>
594 * Makefile.am: add PKCS12-OctetString
596 * pkcs12.asn1: add PKCS12-OctetString
598 * Makefile.am: add new files
600 * rfc2459.asn1: include SET OF in Attribute to make the type more
603 * CMS.asn1: handle IMPLICIT and share some common structures
605 2005-07-21 Love Hörnquist Åstrand <lha@it.su.se>
607 * rfc2459.asn1: Include enough workarounds that this even might
610 * check-gen.c: Two implicit tests, one with all structures inlined
612 * test.asn1: fix workaround for IMPLICIT CONS case
614 * canthandle.asn1: fix workaround for IMPLICIT CONS case
616 * asn1_print.c: hint that there are IMPLICIT content when we find
619 * check-gen.c: Added #ifdef out test for IMPLICIT tagging.
621 * Makefile.am: test several IMPLICIT tag level deep
623 * test.asn1: test several IMPLICIT tag level deep
625 * test.asn1: tests for IMPLICIT
627 * Makefile.am: tests for IMPLICIT
629 * canthandle.asn1: Expand on what is wrong with the IMPLICIT
632 * rfc2459.asn1: some of the structure are in the IMPLICIT TAGS
635 2005-07-19 Love Hörnquist Åstrand <lha@it.su.se>
637 * asn1_print.c: print size_t by casting to unsigned long and use
638 right printf format tags are unsigned integers
640 * gen.c (generate_constant): oid elements are unsigned
642 * gen_decode.c (decode_type): tagdatalen should be an size_t.
644 * extra.c (decode_heim_any): tag is unsigned int.
646 * der_get.c (der_match_tag): tag is unsigned int.
648 * gen_length.c (length_type): cast size_t argument to unsigned
649 long and use appropriate printf format
651 * check-der.c (check_fail_bitstring): check for length overflow
653 * der_get.c: rewrite integer overflow tests w/o SIZE_T_MAX
655 * check-common.c (generic_decode_fail): only copy in if checklen
656 its less then 0xffffff and larger than 0.
658 * gen_decode.c (find_tag): find external references, we can't
659 handle those, so tell user that instead of crashing
661 2005-07-18 Dave Love <fx@gnu.org>
663 * extra.c (free_heim_any_set): Fix return.
665 * gen_decode.c (find_tag): Fix return in TType case.
667 2005-07-13 Love Hörnquist Åstrand <lha@it.su.se>
669 * gen_encode.c (TChoice): add () to make sure variable expression
670 is evaluated correctly
672 * gen_length.c (TChoice): add () to make sure variable expression
673 is evaluated correctly
675 * k5.asn1: reapply 1.43 that got lost in the merge: rename pvno to
678 2005-07-12 Love Hörnquist Åstrand <lha@it.su.se>
680 * gen_decode.c (decode_type): TChoice: set the label
682 * check-gen.c (cmp_Name): do at least some checking
684 * gen_locl.h: rename function filename() to get_filename() to
687 * lex.l: rename function filename() to get_filename() to avoid
690 * gen.c: rename function filename() to get_filename() to avoid
693 * check-der.c: add failure checks for large oid elements
695 * check-gen.c: add failure checks for tag (and large tags)
697 * der_get.c: Check for integer overflows in tags and oid elements.
699 2005-07-10 Assar Westerlund <assar@kth.se>
701 * gen_decode.c: Fix decoding of choices to select which branch to
702 try based on the tag and return an error if that branch fails.
704 * check-gen.c: Fix short choice test cases.
706 2005-07-09 Assar Westerlund <assar@kth.se>
724 Use emalloc, ecalloc, and estrdup.
725 Check return value from asprintf.
726 Make sure that malloc(0) returning NULL is not treated as an
729 2005-07-10 Love Hörnquist Åstrand <lha@it.su.se>
731 * check-gen.c: test cases for CHOICE, its too liberal right now,
732 it don't fail hard on failure on after it successfully decoded the
733 first tag in a choice branch
735 * asn1_gen.c: calculate the basename for the output file,
736 pretty-print tag number
738 * test.gen: sample for asn1_gen
740 * check-gen.c: check errors in SEQUENCE
742 * Makefile.am: build asn1_gen, TESTSeq and new, and class/type/tag
743 string<->num converter.
745 * test.asn1: TESTSeq, for testing SEQUENCE
747 * asn1_gen.c: generator for asn1 data
749 * asn1_print.c: use class/type/tag string<->num converter.
751 * der.c: Add class/type/tag string<->num converter.
753 * der.h: Add class/type/tag string<->num converter.
754 Prototypes/structures for new time bits.
756 2005-07-09 Love Hörnquist Åstrand <lha@it.su.se>
758 * der_get.c (der_get_unsigned) check for length overflow
759 (der_get_integer) ditto
760 (der_get_general_string) ditto
762 * der_get.c: check for overruns using SIZE_T_MAX
764 * check-der.c: check BIT STRING and OBJECT IDENTIFIER error cases
766 * check-common.c (generic_decode_fail): allocate 4K for the over
769 * der_get.c (der_get_oid): check for integer overruns and
770 unterminated oid correctly
772 * check-common.h (map_alloc, generic_decode_fail): prototypes
774 * check-common.c (map_alloc): make input buffer const
775 (generic_decode_fail): verify decoding failures
777 2005-07-05 Love Hörnquist Åstrand <lha@it.su.se>
779 * gen_encode.c: split up the printf for SET OF, also use the
780 generate name for the symbol in the SET OF, if not, the name might
781 contain non valid variable name characters (like -)
783 2005-07-04 Love Hörnquist Åstrand <lha@it.su.se>
785 * Makefile.am: move pkcs12 defines into their own namespace
787 * pkcs12.asn1: move pkcs12 defines into their own namespace
789 * pkcs9.asn1: add PKCS9-friendlyName with workaround for SET OF
792 * heim_asn1.h: reuse heim_octet_string for heim_any types
794 * main.c: use optidx, handle the case where name is missing and
795 use base of filename then
797 * asn1-common.h: include ASN1_MALLOC_ENCODE
799 * gen_decode.c: use less context so lower indentention level, add
800 missing {} where needed
802 2005-07-02 Love Hörnquist Åstrand <lha@it.su.se>
804 * gen_copy.c: Use a global variable to keep track of if the 'goto
805 fail' was used, and use that to only generate the label if needed.
807 * asn1_print.c: do indefinite form loop detection and stop after
808 10000 recursive indefinite forms, stops crashing due to running
811 * asn1_print.c: catch badly formated indefinite length data
812 (missing EndOfContent tag) add (negative) indent flag to speed up
815 2005-07-01 Love Hörnquist Åstrand <lha@it.su.se>
817 * canthandle.asn1: Can't handle primitives in CHOICE
819 * gen_decode.c: Check if malloc failes
821 * gen_copy.c: Make sure to free memory on failure
823 * gen_decode.c: Check if malloc failes, rename "reallen" to
824 tagdatalen since that is what it is.
826 2005-05-29 Love Hörnquist Åstrand <lha@it.su.se>
828 * prefix Der_class with ASN1_C_ to avoid problems with system
829 headerfiles that pollute the name space
831 2005-05-20 Love Hörnquist Åstrand <lha@it.su.se>
833 * pkcs12.asn1: add PKCS12CertBag
835 * pkcs9.asn1: add pkcs9 certtype x509 certificate
837 * Makefile.am: add pkcs12 certbag and pkcs9 certtype x509
840 * pkcs12.asn1: split off PKCS12Attributes from SafeBag so it can
843 * Makefile.am: add PKCS12Attributes
845 2005-05-10 Love Hörnquist Åstrand <lha@it.su.se>
847 * canthandle.asn1: fix tags in example
849 2005-05-02 Love Hörnquist Åstrand <lha@it.su.se>
851 * pkinit.asn1: Let the Windows nonce be an int32 (signed), if not
852 it will fail when using Windows PK-INIT.
854 2005-05-01 Love Hörnquist Åstrand <lha@it.su.se>
856 * Makefile.am: add pkcs12-PBEParams
858 * pkcs12.asn1: add pkcs12-PBEParams
860 * parse.y: objid_element: exit when the condition fails
862 2005-04-26 Love Hörnquist Åstrand <lha@it.su.se>
864 * gen_glue.c: 1.8: switch the units variable to a
865 function. gcc-4.1 needs the size of the structure if its defined
866 as extern struct units foo_units[] an we don't want to include
867 <parse_units.h> in the generate headerfile
869 2005-03-20 Love Hörnquist Åstrand <lha@it.su.se>
871 * Makefile.am: add the des-ede3-cbc oid that ansi x9.52 uses
873 * rfc2459.asn1: add the des-ede3-cbc oid that ansi x9.52 uses
875 * Makefile.am: add oids for x509
877 * rfc2459.asn1: add oids now when the compiler can handle them
879 2005-03-19 Love Hörnquist Åstrand <lha@it.su.se>
881 * Makefile.am: add pkcs9 files
883 * pkcs9.asn1: add small number of oids from pkcs9
885 2005-03-14 Love Hörnquist Åstrand <lha@it.su.se>
887 * Makefile.am: add a bunch of pkcs1/pkcs2/pkcs3/aes oids
889 * rfc2459.asn1: add a bunch of pkcs1/pkcs2/pkcs3/aes oids
891 2005-03-10 Love Hörnquist Åstrand <lha@it.su.se>
893 * k5.asn1: merge pa-numbers
895 2005-03-09 Love Hörnquist Åstrand <lha@it.su.se>
897 * Makefile.am: add oid's
899 * rfc2459.asn1: add encryption oids
901 * CMS.asn1: add signedAndEnvelopedData oid
903 * pkcs12.asn1: add pkcs12 oids
905 * CMS.asn1: add pkcs7 oids
907 2005-03-08 Love Hörnquist Åstrand <lha@it.su.se>
909 * gen.c (generate_header_of_codefile): break out the header
911 (generate_constant): generate a function that return the oid
914 * parse.y: fix the ordering of the oid's
916 * parse.y: handle OBJECT IDENTIFIER as value construct
918 2005-02-24 Love Hörnquist Åstrand <lha@it.su.se>
920 * Preserve content of CHOICE element that is unknown if ellipsis
921 was used when defining the structure
923 2005-02-13 Love Hörnquist Åstrand <lha@it.su.se>
925 * parse.y: use ANS1_TAILQ macros
927 * *.[ch]: use ASN1_TAILQ macros
929 * asn1_queue.h: inline bsd sys/queue.h and rename TAILQ to
930 ASN1_TAILQ to avoid problems with name polluting headerfiles
932 2005-01-19 Love Hörnquist Åstrand <lha@it.su.se>
934 * gen.c: pull in <krb5-types.h>
936 2005-01-10 Love Hörnquist Åstrand <lha@it.su.se>
938 * Add BMPString and UniversalString
940 * k5.asn1 (EtypeList): make INTEGER constrained (use krb5int32)
942 2005-01-07 Love Hörnquist Åstrand <lha@it.su.se>
944 * rfc2459.asn1: add GeneralNames
946 2004-11-21 Love Hörnquist Åstrand <lha@it.su.se>
948 * gen.c: use unsigned integer for len of SequenceOf/SetOf and
951 2004-11-10 Love Hörnquist Åstrand <lha@it.su.se>
953 * Makefile.am: switch to krb5int32 and krb5uint32
955 * Unify that three integer types TInteger TUInteger and TBigInteger.
956 Start to use constrained integers where appropriate.
958 2004-10-13 Love Hörnquist Åstrand <lha@it.su.se>
960 * CMS.asn1: remove no longer used commented out elements
962 * gen_glue.c: make units structures const
964 2004-10-12 Love Hörnquist Åstrand <lha@it.su.se>
966 * lex.l: handle hex number with [a-fA-F] in them
968 2004-10-07 Love Hörnquist Åstrand <lha@it.su.se>
970 * gen_free.c: free _save for CHOICE too
972 * rfc2459.asn1: use Name and not heim_any
974 * gen_decode.c: if malloc for _save failes, goto fail so we free
977 * gen_copy.c: copy _save for CHOICE too
979 * gen.c: add _save for CHOICE too
981 * CMS.asn1: RecipientIdentifier and SignerIdentifier is the same
982 name is CMSIdentifier and add glue for that so we can share code
983 use Name and not heim_any
985 2004-10-03 Love Hörnquist Åstrand <lha@it.su.se>
987 * Makefile.am: drop AlgorithmIdentifierNonOpt add
988 {RC2CBC,}CBCParameter here where they belong
990 * CMS.asn1: add {RC2CBC,}CBCParameter here where they belong
992 * rfc2459.asn1: drop AlgorithmIdentifierNonOpt
994 * rfc2459.asn1: stop using AlgorithmIdentifierNonOpt hint that we
995 really want to use Name and some MS stuff
997 2004-09-05 Love Hörnquist Åstrand <lha@it.su.se>
999 * asn1_print.c: handle end of content, this is part BER support,
1000 however, OCTET STRING need some tweeking too.
1002 * der.h: add UT_EndOfContent
1004 * test.asn1: test asn1 spec file
1006 * check-gen.c: check larget tags
1008 * Makefile.am: add test asn1 spec file that we can use for testing
1009 constructs that doesn't exists in already existing spec (like
1012 * der_put.c (der_put_tag): make sure there are space for the head
1013 tag when we are dealing with large tags (>30)
1015 * check-gen.c: add test for tag length
1017 * check-common.c: export the map_ functions for OVERRUN/UNDERRUN
1018 detection restore the SIGSEGV handler when test is done
1020 * check-common.h: export the map_ functions for OVERRUN/UNDERRUN
1023 * gen_decode.c: check that the tag-length is not longer the length
1024 use forwstr on some more places
1026 * parse.y: revert part of 1.14.2.21, multiple IMPORT isn't allowed
1028 * pkinit.asn1: correct usage of IMPORT
1030 * CMS.asn1: correct usage of IMPORT
1032 * pkcs8.asn1: pkcs8, encrypting private key
1034 * pkcs12.asn1: pkcs12, key/crl/certificate file transport PDU
1036 * Makefile.am: add pkcs8 and pkcs12
1038 * der_free.c: reset length when freing primitives
1040 * CMS.asn1: add EncryptedData
1042 2004-08-26 Love Hörnquist Åstrand <lha@it.su.se>
1044 * gen_decode.c (decode_type): if the entry is already optional
1045 when parsing a tag and we allocate the structure, not pass down
1046 optional since that will case the subtype's decode_type also to
1047 allocate an entry. and we'll leak an entry. Bug from Luke Howard
1048 <lukeh@padl.com>. While here, use calloc.
1050 2004-04-29 Love Hörnquist Åstrand <lha@it.su.se>
1052 * k5.asn1: shift the last added etypes one step so rc2 doesn't
1055 2004-04-26 Love Hörnquist Åstrand <lha@it.su.se>
1057 * k5.asn1: add ETYPE_AESNNN_CBC_NONE
1059 * CMS.asn1: add CMS symmetrical parameters moved to k5.asn1
1061 * k5.asn1: add CMS symmetrical parameters here, more nametypes
1064 2004-04-25 Love Hörnquist Åstrand <lha@it.su.se>
1066 * gen_decode.c: free data on decode failure
1068 2004-04-24 Love Hörnquist Åstrand <lha@it.su.se>
1070 * Makefile.am: add CBCParameter and RC2CBCParameter
1072 * CMS.asn1: add CBCParameter and RC2CBCParameter
1074 2004-04-20 Love Hörnquist Åstrand <lha@it.su.se>
1076 * check-der.c: add simple test for oid's, used to trigger malloc
1077 bugs in you have picky malloc (like valgrind/purify/third)
1079 * der_get.c (der_get_oid): handle all oid components being smaller
1080 then 127 and allocate one extra element since first byte is split
1083 2004-04-16 Love Hörnquist Åstrand <lha@it.su.se>
1085 * canthandle.asn1: one thing handled
1087 * gen_decode.c: handle OPTIONAL CONS-tag-less elements
1089 * der_length.c (length_len): since length is no longer the same as
1090 an unsigned, do the length counting here. ("unsigned" is zero
1091 padded when most significate bit is set, length is not)
1093 2004-04-12 Love Hörnquist Åstrand <lha@it.su.se>
1095 * canthandle.asn1: document by example what the encoder can't
1098 * Makefile.am: add more stuff needed whem implementing x509
1099 preserve TBSCertificate
1101 * rfc2459.asn1: add more stuff needed whem implementing x509
1103 * CMS.asn1: move some type to rfc2459.asn1 where they belong (and
1106 * gen.c: preserve the raw data when asked too
1108 * gen_decode.c: preserve the raw data when asked too
1110 * gen_copy.c: preserve the raw data when asked too
1112 * gen_free.c: preserve the raw data when asked too
1114 * gen_locl.h: add preserve_type
1116 * heim_asn1.h: add heim_any_cmp
1118 * main.c: add flag --preserve-binary=Symbol1,Symbol2,... that make
1119 the compiler generate stubs to save the raw data, its not used
1120 right now when generating the stat
1122 * k5.asn1: Windows uses PADATA 15 for the request too
1124 * extra.c: add heim_any_cmp
1126 * der_put.c: implement UTCtime correctly
1128 * der_locl.h: remove #ifdef HAVE_TIMEGM\ntimegm\n#endif here from
1129 der.h so one day der.h can get installed
1131 * der_length.c: implement UTCtime correctly
1133 * der_get.c: implement UTCtime correctly, prefix dce_fix with
1136 * der_copy.c: make copy_bit_string work again
1138 * der_cmp.c: add octet_string, integer, bit_string cmp functions
1140 * der.h: hide away more symbols, add more _cmp functions
1142 2004-03-06 Love Hörnquist Åstrand <lha@it.su.se>
1144 * Makefile.am: add more pkix types make k5 use rfc150 bitstrings,
1145 everything else use der bitstrings
1147 * main.c: as a compile time option, handle no rfc1510 bitstrings
1149 * gen_locl.h: rfc1510 bitstrings flag
1151 * gen_length.c: as a compile time option, handle no rfc1510
1154 * gen_encode.c: as a compile time option, handle no rfc1510
1157 * gen_decode.c: handle no rfc1510 bitstrings
1159 * check-gen.c: test for bitstrings
1161 * rfc2459.asn1: add Certificates and KeyUsage
1163 2004-02-22 Love Hörnquist Åstrand <lha@it.su.se>
1165 * pkinit.asn1: use Name from PKIX
1167 * rfc2459.asn1: add more silly string types to DirectoryString
1169 * gen_encode.c: add checks for data overflow when encoding
1170 TBitString with members encode SET OF correctly by bytewise
1173 * gen_decode.c: add checks for data overrun when encoding
1174 TBitString with members
1176 * der_put.c: add _heim_der_set_sort
1178 * der_cmp.c: rename oid_cmp to heim_oid_cmp
1180 * der.h: rename oid_cmp to heim_oid_cmp, add _heim_der_set_sort
1182 * check-gen.c: add check for Name and (commented out) heim_integer
1184 * check-der.c: test for "der_length.c: Fix len_unsigned for
1185 certain negative integers, it got the length wrong" , from
1188 * der_length.c: Fix len_unsigned for certain negative integers, it
1189 got the length wrong, fix from Panasas, Inc.
1191 rename len_int and len_unsigned to _heim_\&
1193 * gen_length.c: 1.14: (length_type): TSequenceOf: add up the size
1194 of all the elements, don't use just the size of the last element.
1196 2004-02-20 Love Hörnquist Åstrand <lha@it.su.se>
1198 * rfc2459.asn1: include defintion of Name
1200 * pkinit.asn1: no need for ContentType, its cms internal
1202 * CMS.asn1: move ContentInfo to CMS
1204 * pkinit.asn1: update to pk-init-18, move ContentInfo to CMS
1206 * Makefile.am: align with pk-init-18, move contentinfo to cms
1208 2004-02-17 Love Hörnquist Åstrand <lha@it.su.se>
1210 * der_get.c: rewrite previous commit
1212 * der_get.c (der_get_heim_integer): handle positive integer
1215 * der_length.c (der_put_heim_integer): try handle negative
1218 * der_put.c (der_put_heim_integer): try handle negative integers
1221 * der_get.c (der_get_heim_integer): dont abort on negative integer just
1222 return ASN1_OVERRUN for now
1224 * parse.y: add ia5string, and printablestring
1226 * gen_length.c: add ia5string, and printablestring
1228 * gen_free.c: add ia5string, and printablestring
1230 * gen_decode.c: add ia5string, and printablestring
1232 * gen_copy.c: add ia5string, and printablestring
1234 * gen.c: add ia5string, printablestring, and utf8string change
1235 implemetation of heim_integer and store the data as bigendian byte
1236 array with a external flag for signedness
1238 * der_put.c: add ia5string, printablestring, and utf8string change
1239 implemetation of heim_integer and store the data as bigendian byte
1240 array with a external flag for signedness
1242 * der_length.c: add ia5string, printablestring, and utf8string
1243 change implemetation of heim_integer and store the data as
1244 bigendian byte array with a external flag for signedness
1246 * der_get.c: add ia5string, printablestring, and utf8string change
1247 implemetation of heim_integer and store the data as bigendian byte
1248 array with a external flag for signedness
1250 * der_free.c: add ia5string, printablestring, and utf8string
1252 * der_copy.c: add ia5string, printablestring, and utf8string
1254 * der.h: add ia5string, printablestring, and utf8string
1256 * asn1-common.h: add signedness flag to heim_integer, add
1257 ia5string and printablestring
1259 2004-02-13 Love Hörnquist Åstrand <lha@it.su.se>
1261 * rfc2459.asn1: use BIGINTEGER where appropriate
1263 * setchgpw2.asn1: spelling and add op-req again
1265 2004-02-12 Love Hörnquist Åstrand <lha@it.su.se>
1267 * Makefile.am: clean up better
1269 2004-02-11 Love Hörnquist Åstrand <lha@it.su.se>
1271 * gen_decode.c (decode_type): TTag, don't overshare the reallen
1274 * Makefile.am: adapt to log file name change
1276 * gen.c: genereate log file name based on base name
1278 2003-11-26 Love Hörnquist Åstrand <lha@it.su.se>
1280 * Makefile.am: += asn1_AlgorithmIdentifierNonOpt.x
1282 * rfc2459.asn1: add AlgorithmIdentifierNonOpt and use it where
1283 it's needed, make DomainParameters.validationParms heim_any as a
1284 hack. Both are workarounds for the problem with heimdal's asn1
1285 compiler have with decoing context tagless OPTIONALs.
1287 * pkinit.asn1: don't import AlgorithmIdentifier
1289 2003-11-25 Love Hörnquist Åstrand <lha@it.su.se>
1291 * der_put.c (der_put_bit_string): make it work somewhat better
1292 (should really prune off all trailing zeros)
1294 * gen_encode.c (encode_type): bit string is not a constructed type
1296 * der_length.c (length_bit_string): calculate right length for
1299 2003-11-24 Love Hörnquist Åstrand <lha@it.su.se>
1301 * der_cmp.c (oid_cmp): compare the whole array, not just
1302 length/sizeof(component)
1304 * check-common.c: mmap the scratch areas, mprotect before and
1305 after, align data to the edge of the mprotect()ed area to provoke
1308 * Makefile.am: add DomainParameters, ValidationParms
1310 * rfc2459.asn1: add DomainParameters, ValidationParms
1312 * check-der.c: add free function
1314 * check-common.h: add free function
1316 * check-common.c: add free function
1318 * check-gen.c: check KRB-ERROR
1320 * asn1_print.c: check end of tag_names loop into APPL class tags
1322 2003-11-23 Love Hörnquist Åstrand <lha@it.su.se>
1324 * der_put.c (der_put_generalized_time): check size, not *size
1326 2003-11-11 Love Hörnquist Åstrand <lha@it.su.se>
1328 * gen_decode.c (decode_type/TBitString): skip over
1329 skipped-bits-in-last-octet octet
1331 * gen_glue.c (generate_units): generate units in reverse order to
1332 keep unparse_units happy
1334 2003-11-08 Love Hörnquist Åstrand <lha@it.su.se>
1336 * Makefile.am: generate all silly pkinit files
1338 * pkinit.asn1: make it work again, add strange ms structures
1340 * k5.asn1: PROV-SRV-LOCATION, PacketCable provisioning server
1341 location, PKT-SP-SEC-I09-030728
1343 * asn1-common.h: add bit string
1345 * der_put.c: add bit string and utctime
1347 * gen.c: add bit string and utctime
1349 * gen_copy.c: add bit string and utctime
1351 * der_copy.c: add bit string
1353 * gen_decode.c: add utctime and bitstring
1355 * gen_encode.c: add utctime and bitstring
1357 * gen_free.c: add utctime and bitstring
1359 * gen_glue.c: don't generate glue for member-less bit strings
1361 * der_cmp.c: compare function for oids
1363 * gen_length.c: add utc time, make bit string work for bits
1364 strings w/o any members
1366 * der_cmp.c: compare function for oids
1368 * der.h: update boolean prototypes add utctime and bit_string
1370 * der_free.c: add free_bit_string
1372 * der_get.c: add bit string and utctime
1374 * der_length.c: add bit string and utctime, fix memory leak in
1375 length_generalized_time
1377 * CMS.asn1: make EncryptedContentInfo.encryptedContent a OCTET
1378 STRING to make the generator do the right thing with IMPLICIT
1379 mumble OPTIONAL, make CertificateSet a heim_any_set
1381 * extra.c, heim_asn1.h: add any_set, instead of just consuming one
1382 der object, its consumes the rest of the data avaible
1384 * extra.c, heim_asn1.h: extern implementation of ANY, decoder
1385 needs to have hack removed when generator handles tagless optional
1388 * pkinit.asn1: add KdcDHKeyInfo-Win2k
1390 2003-11-07 Love Hörnquist Åstrand <lha@it.su.se>
1392 * der_copy.c (copy_oid): copy all components
1394 * parse.y: parse UTCTime, allow multiple IMPORT
1396 * symbol.h: add TUTCTime
1398 * rfc2459.asn1: update
1402 * pkinit.asn1: update
1404 * CMS.asn1: new file
1406 * asn1_print.c: print some more lengths, check length before
1407 steping out in the void, parse SET, only go down CONTEXT of type
1410 2003-09-17 Love Hörnquist Åstrand <lha@it.su.se>
1412 * gen_encode.c (TChoice, TSequence): code element in reverse
1415 2003-09-16 Love Hörnquist Åstrand <lha@it.su.se>
1417 * gen.c: store NULL's as int's for now
1419 * parse.y: remove dup of type def of UsefulType
1421 2003-09-11 Love Hörnquist Åstrand <lha@it.su.se>
1423 * gen_decode.c (decode_type): if malloc failes, return ENOMEM
1425 2003-09-10 Love Hörnquist Åstrand <lha@it.su.se>
1427 * parse.y: kw_UTF8String is a token put tag around the OID
1429 * asn1_print.c (UT_Integer): when the integer is larger then int
1430 can handle, just print BIG INT and its size
1432 2003-09-10 Love Hörnquist Åstrand <lha@it.su.se>
1434 * gen_decode.c (decode_type): TTag, try to generate prettier code
1435 in the non optional case, also remember to update length
1437 2003-01-22 Johan Danielsson <joda@pdc.kth.se>
1439 * gen_decode.c: add flag to decode broken DCE BER encoding
1441 * gen_locl.h: add flag to decode broken DCE BER encoding
1443 * main.c: add flag to decode broken DCE BER encoding