d0e0b5b7eaba9db0a4672f7061547bb703d55516
[platform/upstream/libksba.git] / ChangeLog
1 2022-10-07  Werner Koch  <wk@gnupg.org>
2
3         Release 1.6.2.
4         + commit 29814959fe2b65c6d4ac35dea261006a8cad3661
5
6
7 2022-10-05  Werner Koch  <wk@gnupg.org>
8
9         Detect a possible overflow directly in the TLV parser.
10         + commit 4b7d9cd4a018898d7714ce06f3faf2626c14582b
11         * src/ber-help.c (_ksba_ber_read_tl): Check for overflow of a commonly
12         used sum.
13
14 2022-09-16  Werner Koch  <wk@gnupg.org>
15
16         Release 1.6.1.
17         + commit d3c1e063d708a46ef39152256f8b1ea466b61be0
18
19
20 2022-07-19  NIIBE Yutaka  <gniibe@fsij.org>
21
22         build: Update config.guess and config.sub.
23         + commit 466837db84fb318eaaee1aba6cc3939c16a3e2ba
24         * build-aux/config.guess: Update from upstream.
25         * build-aux/config.sub: Ditto.
26
27         build: Support cross compile.
28         + commit ca9a04569020c51719ab45ebd35a3cbb1f35c6aa
29         * configure.ac (AX_CC_FOR_BUILD): New.
30         * m4/ax_cc_for_build.m4: New.
31         * src/Makefile.am: Use EXEEXT_FOR_BUILD.
32
33 2022-06-28  NIIBE Yutaka  <gniibe@fsij.org>
34
35         build: Update gpg-error.m4.
36         + commit e51d5c7ce81fe3f90039ad970fbb82f751a645fc
37         * m4/gpg-error.m4: Update from libgpg-error.
38
39 2022-03-31  NIIBE Yutaka  <gniibe@fsij.org>
40
41         build: When no gpg-error-config, not install ksba-config.
42         + commit 41000330cdba87afdf9ea0b481e0260dab262a54
43         * configure.ac (USE_GPGRT_CONFIG): New.
44         * src/Makefile.am [USE_GPGRT_CONFIG]: Conditionalize the install
45         of ksba-config.
46
47 2022-03-22  NIIBE Yutaka  <gniibe@fsij.org>
48
49         Fix test of t-cms-parser.
50         + commit e751d1fa01bd3e593eeccbeffb729176a59ca28c
51         * tests/t-cms-parser.c (one_file): Open the file with binary flag.
52
53 2022-02-26  Werner Koch  <wk@gnupg.org>
54
55         ocsp: Accept a server not responding with a nonce.
56         + commit 24992a4a7a61d93759e1dbd104b845903d4589bf
57         * src/ocsp.h (struct ksba_ocsp_s): Remove good_nonce.
58         * src/ocsp.c (parse_response_extensions): No not set good_nonce.
59         (ksba_ocsp_parse_response): Simplify the check.
60
61         ocsp: Fix detecting the right response item.
62         + commit c9cde18bc84a1b3bb7de22ca80264c418ffd0fee
63         * src/ocsp.c (ksba_ocsp_prepare_request): Store the value of the
64         integer.
65
66 2021-12-22  NIIBE Yutaka  <gniibe@fsij.org>
67
68         build: Update for newer autoconf.
69         + commit 51b565054096926dc97fc2ebb72c7de05a127dff
70         * configure.ac (AC_PREREQ): Require >= 2.69.
71         (AC_HEADER_STDC): Remove.
72
73 2021-11-29  NIIBE Yutaka  <gniibe@fsij.org>
74
75         Silence warning for ksba_isotime_t.
76         + commit 64ef3144abee7afbc93a87e960b9a79c7b43cfca
77         * src/time.c (_ksba_current_time): Let it return the result.
78
79         Fix ksba.pc to use HTTPS for the URL.
80         + commit 4898212c705a49da0384ac8f1b44f2d6592a990e
81         * src/ksba.pc.in: Use https.
82
83 2021-11-10  NIIBE Yutaka  <gniibe@fsij.org>
84
85         libtool: Link without -flat_namespace for macOS.
86         + commit 0d7a62c355ea18031daf00490da9f7c9f33683c3
87         * m4/libtool.m4: Not setting 10.0 to MACOSX_DEPLOYMENT_TARGET when not
88         defined.  Only specify -flat_namespace to linker for specific
89         (older) versions and hosts.
90
91 2021-10-13  NIIBE Yutaka  <gniibe@fsij.org>
92
93         ASN.1 parser: Provide token table (no more %token-table).
94         + commit f3b7dd4167779f2694e932ad7c2adba98ff9a21d
95         * src/asn1-parse.y (%token-table): Remove.
96         (token_table): New.
97         (yylex): Use token_table.
98
99 2021-09-22  Andreas Metzler  <ametzler@bebt.de>
100
101         build: Use automake primitives to install libksba.def.
102         + commit ce1de8cb2bcd712381f77519de4da87af42879a4
103         * src/Makekefile.am: Do not use explicit $INSTALL to install
104         libksba.def, fixes windows parallel build error.
105
106 2021-08-18  Werner Koch  <wk@gnupg.org>
107
108         Avoid warnings about NULL ptr deref in ASN.1 helpers.
109         + commit c242f31b6d520a7f87bf36782e4b5c8da7dc045d
110         * src/asn1-func.c (_ksba_asn_set_value): Add extra asserts.  Fix the
111         VALTYPE_BOOL case, which is actually not in Libksba.
112
113 2021-08-05  NIIBE Yutaka  <gniibe@fsij.org>
114
115         build: Simplify configure.ac.
116         + commit 379e787a965148fa5613ccd4e2b8c3c00feb45d9
117         * configure.ac (AC_CHECK_HEADERS): Remove string.h.
118         (AC_CHECK_FUNCS): Remove memmove, strchr, strtol and strtoul.
119
120 2021-06-10  Werner Koch  <wk@gnupg.org>
121
122         Release 1.6.0.
123         + commit 6b3573afb03afd4560f78bec73ec192e09fdd9d5
124
125
126 2021-06-02  Werner Koch  <wk@gnupg.org>
127
128         Support Authenticated-Enveloped-Data Content Type.
129         + commit 81fdcd680c127cbc7cfb977aa43aa45ffce0f5fc
130         * src/cms.h (struct ksba_cms_s): Remove struct data which was not
131         used.  Add struct authdata.
132         * src/cms.asn (AuthEnvelopedData): New.
133         (id-authEnvelopedData): New.
134         * src/ksba.h.in (ksba_content_type_t): Add KSBA_CT_AUTHENVELOPED_DATA.
135         * src/cms.c (content_handlers): Ditto.
136         (ksba_cms_release): Free the new fields.
137         (ksba_cms_get_message_digest): Hack to return authtag.
138         (ct_parse_signed_data): Remove useless condition which was always true.
139         * src/cms-parser.c (parse_encrypted_content_info): Add arg
140         r_algo_parmtype.
141         (_ksba_cms_parse_enveloped_data_part_1): Detect GCM with AES and parse
142         the parameters.
143         (_ksba_cms_parse_enveloped_data_part_2): Parse the MAC part and store
144         it for retrieval by ksba_cms_get_message_digest.
145         * tests/t-cms-parser.c (one_file): Handle authdata.
146
147 2021-05-27  NIIBE Yutaka  <gniibe@fsij.org>
148
149         build: _DARWIN_C_SOURCE should be 1.
150         + commit a375a3d20e831c58c3b87abb41f3a8e8b723d985
151         * configure.ac (*-apple-darwin*): Set _DARWIN_C_SOURCE 1.
152
153 2021-05-18  Werner Koch  <wk@gnupg.org>
154
155         Support password based decryption.
156         + commit cb7f2484a09cbe3cddcee6d2a752148df937cf0e
157         * src/cms.asn (RecipientInfo): Add pwri element.
158         (PasswordRecipientInfo): New.
159         * src/keyinfo.c (get_algorithm): Add arg to specify the expected tag.
160         Change all callers.
161         (_ksba_parse_algorithm_identifier3): New to specify the expected tag.
162         * src/cms.c: Include stringbuf.h.
163         (ksba_cms_get_issuer_serial): Return an error code for pwri.
164         (ksba_cms_get_enc_val): Add special code for pwri.
165
166         * tests/t-cms-parser.c (one_file): Detect pwri recipients.
167
168 2021-04-21  NIIBE Yutaka  <gniibe@fsij.org>
169
170         build: Update gpg-error.m4.
171         + commit 72f19cdabfb26bf51c6a4ea2e17154adf7e5a96b
172         * m4/gpg-error.m4: Update from libgpg-error.
173
174 2021-04-20  Jakub Jelen  <jjelen@redhat.com>
175
176         Fixes for static analysis reports.
177         + commit fbb1f303198b5ff0cc7012eaef210ad2cf22edb5
178         * tests/t-oid.c (main): Reset freed pointer for next iteration.
179         * src/time.c (_ksba_current_time): Use snprintf to avoid buffer overrun.
180         * src/asn1-func.c (_ksba_asn_expand_object_id): Initialize NAME2.
181         * src/ber-help.c (_ksba_ber_count_tl): Mark identical branches as
182         intentional for coverity.
183
184 2021-04-06  Werner Koch  <wk@gnupg.org>
185
186         Release 1.5.1.
187         + commit 1015bea2f8a55b965dee29e17118bc73c2deca39
188
189
190         build: Add the usual release targets.
191         + commit 1050939435548baa30a8ba8c20b7824ec7b2841e
192         * Makefile.am (release, sign-release): New targets.
193
194 2021-02-22  Werner Koch  <wk@gnupg.org>
195
196         Support Brainpoolp256r1 and Brainpoolp384r1 with ECDomainParameters.
197         + commit 4243085d7d4361d8900010ed32018985b133f958
198         * src/keyinfo.c (ecdomainparm_to_name): Two more entries.
199
200 2021-02-01  Werner Koch  <wk@gnupg.org>
201
202         Support Brainpoolp512r1 certs specified with ECDomainParameters.
203         + commit e51873b567d9f9cce708d191b29f09d56ea16f2d
204         * src/keyinfo.c (ecdomainparm_to_name): New table.
205         (_ksba_keyinfo_to_sexp): Support ECDomainParameter lookup.
206
207 2020-12-21  Werner Koch  <wk@gnupg.org>
208
209         Fix a possible segv in case of an unknown CMS object.
210         + commit fe03ab4c14e71cb08210159a943a6edded6cdc4d
211         * src/cms.c (ksba_cms_get_enc_val): Fix strcmp.
212
213 2020-11-18  Werner Koch  <wk@gnupg.org>
214
215         Release 1.5.0.
216         + commit 9c0a818cd89cf90e87a3fdf5f7b2d82062645229
217         * configure.ac: Set LT version to C21/A13/R0.
218
219         Add SPDX identifiers.
220         + commit b426d2216583b8165abe89900578e0dbf9590571
221         * src/version.c (cright_blurb): New.
222         (ksba_check_version): Detect request for the cright blurb.
223
224         Allow for NDEF list of certs and CRLs in CMS.
225         + commit b6438e768cf969a74b985bf2686d7cf0b4323355
226         * src/cms-parser.c (_ksba_cms_parse_signed_data_part_2): Fix endtag
227         detection.
228
229         * tests/t-cms-parser.c (main): Allow several files on the command line
230         and add more files to the default invocation.
231
232 2020-11-18  NIIBE Yutaka  <gniibe@fsij.org>
233
234         m4: Update with newer autoconf constructs.
235         + commit 1ef7f310d8bb0990d2c7a65f34ffa46f77c5d35d
236         * src/ksba.m4: Replace AC_HELP_STRING to AS_HELP_STRING.
237
238         build: Update to newer autoconf constructs.
239         + commit 0d46f2c000c45147db9a2c418248108bf444afb9
240         * configure.ac (AC_INIT): Use 'https://'.
241         Use AC_CONFIG_HEADERS instead of AM_CONFIG_HEADER.
242         Use AC_USE_SYSTEM_EXTENSIONS instead of AC_GNU_SOURCE.
243         Use AS_HELP_STRING instead of AC_HELP_STRING.
244         * gl/m4/onceonly_2_57.m4: Remove.
245         * m4/gpg-error.m4: Update from libgpg-error.
246         * m4/libtool.m4: Update from libgpg-error.
247         * m4/libgcrypt.m4: Update from libgcrypt.
248
249         build: Use modern Autoconf check for type.
250         + commit 60b32609ae7f7940c11117cb545c571356743624
251         * configure.ac (u32): Use AC_CHECK_TYPES.
252         * m4/Makefile.am (EXTRA_DIST): Update.
253         * m4/gnupg-typedef.m4: Remove.
254         * tests/sha1.c: Use HAVE_TYPE_U32.
255
256 2020-06-17  Werner Koch  <wk@gnupg.org>
257
258         Support TR-03111 plain format ECDSA signature verification.
259         + commit 486fb0257d08c9a90571aa8433c1c61b53dda4fe
260         * src/keyinfo.c (sig_algo_table): Add ECDSA algos from TR-03111.
261         (cryptval_to_sexp): Support plain ecdsa format.
262
263 2020-05-28  Werner Koch  <wk@gnupg.org>
264
265         Let ksba_cms_identify detect the new OpenPGP keyblock content.
266         + commit 5cdf0b5b0f1994405c8689ceaee76126755dcd1c
267         * src/ksba.h.in (KSBA_CT_OPENPGP_KEYBLOCK): New.
268         * src/cms.c: Add to table.
269         * tests/t-cms-parser.c (one_file): Ditto.
270
271 2020-05-19  Werner Koch  <wk@gnupg.org>
272
273         Release 1.4.0.
274         + commit f30f604700d37f1932d399ab2fb552713007117f
275
276
277 2020-05-18  Werner Koch  <wk@gnupg.org>
278
279         Finish creation of ECDSA and EdDSA certificates.
280         + commit 71a2f1e87790cc4fccd4e5e60ffd368fbfd85bb2
281         * src/keyinfo.c (_ksba_keyinfo_from_sexp): Skip writing curve
282         parameter in algoinfo mode.
283         (PKALGO_NONE): New.
284         (curve_names): Add field pkalgo and set for rfc8410 algos.
285         (get_ecc_curve_oid): New arg r_pkalgo.
286         (_ksba_keyinfo_from_sexp): Take are of a forced algo.  Add code path
287         for rfc8410 public key.
288         * src/certreq.h (struct ksba_certreq_s): Add flag 'is_ecc'.
289         * src/certreq.c (ksba_certreq_add_extension): Set that flag.
290         (ksba_certreq_set_sig_val): Use sig_val.is_ecc also for EdDSA.
291         (build_cri): Rewrite using the DER builder.
292
293 2020-05-15  Werner Koch  <wk@gnupg.org>
294
295         Allow direct construction of encapsulated octet and bit strings.
296         + commit 2605a994a2c7a4c06e7a2efb69e620fd687359ba
297         * src/ksba.h.in (KSBA_CLASS_ENCAPSULATE): New pseudo class.
298         * src/der-builder.c (struct item_s): Add field 'encapsulate'. Change
299         'class' to a 2 bit field.  Decrease size of 'hdrlen' to 10 bits which
300         is more than enough.
301         (_ksba_der_builder_reset): Clear 'encapsulate'.
302         (_ksba_der_add_ptr): Mask CLASS to avoid possible compiler warnings.
303         (add_val_core): Ditto.
304         (_ksba_der_add_tag): Ditto.  Set ENCAPSULATE.
305         (compute_lengths): Account for extra octet.
306         (_ksba_der_builder_get): Implement encapsulated data.
307
308         * tests/t-der-builder.c (test_der_builder): Add test cases for
309         encapsulated data.
310
311 2020-05-14  Werner Koch  <wk@gnupg.org>
312
313         Publish constants for the DER builder.
314         + commit 0e0fad9335ba8afe319fdb36e735533cff71a2b4
315         * src/ksba.h.in (KSBA_CLASS_): New constants.
316         (KSBA_TYPE_): New constants.
317         * src/der-builder.c (struct item_s): Increase size of HDRLEN and TAG.
318         (count_tl, write_tl): Support tags > 30.
319
320         * tests/t-der-builder.c: New
321         * tests/Makefile.am (TESTS): Add file.
322
323         Simplify the ksba_keyinfo_from_sexp function.
324         + commit 88647cd33059129dca6d17434208d5f68108daf3
325         * src/keyinfo.c: Include der-builder.h
326         (get_ecc_curve_oid): Change to return a string.
327         (oid_from_buffer): Ditto.
328         (_ksba_keyinfo_from_sexp): Rewrite.
329
330         Fix DER builder to a allow a single primitive element.
331         + commit 31c42e7568a7532f8fb5d291f5c4a26594d74ad4
332         * src/der-builder.c (_ksba_der_builder_get): Allow a single item.
333
334         Fold duplicated code in keyinfo.c into one function.
335         + commit fae738f23b5bfde8fa25b6759fd1aac6809b40ca
336         * src/keyinfo.c (_ksba_algoinfo_from_sexp): Remove.
337         (_ksba_keyinfo_from_sexp): Add arg algoinfomode
338         * src/certreq.c (ksba_certreq_add_subject): Adjust for change.
339         (ksba_certreq_set_serial): Use _ksba_keyinfo_from_sexp in
340         algoinfomode.
341
342         * tests/cert-basic.c (one_file): Adjust for change.
343
344 2020-05-14  Trammell Hudson  <hudson@trmm.net>
345
346         Fix qsort handler to reproducible sort the string table.
347         + commit cdbced98819dd0b1478db1bb82bbc249d52e32ae
348         * src/asn1-gentables.c (cmp_string): Comapre the strings if they have
349         the same length.
350
351 2020-05-12  Werner Koch  <wk@gnupg.org>
352
353         New API to construct arbitrary DER objects in memory.
354         + commit 30d35448cd585156a0461f02934a356894e6867b
355         * src/der-builder.h (struct ksba_der_s, ksba_der_t): Move to ...
356         * src/ksba.h.in: here.
357         (ksba_der_release): New.
358         (ksba_der_builder_new): New.
359         (ksba_der_builder_reset): New.
360         (ksba_der_add_ptr): New.
361         (ksba_der_add_val): New.
362         (ksba_der_add_int): New.
363         (ksba_der_add_oid): New.
364         (ksba_der_add_bts): New.
365         (ksba_der_add_der): New.
366         (ksba_der_add_tag): New.
367         (ksba_der_add_end): New.
368         (ksba_der_builder_get): New.
369         * src/libksba.def: Add new functions.
370         * src/libksba.vers: Ditto.
371         * src/visibility.c: Add wrapper.
372         * src/visibility.h (ksba_der_add_val): Add usual macro magic.
373
374         Allow parsing of EdDSA certificates.
375         + commit 60943d9f18162c7a55a635b122888b9f53690e77
376         * src/keyinfo.c (sig_algo_table): Remove unused params for EdDSA
377         algos.
378         (_ksba_keyinfo_to_sexp): Add curve to EdDSA algos.
379         (cryptval_to_sexp): Add special handling for EdDSA algos.
380
381 2020-05-11  Werner Koch  <wk@gnupg.org>
382
383         Support creation of ECDSA signed data.
384         + commit cda81bec2e141f67e6ee905eac0e719abb7ef20c
385         * src/der-builder.c (_ksba_der_add_int): New.
386         * src/cms.h (struct sig_val_s): Add struct ecc.
387         * src/cms.c (ksba_cms_release): Release ecc.
388         (ksba_cms_set_sig_val): Support ecdsa.
389         (build_signed_data_rest): Ditto.
390
391         * tests/samples/ecdsa-sample1.p7s: New.
392         * tests/samples/ecdsa-sample1.p7s.asn: New.
393         * tests/samples/rsa-sample1.p7s: New.
394         * tests/samples/rsa-sample1.p7s.asn: New.
395
396 2020-05-04  Werner Koch  <wk@gnupg.org>
397
398         Support creation of ECDH enveloped data object (part 2 of 2)
399         + commit 8ade151b10480cb03998669e928cfd2e159531c0
400         * src/cms.c (build_enveloped_data_header): Write out ECDH info.
401
402         Add a dedicated BIT STRING function to the new DER builder.
403         + commit be1b4416afc3d646b43c5541b2d79036b6e7cdaf
404         * src/der-builder.c (_ksba_der_add_bts): New.
405
406 2020-05-01  Werner Koch  <wk@gnupg.org>
407
408         Support creation of ECDH enveloped data object (part 1)
409         + commit 0ddfbb464e0a86164768bd42e3e02a07f06dca62
410         * src/cms.h (struct enc_val_s): Add new fields for ECDH.
411         * src/cms.c: Include der-builder.h
412         (log_sexp): New but commented debug helper.
413         (ksba_cms_release): Free new ECDH values.
414         (ksba_cms_set_enc_val): Support ECDH.
415         (build_enveloped_data_header): Rewrite to make use of the new DER
416         builder.
417
418         Add a new DER builder for internal use.
419         + commit cf49d3e60a67180fcb1b9005d910f015b388cf3c
420         * src/der-builder.c: New.
421         * src/der-builder.h: New.
422         * src/util.c (_ksba_reallocarray): New.
423
424         Add new internal function to get the encoded issuer.
425         + commit 9c52d0787e0d0e78c8f10523a1c12fd83126393b
426         * src/cert.c (_ksba_cert_get_issuer_dn_ptr): New.
427         (_ksba_cert_get_serial_ptr): Return the full DER encoding and not just
428         the value.
429         * src/ocsp.c (ksba_ocsp_prepare_request): Adjust for this change.
430
431         Add RSA encrypted sample file.
432         + commit 0aee4bf128097cbce7e26b76a06d41045fd9d26a
433
434
435         Move ASN.1 constants to a separate header.
436         + commit d1ca2c8b65da20f5c407a1c9aad721ace4de460e
437         * src/asn1-func.h: Factor constants out to ...
438         * src/asn1-constants.h: new.
439         * src/Makefile.am (libksba_la_SOURCES): Add new file.
440
441 2020-04-21  Werner Koch  <wk@gnupg.org>
442
443         Support parsing of the CMS KeyAgreeRecipientInfo.
444         + commit 401dc58d3d55ed58a0ac4e1f286a7e19ed9e956c
445         * src/cms-parser.c (_ksba_cms_parse_enveloped_data_part_1): Decode at
446         the RecipientInfo level.
447         * src/cms.c (ksba_cms_get_issuer_serial): Adjust for this change.
448         Support KeyAgreeRecipientInfo.
449         (ksba_cms_get_enc_val): Ditto.
450         (dbg_print_sexp): New commented debug helper.
451         * src/keyinfo.c (enc_algo_table): Add and entry of ECDH.
452         (_ksba_parse_algorithm_identifier2): Make R_NREAD optional.
453         (cryptval_to_sexp): Add args to support ECDH.
454         (_ksba_sigval_to_sexp): Adjust for this.
455         (_ksba_encval_to_sexp): Ditto.
456         (_ksba_encval_kari_to_sexp): New.
457
458         * tests/t-cms-parser.c (one_file): Print the enc-val.
459
460         * tests/samples/ecdh-sample1.p7m: New sample.
461         * tests/samples/ecdh-sample1.p7m.asn: And a dump with some comments.
462
463         Extend the parser to better handle CHOICE elements.
464         + commit d07733cf94a255ae804f1964e0fd769f2b337965
465         * src/asn1-func.c (find_node): Support '+' operator.
466         * src/ber-decoder.c (find_anchor_node): Support CHOICE tag.
467         (decoder_next): Set the outer sequence length also for context tags.
468
469 2020-04-14  Werner Koch  <wk@gnupg.org>
470
471         Allow for Null hash algo parameters on rsaPSS and add pss flag.
472         + commit 17a09f41fc4b26b7af839be2b9666c94e5a22097
473         * src/ber-help.c (_ksba_parse_optional_null): New.
474         * src/ber-help.h (parse_optional_null): New macro.
475         * src/crl.c (ksba_crl_get_sig_val): Insert a "pss" flag.
476         * src/keyinfo.c (cryptval_to_sexp): Ditto.
477         (_ksba_keyinfo_get_pss_info): Allow for NULL parameter.
478
479 2020-04-09  Werner Koch  <wk@gnupg.org>
480
481         Support rsaPSS also for CRLs.
482         + commit e6e9858970ed37f4d1b82b63868f2f855b4509fe
483         * src/crl.c: Include stringbuf.h
484         (ksba_crl_get_sig_val): Extend to return PSS parameter.
485
486         * tests/t-crl-parser.c (one_file): Print parameter.
487
488         Refactor PSS parameter parsing.
489         + commit 5c08d7ea8e0f6945082c1c6947aa333b6d36d789
490         * src/keyinfo.c (cryptval_to_sexp): Move pssRSA parser to ...
491         (_ksba_keyinfo_get_pss_info): new.
492
493         Merge copies of stringbuf functions into one new header.
494         + commit 641fc8b6deac2262978c5212fd0d41b6d0a07277
495         * src/stringbuf.h: New.
496         * src/Makefile.am (libksba_la_SOURCES): Add it.
497         * src/dn.c: Move stringbuf functions to new file.
498         * src/keyinfo.c: Ditto.
499
500 2020-04-08  Werner Koch  <wk@gnupg.org>
501
502         Add read-only support for rsaPSS.
503         + commit f5695be600abe905476f45808ef7df850d9a4dae
504         * src/ber-help.c (_ksba_parse_context_tag): Minor tweak in the
505         returned error codes.
506         * src/keyinfo.c (SUPPORTED_RSAPSS): New.
507         (pk_algo_table): Add rsaPSS.
508         (sig_algo_table): Add rsaPSS.
509         (put_stringbuf_uint): New.
510         (cryptval_to_sexp): Parse out the rsaPSS parameters.
511
512         Remove duplicated code and make parse wrappers internally available.
513         + commit 152d04749cceeaccf309a3b150000da09aa503b5
514         * src/ber-help.c (_ksba_parse_sequence): New.  Code taken from ocsp.c
515         or crl.c and function name prefixed with _ksba_.
516         (_ksba_parse_context_tag): Ditto.
517         (_ksba_parse_enumerated): Ditto.
518         (_ksba_parse_integer): Ditto.
519         (_ksba_parse_octet_string): Ditto.
520         (_ksba_parse_optional_boolean): Ditto.
521         (_ksba_parse_object_id_into_str): Ditto.
522         (_ksba_parse_asntime_into_isotime): Ditto.
523         * src/ber-help.h: Add new prototypes and macros fro easier use.
524         (parse_skip): Moved from ocsp.c and crl.c as inline to here.
525         * src/crl.c: Remove parse fucntions.
526         * src/ocsp.c: Remove parse fucntions.
527
528         * src/Makefile.am (ber_dump_SOURCES): Add time.c
529
530 2020-04-03  Werner Koch  <wk@gnupg.org>
531
532         Very minor patch cleanup.
533         + commit 1119068b2e9f3bc1555dcc78fa54716733470b01
534         * src/keyinfo.c (pkalgo_t): Remove trailing comma
535
536 2020-03-31  NIIBE Yutaka  <gniibe@fsij.org>
537
538         ecc: Add Ed25519 and Ed448 public key support.
539         + commit 2625e13bc9d5ed1292eacba38683e5f3b1371237
540         * src/keyinfo.c (PKALGO_ED25519, PKALGO_ED448): New.
541         (PKALGO_X25519, PKALGO_X448): New for future.
542         (pk_algo_table): Add
543         (sig_algo_table): New entries for Ed25519 and Ed448 for future.
544         (_ksba_keyinfo_from_sexp): Add handling for Ed25519 and Ed448.
545
546 2020-03-30  Werner Koch  <wk@gnupg.org>
547
548         Allow optional elements in keyinfo objects.
549         + commit 1e903fe558bd6583c5447fbebe2ef019229dbfdc
550         * src/keyinfo.c (_ksba_keyinfo_from_sexp): Allow for optiona elements.
551         (_ksba_algoinfo_from_sexp): Ditto.
552
553 2020-01-21  Werner Koch  <wk@gnupg.org>
554
555         tests: Implement option --to-str for t-dn-parser.
556         + commit bf52cfb8f2b624fb4e24b4bc1089f74429b70b5a
557         * tests/t-dnparser.c (main): Implement option.
558
559 2019-08-20  NIIBE Yutaka  <gniibe@fsij.org>
560
561         pkgconfig: Fix ksba.pc.
562         + commit 3df0cd32e3b21b7da96a93d1f84d6cb6a77b89be
563         * src/ksba.pc.in (Cflags, Libs): Have flags.
564
565 2019-07-22  NIIBE Yutaka  <gniibe@fsij.org>
566
567         build: Use {CFLAGS,CPPFLAGS,LDFLAGS}_FOR_BUILD for helper program.
568         + commit b92ec7f502d9a1107ac69dacce9ff684f5ae1c07
569         * src/Makefile.am: Add {CFLAGS,CPPFLAGS,LDFLAGS}_FOR_BUILD for
570         asn1-gentables.
571
572 2019-04-26  Werner Koch  <wk@gnupg.org>
573
574         Add support for authenticode signing.
575         + commit 1f0afa452e1276c98c2932e7247e36e0d74cc306
576         * src/cms.c (content_handlers): Add KSBA_CT_SPC_IND_DATA_CTX.
577
578         Add constants KSBA_VERSION and KSBA_VERSION_NUMBER.
579         + commit 158539fd0c82522665fc4be86ba32f7f8553bc9b
580         * src/ksba.h: Rename to ...
581         * src/ksba.h.in: this.
582         (KSBA_VERSION, KSBA_VERSION_NUMBER): New.
583         * configure.ac (VERSION_NUMBER): Set it.
584         (AC_CONFIG_FILES): Add ksba.h
585
586 2019-03-06  NIIBE Yutaka  <gniibe@fsij.org>
587
588         Update libgcrypt.m4.
589         + commit 09a4cfae14397605bb32ddd4449b47d32e5090ab
590         * m4/libgcrypt.m4: Update from libgcrypt master.
591
592 2019-02-27  NIIBE Yutaka  <gniibe@fsij.org>
593
594         Revert wrong fix for ECDSA.
595         + commit f37361f86d2228aa5c5b09db188b8c6ba33cc435
596         * src/certreq.c (ksba_certreq_set_sig_val): Add back MSB handling of
597         0x80 for ECDSA.
598
599         Don't remove leading zero byte.
600         + commit 9fea74575085352daec89b64bd36db5df9a05fb8
601         * src/cms.c (ksba_cms_set_sig_val): Don't remove leading zero byte.
602         (ksba_cms_set_enc_val): Likewise.
603         * src/certreq.c (ksba_certreq_set_sig_val): Likewise for RSA.
604
605 2019-02-26  NIIBE Yutaka  <gniibe@fsij.org>
606
607         Fixing ECDSA, support EdDSA signatures in CSRs.
608         + commit 5d9278f3d13050eddd68d8a1c490274a4f631f5f
609         * src/certreq.c (ksba_certreq_set_sig_val): Remove MSB handling of
610         0x80 for ECDSA, because it is done by GnuPG.
611
612         Distinguishing EdDSA signature in libgcrypt format, make a signature
613         simply concatinate r and s.
614
615 2019-02-14  Damien Goutte-Gattat via Gnupg-devel  <gnupg-devel@gnupg.org>
616
617         Support multi-valued signatures in CSRs.
618         + commit 98882064f45778927d38c6fdbe008f5858b36813
619         * src/certreq.c (ksba_certreq_set_sig_val): Support signatures
620         made of several values.
621
622 2019-01-16  NIIBE Yutaka  <gniibe@fsij.org>
623
624         build: With LD_LIBRARY_PATH defined, use --disable-new-dtags.
625         + commit 3f99f332ada603468eb30d77649c4fdf84b383e6
626         * configure.ac (LDADD_FOR_TESTS_KLUDGE): New for --disable-new-dtags.
627         * tests/Makefile.am (LDADD): Use LDADD_FOR_TESTS_KLUDGE.
628
629 2018-11-13  NIIBE Yutaka  <gniibe@fsij.org>
630
631         build: Update autogen.rc.
632         + commit c37cdbd0f1b4a682799e0661178e392227cca938
633         * autogen.rc: Remove obsolete --with-gpg-error-prefix option.
634
635 2018-11-08  NIIBE Yutaka  <gniibe@fsij.org>
636
637         Add annotation for fall through path.
638         + commit 3f5dcb5ff6721b0c70c8b0e320e4fd58f1c2cada
639         * src/ber-decoder.c (decoder_next): Add FALLTHROUGH.
640
641 2018-11-02  NIIBE Yutaka  <gniibe@fsij.org>
642
643         build: Update gpg-error.m4 and ksba.m4.
644         + commit 5a7c0d8667ceddf7820131865dad0ab850e5c3a4
645         * m4/gpg-error.m4: Update to 2018-11-02.
646         * src/ksba.m4: Add AC_MSG_NOTICE.
647
648 2018-10-29  NIIBE Yutaka  <gniibe@fsij.org>
649
650         build: Update gpg-error.m4 and ksba.m4.
651         + commit 9917a23a6c8177f79bdd8da031d3b7135b597c91
652         * m4/gpg-error.m4: Update to 2018-10-29.
653         * src/ksba.m4: Follow the change of gpgrt-config.
654
655 2018-10-26  NIIBE Yutaka  <gniibe@fsij.org>
656
657         ksba.m4: Fix calling by gpgrt-config.
658         + commit 825a4a9e93655b136dd2eee685e0e67aca912a01
659         * src/ksba.m4: Fix condition and use "ksba" for *.pc.
660
661         ksba.m4: Better backward compatibility.
662         + commit d3fdae7a299a0514b90dbb7f45a0d08ee5d93078
663         * m4/gpg-error.m4: Update.
664         * src/ksba.m4: Don't assume ksba-config is newer.
665         Fix KSBA_CONFIG which used LIBKSBA_CONFIG wrongly.
666
667         build: Fix ksba.m4.
668         + commit 910c148825d50798689998ed760b658f2aeeee64
669         * src/ksba.m4: Use AC_PATH_PROG to detect ksba-config.
670
671         build: Improve ksba.m4.
672         + commit f0116c07d0d89fc7114dedeb3fc638ab9dae2254
673         * src/ksba.m4: Don't try gpgrt-config when LIBKSBA_CONFIG set.  Fall
674         back to detecting ksba-config, when gpgrt-config doesn't work well.
675
676         build: Relax build requirements.
677         + commit a32a50c7726ee7c6ac320d99b9ab42f073960cc9
678         * m4/gpg-error.m4: Update from libgpg-error 1.33.
679         * src/ksba.m4: Don't require AM_PATH_GPG_ERROR.  Use GPGRT_CONFIG when
680         it is confirmed that it is available and working well.
681         * configure.ac (AM_PATH_GPG_ERROR): No requirement for newer version
682         (It was because of new gpgrt-config which supports *.pc files).
683
684 2018-10-25  NIIBE Yutaka  <gniibe@fsij.org>
685
686         build: Require libgpg-error >= 1.33.
687         + commit 07cf4a9ab6f1a7b68aeda39ba03691e713254418
688         * configure.ac (NEED_GPG_ERROR_VERSION): Require >= 1.33.
689         * m4/gpg-error.m4: Update from libgpg-error 1.33.
690         * src/ksba.m4: Fix to support --with-libksba-prefix.
691
692 2018-10-24  NIIBE Yutaka  <gniibe@fsij.org>
693
694         build: Fix ksba.pc.
695         + commit 4754816d10a38ebe97acd2f3bfaa835055566696
696         * src/ksba.pc.in: Fix typo.
697
698         build: Fix previous commit.
699         + commit 5a21f7465ca2aadfb3877a53f6536859b6973463
700
701
702         build: Compatibility to pkg-config.
703         + commit dfc3ad5c6e97cc11de4faa19de59203ae8d5eb1a
704         * src/ksba-config.in: Support --variable and --modversion.
705
706         build: Make ksba.m4 use gpg-error-config.
707         + commit ce5247c0f3fcbe8a1e70c33ab4c83d807aecce63
708         * src/ksba.m4: Use gpg-error-config.
709
710         build: Provide libassuan.pc, generated by configure.
711         + commit d0016a76942eb58748182ad282c03d5cd7a0dc86
712         * configure.ac (PACKAGE, VERSION): Remove.
713         Generate src/ksba.pc.
714         * src/Makefile.am (pkgconfigdir, pkgconfig_DATA): New.
715         * src/ksba-config.in: Use @PACKAGE_VERSION@.
716         * src/ksba.pc.in: New.
717
718         build: Update gpg-error.m4 from libgpg-error.
719         + commit ec4e838ca91849b493f7ea77074e4415ed6a2d4a
720         * m4/gpg-error.m4: Update from libgpg-error 1.33.
721
722 2018-10-23  Werner Koch  <wk@gnupg.org>
723
724         Fix error detection in the CMS parser which may led to a NULL-deref.
725         + commit a1ce3c17ee0d44ba8c7c9553824ba55b7950e930
726         * src/cms.c (build_signed_data_rest): Fix c+p bug.
727
728         Use only one .PHONY target in a Makefile.
729         + commit d56bddc68db86878e1b3497362407c994c2841ca
730         * Makefile.am (.PHONY): Move to the end.
731
732         Fix test for existence of the signing_time.
733         + commit a0bbba1c49286f09c5f2eb3cd788938fac2ed252
734         * src/cms.c (build_signed_data_attributes): Fix test.
735
736 2017-08-22  Marcus Brinkmann  <marcus.brinkmann@ruhr-uni-bochum.de>
737
738         Fix make distcheck.
739         + commit af99234b21c98ad1a4eaf2b72fb52de67beba9d3
740         * configure.ac: Revert last change and define HAVE_GCOV if not
741         in maintainer mode.
742         * tests/detached-sig.csm: New file.
743         * tests/Makefile.am (EXTRA_DIST): Add detached-sig.csm.
744         * tests/t-cms-parser.c (main): Use detached-sig.csm as test file.
745
746 2017-08-18  Marcus Brinkmann  <marcus.brinkmann@ruhr-uni-bochum.de>
747
748         Fix non-maintainer build.
749         + commit 457d2f0c6a1fea394de6d48afb1c1c0189c52878
750         * configure.ac: Always check for gcov program to make sure
751         the automake variable is defined.
752
753         Fix all compiler warnings.
754         + commit 982faa2c354a2d23ffd4a0bad584e145faf809bc
755         * src/asn1-parse.y (import_defs, identifier_list): Comment out unused part
756         of the grammar that causes a shift-reduce conflict.
757         * src/cms-parser.c (_ksba_cms_parse_enveloped_data_part_1): Initialize
758         some variables to help suppress uninitialized use warning.
759         * src/crl.c (oidstr_issuingDistributionPoint): Comment out unused OID.
760         * src/gen-help.h (ksba_asn_parse_file, ksba_asn_tree_dump): Add declarations.
761
762 2017-08-15  Kai Michaelis  <kai@gnupg.org>
763
764         Fix memory leaks in ksba_cms_identify and tests.
765         + commit a1d9b046aec8cedda16a9e24eb8d2ed021f68d5d
766         * tests/t-reader.c: free prepend_srcdir() result.
767         * tests/t-cms-parser: ditto & release writer instance.
768         * src/cms.c: fix mem leak in ksba_cms_identify().
769
770 2017-08-10  Kai Michaelis  <kai@gnupg.org>
771
772         Enable CMS parser test.
773         + commit 39e633d6d224cafa83d884865ac4e372709d91b7
774         * tests/Makefile.am: add t-cms-parser to the list of tests.
775         * tests/t-cms-parser.c: change default test file to something that
776           exists.
777
778         Generate coverage information.
779         + commit 3e029a4ed0059116febe05924a14009ca622e3c5
780         * autogen.sh: add options --coverage and --report to help w/ coverage
781         info collection and reporting.
782         * m4/gcov.m4: new file. Boilerplate for locating gcov et.al.
783         * Makefile.am: add coverage-report target
784
785         GnuPG-Bud-Id: 3050
786
787 2017-08-09  Kai Michaelis  <kai@gnupg.org>
788
789         Add missing include.
790         + commit ad36a28e3a0580c1a9547843c03e1af172681efc
791         * src/reader.c: include unistd.h
792
793         Don't use decls in for-loop headers.
794         + commit 707862ab44fb6cca79dacbf866a7066d941b92fc
795         libksba compiles w/ C90
796
797         Add missing fd support to ksba_reader_t.
798         + commit c7f4ef5b5ebc8d6be2c56f14da999a36735a2eba
799         * src/reader.c: add branches for READER_TYPE_FD
800         * tests/t-reader.c: tests for above
801
802 2017-06-19  Marcus Brinkmann  <marcus.brinkmann@ruhr-uni-bochum.de>
803
804         configure: Add flag to disable documentation build.
805         + commit ab23f39a91b5c16eda2d9d581f9bf2ab2da39cf2
806         * configure.ac: Add new option --disable-doc.
807         (BUILD_DOC): New automake conditional.
808         * Makefile.am (SUBDIRS): Make doc optional based on BUILD_DOC.
809         (DISTCHECK_CONFIGURE_FLAGS): New variable.
810
811         Signed-Off-By: Marcus Brinkmann <mb@g10code.com>
812
813 2017-04-20  Andre Heinecke  <aheinecke@intevation.de>
814
815         tests: Open testfile in binary mode.
816         + commit 3bb0c54fe47eb72e1e7be93de8775b37045de34d
817         * tests/t-crl-parser.c (one_file): Read file in binary mode.
818
819 2017-03-08  Justus Winter  <justus@g10code.com>
820
821         build: Use macOS' compatibility macros to enable all features.
822         + commit 561d03a008150c201ece22b29c97b24a1f6bf590
823         * configure.ac: On macOS, use the compatibility macros to expose every
824         feature of the libc.  This is the equivalent of _GNU_SOURCE on GNU
825         libc.
826
827 2016-10-14  Werner Koch  <wk@gnupg.org>
828
829         Let configure print a note if Yacc is not Bison.
830         + commit 100ed5092aec0afe16ca7a4fe660602745e92a36
831         * m4/ax_prog_bison.m4: New.
832         * m4/Makefile.am (EXTRA_DIST): Add it.
833         * configure.ac: Test for Bison and print a note.
834
835 2016-08-22  Werner Koch  <wk@gnupg.org>
836
837         Release 1.3.5.
838         + commit 25cc42cf61a56e01f1bd72883e452f691dda8309
839         * configure.ac: Set LT version to C19/A/11/R6.
840
841         Use size_t for the result of fread.
842         + commit 68fba3d8d7757b7f7ed75fdebd2b91299943503b
843         * src/reader.c (ksba_reader_read): Make 'n' and size_t.
844
845         Limit allocation in the BER decoder to 16 MiB.
846         + commit 89d898346b75337ec2546c672ea720c5c956b53a
847         * src/ber-decoder.c (MAX_IMAGE_LENGTH): New.
848         (decoder_next): Limit allcoation to MAX_IMAGE_LENGTH.
849         (_ksba_ber_decoder_dump, _ksba_ber_decoder_decode): Ditto.
850
851 2016-07-17  Tomáš Trnka  <tomastrnka@gmx.com>
852
853         Encode OCSP nonce value as an octet string (RFC 6960)
854         + commit eb7833b8720cd0831c78d42e993ca878cecf27bc
855         * src/ocsp.c (ksba_ocsp_set_nonce): Stop removing the sign bit.
856          (write_request_extensions): Encode nonce as octet string.
857          (parse_response_extensions): Decode nonce as octet string.
858
859 2016-07-13  Werner Koch  <wk@gnupg.org>
860
861         build: Update config.{guess,sub} to {2016-05-15,2016-06-20}.
862         + commit ee203f948a6573809672d9e61177145a13b3987d
863         * build-aux/config.guess: Update.
864         * build-aux/config.sub: Update.
865
866 2016-06-27  Werner Koch  <wk@gnupg.org>
867
868         tests: Fix a memory leak.
869         + commit 995d2e34932143cc9888db779cb3ecd92ae6e32e
870         * tests/t-oid.c (test_oid_to_str): Free STR.
871
872         Use modern error macros and fix a missing assignment.
873         + commit b60e5140f85fc00cd131ab635d4202693759abe1
874         * src/ocsp.c: Remove errno.h.  Replace gpg_error_from_errno(errno) by
875         gpg_error_from_syserror ().
876         (parse_response): Ditto.  Return direct becuase static analyzer may
877         not grasp that  gpg_error_from_syserror will never return false.
878         (ksba_ocsp_get_responder_id): Actually return an error for NO_DATA.
879
880         Detect invalid RDN names and avoid a read from uninitialized variable.
881         + commit 7243a3c6ed1635eef45b567b37a025e4a5e0dc51
882         * src/dn.c (parse_rdn): Bail out for an invalid name.
883
884 2016-05-25  Werner Koch  <wk@gnupg.org>
885             Pascal Cuoq  <cuoq@trust-in-soft.com>
886
887         Fix OOB read in parse_distribution_point.
888         + commit 43f890f37b514757db5653608ec59b5a74e8e092
889         * src/cert.c (parse_distribution_point): Check TI.length.
890
891 2016-05-11  Werner Koch  <wk@gnupg.org>
892
893         Make sure that ASN.1 data is stored in an all-initialized buffer.
894         + commit 2a9fc5654df497b91ab9b64e946c1e19371888e5
895         * src/ber-decoder.c (decoder_next): Clear the image buffer.
896
897 2016-05-03  Werner Koch  <wk@gnupg.org>
898
899         Release 1.3.4.
900         + commit 3a92e8c8939767d19aaa48f051d721d582ab0eff
901         * configure.ac: Set LT version to C19/A11/R5.
902
903         Update config.{guess,sub} to 2016-04-02 and 2016-03-30.
904         + commit 8290fabdb260e228c3b89706c88caf90da77358b
905         * build-aux/config.guess: Update.
906         * build-aux/config.sub: Update.
907
908         Create an SWDB file during "make distcheck"
909         + commit ec820ebbb05cbc0d5ee00f086364ecaf3efa54cb
910         * Makefile.am (distcheck-hook): New.
911
912         Fix an undefined return value in ksba_cert_get_digest_algo.
913         + commit 3f74c2cc0068d0b3584627af73c8c42ce720a826
914         * src/cert.c (ksba_cert_get_digest_algo): Set ALGO in the error case.
915         * tests/cert-basic.c (one_file): Take care of printf which does not
916         handle NULL for %s
917
918         Fix an OOB read access in _ksba_dn_to_str.
919         + commit 6be61daac047d8e6aa941eb103f8e71a1d4e3c75
920         * src/dn.c (append_utf8_value): Use a straightforward check to fix an
921         off-by-one.
922
923         Fix possible read access beyond the buffer.
924         + commit a7eed17a0b2a1c09ef986f3b4b323cd31cea2b64
925         * src/ber-help.c (_ksba_ber_parse_tl): Add extra sanity check.
926         * src/cert.c (ksba_cert_get_cert_policies): Check TLV given length
927         against buffer length.
928         (ksba_cert_get_ext_key_usages): Ditto.
929         * src/ocsp.c (parse_asntime_into_isotime): Ditto.
930
931 2015-10-28  Werner Koch  <wk@gnupg.org>
932
933         Add more curves to the name->OID table.
934         + commit 3d968bbffc3a0acda890e342fbbfa5b34a26085e
935         * src/keyinfo.c (curve_names): Add more curves.
936
937         Fix lookup of ECC OIDs by name.
938         + commit 9df0ac3a4afa0272dbff08d17e9064f13be95814
939         * src/keyinfo.c (get_ecc_curve_oid): Fix obviously never tested table
940         lookup.
941
942 2015-08-25  Werner Koch  <wk@gnupg.org>
943
944         Add configure option --enable-build-timestamp.
945         + commit 538188812ace9594aad92a9b0f73b75e5ffc4526
946         * configure.ac (BUILD_TIMESTAMP): Set to "<none>" by default.  Add
947         ac_define_unquoted.
948
949 2015-04-10  Werner Koch  <wk@gnupg.org>
950
951         Release 1.3.3.
952         + commit b46ea28e82d67a2072817294115360fd3e1ab20c
953
954
955 2015-04-09  Werner Koch  <wk@gnupg.org>
956
957         Do not abort on decoder stack overflow.
958         + commit 07116a314f4dcd4d96990bbd74db95a03a9f650a
959         * src/ber-decoder.c (push_decoder_state, pop_decoder_state): Return an
960         error code.
961         (set_error): Prefix error message with "ksba:". Act on new return code.
962         (decoder_next): Act on new return code.
963
964         Fix integer overflow in the BER decoder.
965         + commit aea7b6032865740478ca4b706850a5217f1c3887
966         * src/ber-decoder.c (ber_decoder_s): Change val.length from int to
967         size_t.
968         (sum_a1_a2_gt_b, sum_a1_a2_ge_b): New.
969         (decoder_next): Check for integer overflow.  Use new sum function for
970         size check.
971         (_ksba_ber_decoder_dump): Use size_t for n to match change of
972         val.length.  Adjust printf fomrat.  Check for integer overflow and use
973         gpg_error_from_syserror instead of GPG_ERR_ENOMEM.
974         (_ksba_ber_decoder_decode): Use new sum function for size check.
975         Check for integer overflow.  Use size_t for n to match change of
976         val.length.
977
978 2015-04-08  Werner Koch  <wk@gnupg.org>
979
980         Fix encoding of invalid utf-8 strings in dn.c.
981         + commit 243d12fdec66a4360fbb3e307a046b39b5b4ffc3
982         * src/dn.c (append_quoted, append_atv): Use snprintf.
983         (append_utf8_value): Fix invalid encoding handling.
984
985 2015-01-30  Werner Koch  <wk@gnupg.org>
986
987         w32: Use -static-libgcc to avoid linking to libgcc_s_sjlj-1.dll.
988         + commit 792f4b36f998beba3515b776e8ca76ecbf20e468
989         * src/Makefile.am (extra_ltoptions): New.
990         (libksba_la_LDFLAGS): Use it.
991
992         Update ASN.1 grammar for newer Bison versions.
993         + commit 569f3da664de81638bcb322d6e9380f3ff16f70c
994         * src/asn1-parse.y (YYERROR_VERBOSE): Replace by ...
995         (%define parse.error.verbose): this.
996         (YYPARSE_PARM, YYLEX_PARM): Replace by ...
997         (%parm): this.
998         (%pure_parser): Replace by ...
999         (%define api.pure full): this.
1000         (yyerror): Add arg parm.
1001
1002 2015-01-28  Werner Koch  <wk@gnupg.org>
1003
1004         Require automake 1.14 and update build-aux files.
1005         + commit 32b3a47a358d694332450f9c2487a88aedc46ca7
1006         * Makefile.am (AUTOMAKE_OPTIONS): Move to ...
1007         * configure.ac (AM_INIT_AUTOMAKE: here.  Add serial-tests.
1008
1009 2014-11-25  Werner Koch  <wk@gnupg.org>
1010
1011         Release 1.3.2.
1012         + commit 02079b56b8d0d922bb84981270fafbc36637b417
1013         * configure.ac: Set LT version to C19/A11/R3.
1014
1015         build: Update version number magic.
1016         + commit 00ef765bc1aff709e990f9fd984e25aa8e09f482
1017         * autogen.sh: Update from gnupg master.
1018         * configure.ac: Change for new init style.  Create VERSION.
1019         * Makefile.am (dist-hook): Do no create VERSION
1020
1021         Fix buffer overflow in ksba_oid_to_str.
1022         + commit f715b9e156dfa99ae829fc694e5a0abd23ef97d7
1023         * src/oid.c (ksba_oid_to_str): Fix unsigned underflow.
1024
1025         * tests/Makefile.am (noinst_PROGRAMS): Move t-oid to ..
1026         (TESTS): here.
1027         * tests/t-oid.c (test_oid_to_str): New.
1028         (main): Run the new tests by default.  The former functionality
1029         requires the use of one of the new options.
1030
1031 2014-09-25  Werner Koch  <wk@gnupg.org>
1032
1033         Strip CRs while building the oid translation table.
1034         + commit 6692de1398629061d405099bb22e9480475928af
1035         * tests/Makefile.am (oidtranstbl.h): Strip CRs
1036
1037 2014-09-18  Werner Koch  <wk@gnupg.org>
1038
1039         Release 1.3.1.
1040         + commit 447784c718c817ab8036af7d81ce5a6bbb1f1df0
1041         * configure.ac: Set LT version to C19/A11/R2.
1042
1043 2014-07-22  Dmitry Eremin-Solenikov  <dbaryshkov@gmail.com>
1044
1045         Fix two memory leaks in cert-basic test.
1046         + commit 4486cb8228eeaefccc800e550cae4cd4701967c1
1047         * tests/cert-basic.c (one_file): always free public key and der2.
1048
1049         Enable optional valgrind for testsuite.
1050         + commit 64902148236af8f39397bfaf6b5494b342027948
1051         * configure.ac: Enable gnulib valgrind module.
1052         * gl/m4/gnulib.m4: Enable valgrind module.
1053         * tests/Makefile.am: Enable valgrind as LOG_COMPILER.
1054         * gl/m4/valgrind-tests.m4: New
1055
1056         Fix memory leak in crl parsing code.
1057         + commit 42aca4c9e575d44436e82e2e6bad6c967f12f21b
1058         * src/crl.c (store_one_entry_extension): Free memory at oid variable -
1059           otherwise libksba leaks memory on crl parsing.
1060
1061         Adapt mkoidtbl script to newer dumpasn1 database format.
1062         + commit 21cf824e1547d94f898946715b525e7d41de5899
1063         * tests/mkoidtbl.awk: optionally parse oid at OID line.
1064
1065         Reuse common test functions in cert-basic test.
1066         + commit 70bb73e5da9be83ec170829d7cdab5a1da89d408
1067         * tests/cert-basic.c (xmalloc, print_hex, print_sexp, print_time,
1068           print_dn): Drop.
1069
1070         tests: fix print_sexp and print_sexp_hex functions.
1071         + commit ce85db73a9330371d456ccd6a49a8682c31d0ed4
1072         * tests/t-common.h (print_sexp, print_sexp_hex): advance pointer on
1073           closing brace.
1074
1075         tests: Pass -no-install to libtool.
1076         + commit 7f9e09611fce8466a98f53c5dfe4bebb398c708f
1077         * tests/Makefile.am: add AM_LDFLAGS = -no-install
1078
1079 2014-04-15  Werner Koch  <wk@gnupg.org>
1080
1081         tests: Fix warning about unused var.
1082         + commit 5b79ad34ea2d7a86cfe465c81ff6bcd7fc1c06fc
1083         * tests/t-dnparser.c (main): Drop unneeded var INPUTLEN.
1084
1085         Fix possible segv if NULL is passed as cert.
1086         + commit 6fd166870237d5b913fb59cb2a4356fed1734efa
1087         * src/cert.c (ksba_cert_get_digest_algo): Fix !cert case.
1088
1089 2014-01-10  Werner Koch  <wk@gnupg.org>
1090
1091         Remove cruft.
1092         + commit f73e671406eefa96aba98f609cb68a9caae6bb7a
1093         * autogen.rc: Remove cruft.
1094
1095         Use the generic autogen.sh script.
1096         + commit 3943ea7f7dd739dc2c259b76a569a46259d47c43
1097         * Makefile.am (EXTRA_DIST): Add autogen.rc.
1098         * autogen.rc: New.
1099         * autogen.sh: Update from current GnuPG.
1100         * ltmain.sh: Move to build-aux/.
1101         * compile: Ditto.
1102         * config.guess: Ditto.
1103         * config.sub: Ditto.
1104         * depcomp: Ditto.
1105         * doc/mdate-sh: Ditto.
1106         * doc/texinfo.tex: Ditto.
1107         * install-sh: Ditto.
1108         * missing: Ditto.
1109         * ylwrap: Ditto.
1110         * configure.ac (AC_CONFIG_AUX_DIR): New.
1111
1112 2014-01-08  Werner Koch  <wk@gnupg.org>
1113
1114         Add --enable-silent-rules stuff.
1115         + commit 629c1f0b16b12418711516de3bef5298ab45fe12
1116         * configure.ac: Add AM_SILENT_RULES.
1117
1118         Fix libtool 2.4.2 to correctly detect .def files.
1119         + commit a7b75d6e8e8af79eab9ece7a4061ea48eab8a81d
1120         * ltmain.sh (sed_uncomment_deffile): New.
1121         (orig_export_symbols): Uncomment def file before testing for EXPORTS.
1122         * m4/libtool.m4: Do the same for the generated code.
1123
1124 2013-12-10  David 'Digit' Turner  <digit@google.com>
1125
1126         Update libtool to support Android.
1127         + commit d69cde444b2a4b106b4d8c6857efe7d5e8ce18fc
1128         * m4/libtool.m4: Add "linux*android*" case.  Taken from the libtool
1129         repository.
1130
1131 2013-12-10  Werner Koch  <wk@gnupg.org>
1132
1133         Add build support for ppc64le.
1134         + commit a34986a19b2d597cfa3fac099abe243ce1a896a5
1135         * config.guess, config.sub: Update to latest version (2013-11-29).
1136         * m4/libtool.m4: Add patches for ppc64le.
1137
1138         Fix duplicate definition of TRUE and FALSE in grammar file.
1139         + commit ab3fe5dccd5bd814f9e2db943380b28598f8cb7a
1140         * src/asn1-parse.y (YYPRINT): Define.
1141         (%token-table): Define.
1142         (TRUE,FALSE,BOOLEAN): Prefix these tokens with "ksba_" to avoid name
1143         conflicts.
1144         (key_word, key_word_token): Remove arrays.
1145         (%token): Add literal strings to almost all tokens.
1146         (yylex): Use yytname array for keyword lookup.
1147
1148 2012-11-16  Werner Koch  <wk@gnupg.org>
1149
1150         Improve parsing of the GIT revision number.
1151         + commit 7b9662f2bf28feb575c4b2b181d88ca61ad43d53
1152         * configure.ac (mmm4_revision): Use git rev-parse.
1153
1154         Fix non-portable use of chmod in autogen.sh.
1155         + commit c18bf9d08d95a73192e12580ce5eae3454c07c0d
1156         * autogen.sh: Remove option -c from chmod.
1157
1158 2012-09-27  Werner Koch  <wk@gnupg.org>
1159
1160         Release 1.3.0.
1161         + commit ea8487406ecafbcf190008b6c8a5c8e7c63ed6b8
1162         * configure.ac: Set LT version to C19/A11/R1.
1163
1164 2012-09-26  Werner Koch  <wk@gnupg.org>
1165
1166         Update build helper scripts.
1167         + commit 1533a9662128fca669eeb661308939cdc8e5d74b
1168         * config.guess, config.sub: Update to version 2012-07-31.
1169         * ltmain.sh: Update to version 2.4.2.
1170         * install-sh, m4/libtool.m4, m4/ltoptions.m4, m4/ltversion.m4
1171         * m4/lt~obsolete.m4: Update to autoconf 2.69 versions.
1172
1173         Adjust for stricter autoconf requirements.
1174         + commit 3e71347052593f4ba3312eb31e932765be1c93ec
1175         * configure.ac: Fix usage of AC_LANG_PROGRAM.
1176
1177         Do not distribute a copy of gitlog-to-changelog.
1178         + commit 5d60c0f340584b280762864fc1cb65013c55503d
1179         * Makefile.am (AUTOMAKE_OPTIONS): Do not create a tar.gz.
1180         (gen-ChangeLog): Require an installed gitlog-to-changelog.
1181         * build-aux/gitlog-to-changelog: Remove.
1182
1183         Allow building with w64-mingw32.
1184         + commit 3776ae8f4ea642ad6ac0af726e90492e6f82eb5f
1185         * autogen.sh <--build-w32>: Support the w64-mingw32 toolchain.  Also
1186         prepare for 64 bit building.
1187
1188         Switch to the new automagic beta numbering scheme.
1189         + commit 120d58757d43d10278d4f5ec4126bc18d2ccd28a
1190         * configure.ac: Add all the required m4 magic.
1191
1192         Change library license to LGPLv3+/GPLv2+.
1193         + commit d4333eefc945750613ac9483a41793b5971e3cfe
1194         * COPYING.GPLv2, COPYING.GPLv3, COPYING.LGPLv3: New.
1195         * COPYING: Replace text by a reference to the new files.
1196         * AUTHORS: Update copyright, license, and maintainer information.
1197         * Makefile.am (EXTRA_DIST): Distribute the new files.
1198
1199         Remove unused or useless files.
1200         + commit 9abb7c027e9501012f96393c80607c4ad6a8a38f
1201         * src/asn1-parse.h: Remove empty file.
1202         * src/asn1-parse.y: Do not include asn1-parse.h.
1203
1204 2011-12-06  Werner Koch  <wk@gnupg.org>
1205
1206         Allow to set subject and issuer.
1207         + commit aa6cbc8332e59ad94b104b51ea59784f17e522f6
1208         * src/certreq.c (ksba_certreq_set_issuer): Do not check the subject.
1209
1210 2011-12-01  Werner Koch  <wk@gnupg.org>
1211
1212         Post release updates.
1213         + commit 3f957f48388756732b5795b77b65d5ab7c0c8298
1214
1215
1216         Generate the ChangeLog from commit logs.
1217         + commit 1120a33155aa3246b6aeed2dcd6a1315969c632d
1218         * build-aux/gitlog-to-changelog: New script.  Taken from gnulib.
1219         * build-aux/git-log-fix: New file.
1220         * build-aux/git-log-footer: New file.
1221         * doc/HACKING: New file.
1222         * ChangeLog: New file.
1223         * Makefile.am (EXTRA_DIST): Add new files.
1224         (gen-ChangeLog): New.
1225         (dist-hook): Run gen-ChangeLog.
1226         * autogen.sh: Install commit-msg hook for git.
1227
1228         Rename all ChangeLog files to ChangeLog-2011.
1229
1230 2011-12-01  Werner Koch  <wk@gnupg.org>
1231
1232         NB: Changes done before December 1st, 2011 are described in
1233         per directory files named ChangeLog-2011.  See doc/HACKING for
1234         details.
1235
1236         -----
1237         Copyright (C) 2011 g10 Code GmbH
1238
1239         Copying and distribution of this file and/or the original GIT
1240         commit log messages, with or without modification, are
1241         permitted provided the copyright notice and this notice are
1242         preserved.