xref: /freebsd/crypto/heimdal/lib/hx509/ChangeLog (revision 6a068746777241722b2b32c5d0bc443a2a64d80b)
1*ae771770SStanislav Sedov2008-07-14  Love Hörnquist Åstrand  <lha@kth.se>
2*ae771770SStanislav Sedov
3*ae771770SStanislav Sedov	* hxtool.c: Break out print_eval_types().
4*ae771770SStanislav Sedov
5*ae771770SStanislav Sedov2008-06-21  Love Hörnquist Åstrand  <lha@kth.se>
6*ae771770SStanislav Sedov
7*ae771770SStanislav Sedov	* ks_p12.c: pass in time_now to unevelope
8*ae771770SStanislav Sedov
9*ae771770SStanislav Sedov	* cms.c: Pass in time_now to unevelope, us verify context time in
10*ae771770SStanislav Sedov	verify_signed.
11*ae771770SStanislav Sedov
12*ae771770SStanislav Sedov2008-05-23  Love Hörnquist Åstrand  <lha@kth.se>
13*ae771770SStanislav Sedov
14*ae771770SStanislav Sedov	* hx_locl.h: Include <limits.h> for TYPE_MAX defines.
15*ae771770SStanislav Sedov
16*ae771770SStanislav Sedov2008-04-29  Love Hörnquist Åstrand  <lha@it.su.se>
17*ae771770SStanislav Sedov
18*ae771770SStanislav Sedov	* sel-lex.l: Use _hx509_sel_yyerror() instead of error_message().
19*ae771770SStanislav Sedov
20*ae771770SStanislav Sedov2008-04-20  Love Hörnquist Åstrand  <lha@it.su.se>
21*ae771770SStanislav Sedov
22*ae771770SStanislav Sedov	* sel-lex.l: Include <config.h>
23*ae771770SStanislav Sedov
24*ae771770SStanislav Sedov2008-04-17  Love Hörnquist Åstrand  <lha@it.su.se>
25*ae771770SStanislav Sedov
26*ae771770SStanislav Sedov	* Makefile.am: Update make-proto usage.
27*ae771770SStanislav Sedov
28*ae771770SStanislav Sedov2008-04-15  Love Hörnquist Åstrand  <lha@it.su.se>
29*ae771770SStanislav Sedov
30*ae771770SStanislav Sedov	* ca.c: BasicConstraints.pathLenConstraint unsigned int.
31*ae771770SStanislav Sedov
32*ae771770SStanislav Sedov	* sel-lex.l: Prefix sel_error with _hx509_ since its global on
33*ae771770SStanislav Sedov	platforms w/o symbol versioning.
34*ae771770SStanislav Sedov
35*ae771770SStanislav Sedov	* sel.h: rename yyerror to sel_yyerror in the whole library, not
36*ae771770SStanislav Sedov	just the lexer
37*ae771770SStanislav Sedov
38*ae771770SStanislav Sedov	* sel-lex.l: rename yyerror to sel_yyerror in the whole library,
39*ae771770SStanislav Sedov	not just the lexer
40*ae771770SStanislav Sedov
41*ae771770SStanislav Sedov2008-04-14  Love Hörnquist Åstrand  <lha@it.su.se>
42*ae771770SStanislav Sedov
43*ae771770SStanislav Sedov	* sel-lex.l: Rename yyerror to sel_yyerror and make it static.
44*ae771770SStanislav Sedov
45*ae771770SStanislav Sedov2008-04-08  Love Hörnquist Åstrand  <lha@it.su.se>
46*ae771770SStanislav Sedov
47*ae771770SStanislav Sedov	* hx509.h: Make self-standing by including missing files.
48*ae771770SStanislav Sedov
49*ae771770SStanislav Sedov2008-04-07  Love Hörnquist Åstrand  <lha@it.su.se>
50*ae771770SStanislav Sedov
51*ae771770SStanislav Sedov	* ks_p11.c: Use unsigned where appropriate.
52*ae771770SStanislav Sedov
53*ae771770SStanislav Sedov	* softp11.c: call va_start before using vsnprintf.
54*ae771770SStanislav Sedov
55*ae771770SStanislav Sedov	* crypto.c: make refcount slightly more sane.
56*ae771770SStanislav Sedov
57*ae771770SStanislav Sedov	* keyset.c: make refcount slightly more sane.
58*ae771770SStanislav Sedov
59*ae771770SStanislav Sedov	* cert.c: make refcount slightly more sane.
60*ae771770SStanislav Sedov
61*ae771770SStanislav Sedov2008-03-19  Love Hörnquist Åstrand  <lha@it.su.se>
62*ae771770SStanislav Sedov
63*ae771770SStanislav Sedov	* test_nist2.in: Try to find unzip.
64*ae771770SStanislav Sedov
65*ae771770SStanislav Sedov2008-03-16  Love Hörnquist Åstrand  <lha@it.su.se>
66*ae771770SStanislav Sedov
67*ae771770SStanislav Sedov	* version-script.map: add missing symbols
68*ae771770SStanislav Sedov
69*ae771770SStanislav Sedov	* spnego: Make delegated credentials delegated directly, Oleg
70*ae771770SStanislav Sedov	Sharoiko pointed out that it always didnt work with the old
71*ae771770SStanislav Sedov	code. Also add som missing cred and context pass-thou functions in
72*ae771770SStanislav Sedov	the SPNEGO layer.
73*ae771770SStanislav Sedov
74*ae771770SStanislav Sedov2008-03-14  Love Hörnquist Åstrand  <lha@it.su.se>
75*ae771770SStanislav Sedov
76*ae771770SStanislav Sedov	* rename to be more consistent, export for teting
77*ae771770SStanislav Sedov
78*ae771770SStanislav Sedov	* Add language to support querying certificates to find a
79*ae771770SStanislav Sedov	match. Support constructs like "1.3.6.1.5.2.3.5" IN
80*ae771770SStanislav Sedov	%{certificate.eku} AND %{certificate.subject} TAILMATCH "C=SE".
81*ae771770SStanislav Sedov
82*ae771770SStanislav Sedov2008-02-26  Love Hörnquist Åstrand  <lha@it.su.se>
83*ae771770SStanislav Sedov
84*ae771770SStanislav Sedov	* version-script.map: add hx509_pem_read
85*ae771770SStanislav Sedov
86*ae771770SStanislav Sedov	* hxtool-commands.in: Add --pem to cms-verify-sd.
87*ae771770SStanislav Sedov
88*ae771770SStanislav Sedov	* test_cms.in: Test verifying PEM signature files.
89*ae771770SStanislav Sedov
90*ae771770SStanislav Sedov	* hxtool.c: Support verifying PEM signature files.
91*ae771770SStanislav Sedov
92*ae771770SStanislav Sedov2008-02-25  Love Hörnquist Åstrand  <lha@it.su.se>
93*ae771770SStanislav Sedov
94*ae771770SStanislav Sedov	* Makefile.am: libhx509_la_OBJECTS depends on hx_locl.h
95*ae771770SStanislav Sedov
96*ae771770SStanislav Sedov2008-02-11  Love Hörnquist Åstrand  <lha@it.su.se>
97*ae771770SStanislav Sedov
98*ae771770SStanislav Sedov	* Use ldap-prep (with libwind) to compare names
99*ae771770SStanislav Sedov
100*ae771770SStanislav Sedov2008-01-27  Love Hörnquist Åstrand  <lha@it.su.se>
101*ae771770SStanislav Sedov
102*ae771770SStanislav Sedov	* cert.c (hx509_query_match_eku): update to support the NULL
103*ae771770SStanislav Sedov	eku (reset), clearify the old behaivor with regards repetitive
104*ae771770SStanislav Sedov	calls.
105*ae771770SStanislav Sedov
106*ae771770SStanislav Sedov	* Add matching on EKU, validate EKUs, add hxtool matching glue,
107*ae771770SStanislav Sedov	add check. Adapted from pach from Tim Miller of Mitre
108*ae771770SStanislav Sedov
109*ae771770SStanislav Sedov2008-01-21  Love Hörnquist Åstrand  <lha@it.su.se>
110c19800e8SDoug Rabson
111c19800e8SDoug Rabson	* test_soft_pkcs11.c: use func for more C_ functions.
112c19800e8SDoug Rabson
113*ae771770SStanislav Sedov2008-01-18  Love Hörnquist Åstrand  <lha@it.su.se>
114c19800e8SDoug Rabson
115c19800e8SDoug Rabson	* version-script.map: Export hx509_free_error_string().
116c19800e8SDoug Rabson
117*ae771770SStanislav Sedov2008-01-17  Love Hörnquist Åstrand  <lha@it.su.se>
118c19800e8SDoug Rabson
119c19800e8SDoug Rabson	* version-script.map: only export C_GetFunctionList
120c19800e8SDoug Rabson
121c19800e8SDoug Rabson	* test_soft_pkcs11.c: use C_GetFunctionList
122c19800e8SDoug Rabson
123c19800e8SDoug Rabson	* softp11.c: fix comment, remove label.
124c19800e8SDoug Rabson
125c19800e8SDoug Rabson	* softp11.c: Add option app-fatal to control if softtoken should
126c19800e8SDoug Rabson	abort() on erroneous input from applications.
127c19800e8SDoug Rabson
128*ae771770SStanislav Sedov2008-01-16  Love Hörnquist Åstrand  <lha@it.su.se>
129c19800e8SDoug Rabson
130c19800e8SDoug Rabson	* test_pkcs11.in: Test password less certificates too
131c19800e8SDoug Rabson
132c19800e8SDoug Rabson	* keyset.c: document HX509_CERTS_UNPROTECT_ALL
133c19800e8SDoug Rabson
134c19800e8SDoug Rabson	* ks_file.c: Support HX509_CERTS_UNPROTECT_ALL.
135c19800e8SDoug Rabson
136c19800e8SDoug Rabson	* hx509.h: Add HX509_CERTS_UNPROTECT_ALL.
137c19800e8SDoug Rabson
138c19800e8SDoug Rabson	* test_soft_pkcs11.c: Only log in if needed.
139c19800e8SDoug Rabson
140*ae771770SStanislav Sedov2008-01-15  Love Hörnquist Åstrand  <lha@it.su.se>
141c19800e8SDoug Rabson
142c19800e8SDoug Rabson	* softp11.c: Support PINs to login to the store.
143c19800e8SDoug Rabson
144c19800e8SDoug Rabson	* Makefile.am: add java pkcs11 test
145c19800e8SDoug Rabson
146c19800e8SDoug Rabson	* test_java_pkcs11.in: first version of disable java test
147c19800e8SDoug Rabson
148c19800e8SDoug Rabson	* softp11.c: Drop unused stuff.
149c19800e8SDoug Rabson
150c19800e8SDoug Rabson	* cert.c: Spelling, Add hx509_cert_get_SPKI_AlgorithmIdentifier,
151c19800e8SDoug Rabson	remove unused stuff, add hx509_context to some functions.
152c19800e8SDoug Rabson
153c19800e8SDoug Rabson	* softp11.c: Add more glue to figure out what keytype this
154c19800e8SDoug Rabson	certificate is using.
155c19800e8SDoug Rabson
156*ae771770SStanislav Sedov2008-01-14  Love Hörnquist Åstrand  <lha@it.su.se>
157c19800e8SDoug Rabson
158c19800e8SDoug Rabson	* test_pkcs11.in: test debug
159c19800e8SDoug Rabson
160c19800e8SDoug Rabson	* Add a PKCS11 provider supporting signing and verifing sigatures.
161c19800e8SDoug Rabson
162*ae771770SStanislav Sedov2008-01-13  Love Hörnquist Åstrand  <lha@it.su.se>
163c19800e8SDoug Rabson
164c19800e8SDoug Rabson	* version-script.map: Replace hx509_name_to_der_name with
165c19800e8SDoug Rabson	hx509_name_binary.
166c19800e8SDoug Rabson
167c19800e8SDoug Rabson	* print.c: make print_func static
168c19800e8SDoug Rabson
169*ae771770SStanislav Sedov2007-12-26  Love Hörnquist Åstrand  <lha@it.su.se>
170c19800e8SDoug Rabson
171c19800e8SDoug Rabson	* print.c: doxygen
172c19800e8SDoug Rabson
173c19800e8SDoug Rabson	* env.c: doxygen
174c19800e8SDoug Rabson
175c19800e8SDoug Rabson	* doxygen.c: add more groups
176c19800e8SDoug Rabson
177c19800e8SDoug Rabson	* ca.c: doxygen.
178c19800e8SDoug Rabson
179*ae771770SStanislav Sedov2007-12-17  Love Hörnquist Åstrand  <lha@it.su.se>
180c19800e8SDoug Rabson
181c19800e8SDoug Rabson	* ca.c: doxygen
182c19800e8SDoug Rabson
183*ae771770SStanislav Sedov2007-12-16  Love Hörnquist Åstrand  <lha@it.su.se>
184c19800e8SDoug Rabson
185c19800e8SDoug Rabson	* error.c: doxygen
186c19800e8SDoug Rabson
187*ae771770SStanislav Sedov2007-12-15  Love Hörnquist Åstrand  <lha@it.su.se>
188c19800e8SDoug Rabson
189c19800e8SDoug Rabson	* More documentation
190c19800e8SDoug Rabson
191c19800e8SDoug Rabson	* lock.c: Add page referance
192c19800e8SDoug Rabson
193c19800e8SDoug Rabson	* keyset.c: some more documentation.
194c19800e8SDoug Rabson
195c19800e8SDoug Rabson	* cms.c: Doxygen documentation.
196c19800e8SDoug Rabson
197*ae771770SStanislav Sedov2007-12-11  Love Hörnquist Åstrand  <lha@it.su.se>
198c19800e8SDoug Rabson
199c19800e8SDoug Rabson	* *.[ch]: More documentation
200c19800e8SDoug Rabson
201*ae771770SStanislav Sedov2007-12-09  Love Hörnquist Åstrand  <lha@it.su.se>
202c19800e8SDoug Rabson
203c19800e8SDoug Rabson	* handle refcount on NULL.
204c19800e8SDoug Rabson
205c19800e8SDoug Rabson	* test_nist_pkcs12.in: drop echo -n, doesn't work with posix sh
206c19800e8SDoug Rabson
207*ae771770SStanislav Sedov2007-12-08  Love Hörnquist Åstrand  <lha@it.su.se>
208c19800e8SDoug Rabson
209c19800e8SDoug Rabson	* test_nist2.in: Print that this is version 2 of the tests
210c19800e8SDoug Rabson
211c19800e8SDoug Rabson	* test_nist.in: Drop printing of $id.
212c19800e8SDoug Rabson
213c19800e8SDoug Rabson	* hx509.h: Add HX509_VHN_F_ALLOW_NO_MATCH.
214c19800e8SDoug Rabson
215c19800e8SDoug Rabson	* name.c: spelling.
216c19800e8SDoug Rabson
217c19800e8SDoug Rabson	* cert.c: make work the doxygen.
218c19800e8SDoug Rabson
219c19800e8SDoug Rabson	* name.c: fix doxygen compiling.
220c19800e8SDoug Rabson
221c19800e8SDoug Rabson	* Makefile.am: add doxygen.c
222c19800e8SDoug Rabson
223c19800e8SDoug Rabson	* doxygen.c: Add doxygen main page.
224c19800e8SDoug Rabson
225c19800e8SDoug Rabson	* cert.c: Add doxygen.
226c19800e8SDoug Rabson
227c19800e8SDoug Rabson	* revoke.c (_hx509_revoke_ref): new function.
228c19800e8SDoug Rabson
229*ae771770SStanislav Sedov2007-11-16  Love Hörnquist Åstrand  <lha@it.su.se>
230c19800e8SDoug Rabson
231c19800e8SDoug Rabson	* ks_keychain.c: Check if SecKeyGetCSPHandle needs prototype.
232c19800e8SDoug Rabson
233*ae771770SStanislav Sedov2007-08-16  Love Hörnquist Åstrand  <lha@it.su.se>
234c19800e8SDoug Rabson
235c19800e8SDoug Rabson	* data/nist-data: Make work on case senstive filesystems too.
236c19800e8SDoug Rabson
237*ae771770SStanislav Sedov2007-08-09  Love Hörnquist Åstrand  <lha@it.su.se>
238c19800e8SDoug Rabson
239c19800e8SDoug Rabson	* cert.c: match rfc822 contrains better, provide better error
240c19800e8SDoug Rabson	strings.
241c19800e8SDoug Rabson
242*ae771770SStanislav Sedov2007-08-08  Love Hörnquist Åstrand  <lha@it.su.se>
243c19800e8SDoug Rabson
244c19800e8SDoug Rabson	* cert.c: "self-signed doesn't count" doesn't apply to trust
245c19800e8SDoug Rabson	anchor certificate.  make trust anchor check consistant.
246c19800e8SDoug Rabson
247c19800e8SDoug Rabson	* revoke.c: make compile.
248c19800e8SDoug Rabson
249c19800e8SDoug Rabson	* revoke.c (verify_crl): set error strings.
250c19800e8SDoug Rabson
251c19800e8SDoug Rabson	* revoke.c (verify_crl): handle with the signer is the
252c19800e8SDoug Rabson	CRLsigner (shortcut).
253c19800e8SDoug Rabson
254c19800e8SDoug Rabson	* cert.c: Fix NC, comment on how to use _hx509_check_key_usage.
255c19800e8SDoug Rabson
256*ae771770SStanislav Sedov2007-08-03  Love Hörnquist Åstrand  <lha@it.su.se>
257c19800e8SDoug Rabson
258c19800e8SDoug Rabson	* test_nist2.in, Makefile, test/nist*: Add nist pkits tests.
259c19800e8SDoug Rabson
260c19800e8SDoug Rabson	* revoke.c: Update to use CERT_REVOKED error, shortcut out of OCSP
261c19800e8SDoug Rabson	checking when OCSP reply is a revocation reply.
262c19800e8SDoug Rabson
263c19800e8SDoug Rabson	* hx509_err.et: Make CERT_REVOKED error OCSP/CRL agnostic.
264c19800e8SDoug Rabson
265c19800e8SDoug Rabson	* name.c (_hx509_Name_to_string): make printableString handle
266c19800e8SDoug Rabson	space (0x20) diffrences as required by rfc3280.
267c19800e8SDoug Rabson
268c19800e8SDoug Rabson	* revoke.c: Search for the right issuer when looking for the
269c19800e8SDoug Rabson	issuer of the CRL signer.
270c19800e8SDoug Rabson
271*ae771770SStanislav Sedov2007-08-02  Love Hörnquist Åstrand  <lha@it.su.se>
272c19800e8SDoug Rabson
273c19800e8SDoug Rabson	* revoke.c: Handle CRL signing certificate better, try to not
274c19800e8SDoug Rabson	revalidate invalid CRLs over and over.
275c19800e8SDoug Rabson
276*ae771770SStanislav Sedov2007-08-01  Love Hörnquist Åstrand  <lha@it.su.se>
277c19800e8SDoug Rabson
278c19800e8SDoug Rabson	* cms.c: remove stale comment.
279c19800e8SDoug Rabson
280c19800e8SDoug Rabson	* test_nist.in: Unpack PKITS_data.zip and run tests.
281c19800e8SDoug Rabson
282c19800e8SDoug Rabson	* test_nist_cert.in: Adapt to new nist pkits framework.
283c19800e8SDoug Rabson
284c19800e8SDoug Rabson	* test_nist_pkcs12.in: Adapt to new nist pkits framework.
285c19800e8SDoug Rabson
286c19800e8SDoug Rabson	* Makefile.am: clean PKITS_data
287c19800e8SDoug Rabson
288*ae771770SStanislav Sedov2007-07-16  Love Hörnquist Åstrand  <lha@it.su.se>
289c19800e8SDoug Rabson
290c19800e8SDoug Rabson	* Makefile.am: Add version-script.map to EXTRA_DIST
291c19800e8SDoug Rabson
292*ae771770SStanislav Sedov2007-07-12  Love Hörnquist Åstrand  <lha@it.su.se>
293c19800e8SDoug Rabson
294c19800e8SDoug Rabson	* Makefile.am: Add depenency on asn1_compile for asn1 built files.
295c19800e8SDoug Rabson
296*ae771770SStanislav Sedov2007-07-10  Love Hörnquist Åstrand  <lha@it.su.se>
297c19800e8SDoug Rabson
298c19800e8SDoug Rabson	* peer.c: update (c), indent.
299c19800e8SDoug Rabson
300c19800e8SDoug Rabson	* Makefile.am: New library version.
301c19800e8SDoug Rabson
302*ae771770SStanislav Sedov2007-06-28  Love Hörnquist Åstrand  <lha@it.su.se>
303c19800e8SDoug Rabson
304c19800e8SDoug Rabson	* ks_p11.c: Add sha2 types.
305c19800e8SDoug Rabson
306c19800e8SDoug Rabson	* ref/pkcs11.h: Sync with scute.
307c19800e8SDoug Rabson
308c19800e8SDoug Rabson	* ref/pkcs11.h: Add sha2 CKM's.
309c19800e8SDoug Rabson
310c19800e8SDoug Rabson	* print.c: Print authorityInfoAccess.
311c19800e8SDoug Rabson
312c19800e8SDoug Rabson	* cert.c: Rename proxyCertInfo oid.
313c19800e8SDoug Rabson
314c19800e8SDoug Rabson	* ca.c: Rename proxyCertInfo oid.
315c19800e8SDoug Rabson
316c19800e8SDoug Rabson	* print.c: Rename proxyCertInfo oid.
317c19800e8SDoug Rabson
318*ae771770SStanislav Sedov2007-06-26  Love Hörnquist Åstrand  <lha@it.su.se>
319c19800e8SDoug Rabson
320c19800e8SDoug Rabson	* test_ca.in: Adapt to new request handling.
321c19800e8SDoug Rabson
322c19800e8SDoug Rabson	* req.c: Allow export some of the request parameters.
323c19800e8SDoug Rabson
324c19800e8SDoug Rabson	* hxtool-commands.in: Adapt to new request handling.
325c19800e8SDoug Rabson
326c19800e8SDoug Rabson	* hxtool.c: Adapt to new request handling.
327c19800e8SDoug Rabson
328c19800e8SDoug Rabson	* test_req.in: Adapt to new request handling.
329c19800e8SDoug Rabson
330c19800e8SDoug Rabson	* version-script.map: Add initialize_hx_error_table_r.
331c19800e8SDoug Rabson
332c19800e8SDoug Rabson	* req.c: Move _hx509_request_print here.
333c19800e8SDoug Rabson
334c19800e8SDoug Rabson	* hxtool.c: use _hx509_request_print
335c19800e8SDoug Rabson
336c19800e8SDoug Rabson	* version-script.map: Export more crap^W semiprivate functions.
337c19800e8SDoug Rabson
338c19800e8SDoug Rabson	* hxtool.c: don't _hx509_abort
339c19800e8SDoug Rabson
340c19800e8SDoug Rabson	* version-script.map: add missing ;
341c19800e8SDoug Rabson
342*ae771770SStanislav Sedov2007-06-25  Love Hörnquist Åstrand  <lha@it.su.se>
343c19800e8SDoug Rabson
344c19800e8SDoug Rabson	* cms.c: Use hx509_crypto_random_iv.
345c19800e8SDoug Rabson
346c19800e8SDoug Rabson	* crypto.c: Split out the iv creation from hx509_crypto_encrypt
347c19800e8SDoug Rabson	since _hx509_pbe_encrypt needs to use the iv from the s2k
348c19800e8SDoug Rabson	function.
349c19800e8SDoug Rabson
350c19800e8SDoug Rabson	* test_cert.in: Test PEM and DER FILE writing functionallity.
351c19800e8SDoug Rabson
352c19800e8SDoug Rabson	* ks_file.c: Add writing DER certificates.
353c19800e8SDoug Rabson
354c19800e8SDoug Rabson	* hxtool.c: Update to new hx509_pem_write().
355c19800e8SDoug Rabson
356c19800e8SDoug Rabson	* test_cms.in: test creation of PEM signeddata.
357c19800e8SDoug Rabson
358c19800e8SDoug Rabson	* hx509.h: PEM struct/function declarations.
359c19800e8SDoug Rabson
360c19800e8SDoug Rabson	* ks_file.c: Use PEM encoding/decoding functions.
361c19800e8SDoug Rabson
362c19800e8SDoug Rabson	* file.c: PEM encode/decoding functions.
363c19800e8SDoug Rabson
364c19800e8SDoug Rabson	* ks_file.c: Use hx509_pem_write.
365c19800e8SDoug Rabson
366c19800e8SDoug Rabson	* version-script.map: Export some semi-private functions.
367c19800e8SDoug Rabson
368c19800e8SDoug Rabson	* hxtool.c: Enable writing out signed data as a pem attachment.
369c19800e8SDoug Rabson
370c19800e8SDoug Rabson	* hxtool-commands.in (cms-create-signed): add --pem
371c19800e8SDoug Rabson
372c19800e8SDoug Rabson	* file.c (hx509_pem_write): Add.
373c19800e8SDoug Rabson
374c19800e8SDoug Rabson	* test_ca.in: Issue and test null subject cert.
375c19800e8SDoug Rabson
376c19800e8SDoug Rabson	* cert.c: Match is first component is in a CN=.
377c19800e8SDoug Rabson
378c19800e8SDoug Rabson	* test_ca.in: Test hostname if first CN.
379c19800e8SDoug Rabson
380c19800e8SDoug Rabson	* Makefile.am: Add version script.
381c19800e8SDoug Rabson
382c19800e8SDoug Rabson	* version-script.map: Limited exported symbols.
383c19800e8SDoug Rabson
384c19800e8SDoug Rabson	* test_ca.in: test --hostname.
385c19800e8SDoug Rabson
386c19800e8SDoug Rabson	* test_chain.in: test max-depth
387c19800e8SDoug Rabson
388c19800e8SDoug Rabson	* hx509.h: fixate HX509_HN_HOSTNAME at 0.
389c19800e8SDoug Rabson
390c19800e8SDoug Rabson	* hxtool-commands.in: add --hostname add --max-depth
391c19800e8SDoug Rabson
392c19800e8SDoug Rabson	* cert.c: Verify hostname and max-depth.
393c19800e8SDoug Rabson
394c19800e8SDoug Rabson	* hxtool.c: Verify hostname and test max-depth.
395c19800e8SDoug Rabson
396*ae771770SStanislav Sedov2007-06-24  Love Hörnquist Åstrand  <lha@it.su.se>
397c19800e8SDoug Rabson
398c19800e8SDoug Rabson	* test_cms.in: Test --id-by-name.
399c19800e8SDoug Rabson
400c19800e8SDoug Rabson	* hxtool-commands.in: add cms-create-sd --id-by-name
401c19800e8SDoug Rabson
402c19800e8SDoug Rabson	* hxtool.c: Use HX509_CMS_SIGATURE_ID_NAME.
403c19800e8SDoug Rabson
404c19800e8SDoug Rabson	* cms.c: Implement and use HX509_CMS_SIGATURE_ID_NAME.
405c19800e8SDoug Rabson
406c19800e8SDoug Rabson	* hx509.h: Add HX509_CMS_SIGATURE_ID_NAME, use subject name for
407c19800e8SDoug Rabson	CMS.Identifier.  hx509_hostname_type: add hostname type for
408c19800e8SDoug Rabson	matching.
409c19800e8SDoug Rabson
410c19800e8SDoug Rabson	* cert.c (match_general_name): more strict rfc822Name matching.
411c19800e8SDoug Rabson	(hx509_verify_hostname): add hostname type for matching.
412c19800e8SDoug Rabson
413*ae771770SStanislav Sedov2007-06-19  Love Hörnquist Åstrand  <lha@it.su.se>
414c19800e8SDoug Rabson
415c19800e8SDoug Rabson	* hxtool.c: Make compile again.
416c19800e8SDoug Rabson
417c19800e8SDoug Rabson	* hxtool.c: Added peap-server for to make windows peap clients
418c19800e8SDoug Rabson	happy.
419c19800e8SDoug Rabson
420c19800e8SDoug Rabson	* hxtool.c: Unify parse_oid code.
421c19800e8SDoug Rabson
422c19800e8SDoug Rabson	* hxtool.c: Implement --content-type.
423c19800e8SDoug Rabson
424c19800e8SDoug Rabson	* hxtool-commands.in: Add content-type.
425c19800e8SDoug Rabson
426c19800e8SDoug Rabson	* test_cert.in: more cert and keyset tests.
427c19800e8SDoug Rabson
428*ae771770SStanislav Sedov2007-06-18  Love Hörnquist Åstrand  <lha@it.su.se>
429c19800e8SDoug Rabson
430c19800e8SDoug Rabson	* revoke.c: Avoid stomping on NULL.
431c19800e8SDoug Rabson
432c19800e8SDoug Rabson	* revoke.c: Avoid reusing i.
433c19800e8SDoug Rabson
434c19800e8SDoug Rabson	* cert.c: Provide __attribute__ for _hx509_abort.
435c19800e8SDoug Rabson
436c19800e8SDoug Rabson	* ks_file.c: Fail if not finding iv.
437c19800e8SDoug Rabson
438c19800e8SDoug Rabson	* keyset.c: Avoid useing freed memory.
439c19800e8SDoug Rabson
440c19800e8SDoug Rabson	* crypto.c: Free memory in failure case.
441c19800e8SDoug Rabson
442c19800e8SDoug Rabson	* crypto.c: Free memory in failure case.
443c19800e8SDoug Rabson
444*ae771770SStanislav Sedov2007-06-12  Love Hörnquist Åstrand  <lha@it.su.se>
445c19800e8SDoug Rabson
446c19800e8SDoug Rabson	* *.c: Add hx509_cert_init_data and use everywhere
447c19800e8SDoug Rabson
448c19800e8SDoug Rabson	* hx_locl.h: Now that KEYCHAIN:system-anchors is fast again, use
449c19800e8SDoug Rabson	that.
450c19800e8SDoug Rabson
451c19800e8SDoug Rabson	* ks_keychain.c: Implement trust anchor support with
452c19800e8SDoug Rabson	SecTrustCopyAnchorCertificates.
453c19800e8SDoug Rabson
454c19800e8SDoug Rabson	* keyset.c: Set ref to 1 for the new object.
455c19800e8SDoug Rabson
456c19800e8SDoug Rabson	* cert.c: Fix logic for allow_default_trust_anchors
457c19800e8SDoug Rabson
458c19800e8SDoug Rabson	* keyset.c: Add refcounting to keystores.
459c19800e8SDoug Rabson
460c19800e8SDoug Rabson	* cert.c: Change logic for default trust anchors, make it be
461c19800e8SDoug Rabson	either default trust anchor, the user supplied, or non at all.
462c19800e8SDoug Rabson
463*ae771770SStanislav Sedov2007-06-08  Love Hörnquist Åstrand  <lha@it.su.se>
464c19800e8SDoug Rabson
465c19800e8SDoug Rabson	* Makefile.am: Add data/j.pem.
466c19800e8SDoug Rabson
467c19800e8SDoug Rabson	* Makefile.am: Add test_windows.in.
468c19800e8SDoug Rabson
469*ae771770SStanislav Sedov2007-06-06  Love Hörnquist Åstrand  <lha@it.su.se>
470c19800e8SDoug Rabson
471c19800e8SDoug Rabson	* ks_keychain.c: rename functions, leaks less memory and more
472c19800e8SDoug Rabson	paranoia.
473c19800e8SDoug Rabson
474c19800e8SDoug Rabson	* test_cms.in: Test cms peer-alg.
475c19800e8SDoug Rabson
476c19800e8SDoug Rabson	* crypto.c (rsa_create_signature): make oid_id_pkcs1_rsaEncryption
477c19800e8SDoug Rabson	mean rsa-with-sha1 but oid oid_id_pkcs1_rsaEncryption in algorithm
478c19800e8SDoug Rabson	field.  XXX should probably use another algorithmIdentifier for
479c19800e8SDoug Rabson	this.
480c19800e8SDoug Rabson
481c19800e8SDoug Rabson	* peer.c: Make free function return void.
482c19800e8SDoug Rabson
483c19800e8SDoug Rabson	* cms.c (hx509_cms_create_signed_1): Use hx509_peer_info to select
484c19800e8SDoug Rabson	the signature algorithm too.
485c19800e8SDoug Rabson
486c19800e8SDoug Rabson	* hxtool-commands.in: Add cms-create-sd --peer-alg.
487c19800e8SDoug Rabson
488c19800e8SDoug Rabson	* req.c: Use _hx509_crypto_default_sig_alg.
489c19800e8SDoug Rabson
490c19800e8SDoug Rabson	* test_windows.in: Create crl, because everyone needs one.
491c19800e8SDoug Rabson
492c19800e8SDoug Rabson	* Makefile.am: add wcrl.crl
493c19800e8SDoug Rabson
494*ae771770SStanislav Sedov2007-06-05  Love Hörnquist Åstrand  <lha@it.su.se>
495c19800e8SDoug Rabson
496c19800e8SDoug Rabson	* hx_locl.h: Disable KEYCHAIN for now, its slow.
497c19800e8SDoug Rabson
498c19800e8SDoug Rabson	* cms.c: When we are not using pkcs7-data, avoid seing
499c19800e8SDoug Rabson	signedAttributes since some clients get upset by that (pkcs7 based
500c19800e8SDoug Rabson	or just plain broken).
501c19800e8SDoug Rabson
502c19800e8SDoug Rabson	* ks_keychain.c: Provide rsa signatures.
503c19800e8SDoug Rabson
504c19800e8SDoug Rabson	* ks_keychain.c: Limit the searches to the selected keychain.
505c19800e8SDoug Rabson
506c19800e8SDoug Rabson	* ks_keychain.c: include -framework Security specific header files
507c19800e8SDoug Rabson	after #ifdef
508c19800e8SDoug Rabson
509c19800e8SDoug Rabson	* ks_keychain.c: Find and attach private key (does not provide
510c19800e8SDoug Rabson	operations yet though).
511c19800e8SDoug Rabson
512c19800e8SDoug Rabson	* ks_p11.c: Prefix rsa method with p11_
513c19800e8SDoug Rabson
514c19800e8SDoug Rabson	* ks_keychain.c: Allow opening a specific chain, making "system"
515c19800e8SDoug Rabson	special and be the system X509Anchors file. By not specifing any
516c19800e8SDoug Rabson	keychain ("KEYCHAIN:"), all keychains are probed.
517c19800e8SDoug Rabson
518*ae771770SStanislav Sedov2007-06-04  Love Hörnquist Åstrand  <lha@it.su.se>
519c19800e8SDoug Rabson
520c19800e8SDoug Rabson	* hxtool.c (verify): Friendlier error message.
521c19800e8SDoug Rabson
522c19800e8SDoug Rabson	* cert.c: Read in and use default trust anchors if they exists.
523c19800e8SDoug Rabson
524c19800e8SDoug Rabson	* hx_locl.h: Add concept of default_trust_anchors.
525c19800e8SDoug Rabson
526c19800e8SDoug Rabson	* ks_keychain.c: Remove err(), remove extra empty comment, fix
527c19800e8SDoug Rabson	_iter function.
528c19800e8SDoug Rabson
529c19800e8SDoug Rabson	* error.c (hx509_get_error_string): if the error code is not the
530c19800e8SDoug Rabson	one we expect, punt and use the default com_err/strerror string
531c19800e8SDoug Rabson	instead.
532c19800e8SDoug Rabson
533c19800e8SDoug Rabson	* keyset.c (hx509_certs_merge): its ok to merge in the NULL set of
534c19800e8SDoug Rabson	certs.
535c19800e8SDoug Rabson
536c19800e8SDoug Rabson	* test_windows.in: Fix status string.
537c19800e8SDoug Rabson
538c19800e8SDoug Rabson	* ks_p12.c (store_func): free whole CertBag, not just the data
539c19800e8SDoug Rabson	part.
540c19800e8SDoug Rabson
541c19800e8SDoug Rabson	* print.c: Check that the self-signed cert is really self-signed.
542c19800e8SDoug Rabson
543c19800e8SDoug Rabson	* print.c: Use selfsigned for CRL DP whine, tell if its a
544c19800e8SDoug Rabson	self-signed.
545c19800e8SDoug Rabson
546c19800e8SDoug Rabson	* print.c: Whine if its a non CA/proxy and doesn't have CRL DP.
547c19800e8SDoug Rabson
548c19800e8SDoug Rabson	* ca.c: Add cRLSign to CA certs.
549c19800e8SDoug Rabson
550c19800e8SDoug Rabson	* cert.c: Register NULL and KEYCHAIN.
551c19800e8SDoug Rabson
552c19800e8SDoug Rabson	* ks_null.c: register the NULL keystore.
553c19800e8SDoug Rabson
554c19800e8SDoug Rabson	* Makefile.am: Add ks_keychain.c and related libs.
555c19800e8SDoug Rabson
556c19800e8SDoug Rabson	* test_crypto.in: Print certificate with utf8.
557c19800e8SDoug Rabson
558c19800e8SDoug Rabson	* print.c: Leak less memory.
559c19800e8SDoug Rabson
560c19800e8SDoug Rabson	* hxtool.c: Leak less memory.
561c19800e8SDoug Rabson
562c19800e8SDoug Rabson	* print.c: Leak less memory, use functions that does same but
563c19800e8SDoug Rabson	more.
564c19800e8SDoug Rabson
565c19800e8SDoug Rabson	* name.c (quote_string): don't sign extend the (signed) char to
566c19800e8SDoug Rabson	avoid printing too much, add an assert to check that we didn't
567c19800e8SDoug Rabson	overrun the buffer.
568c19800e8SDoug Rabson
569c19800e8SDoug Rabson	* name.c: Use right element out of the CHOICE for printableString
570c19800e8SDoug Rabson	and utf8String
571c19800e8SDoug Rabson
572c19800e8SDoug Rabson	* ks_keychain.c: Certificate only KeyChain backend.
573c19800e8SDoug Rabson
574c19800e8SDoug Rabson	* name.c: Reset name before parsing it.
575c19800e8SDoug Rabson
576*ae771770SStanislav Sedov2007-06-03  Love Hörnquist Åstrand  <lha@it.su.se>
577c19800e8SDoug Rabson
578c19800e8SDoug Rabson	* revoke.c (hx509_crl_*): fix sizeof() mistakes to fix memory
579c19800e8SDoug Rabson	corruption.
580c19800e8SDoug Rabson
581c19800e8SDoug Rabson	* hxtool.c: Add lifetime to crls.
582c19800e8SDoug Rabson
583c19800e8SDoug Rabson	* hxtool-commands.in: Add lifetime to crls.
584c19800e8SDoug Rabson
585c19800e8SDoug Rabson	* revoke.c: Add lifetime to crls.
586c19800e8SDoug Rabson
587c19800e8SDoug Rabson	* test_ca.in: More crl checks.
588c19800e8SDoug Rabson
589c19800e8SDoug Rabson	* revoke.c: Add revoking certs.
590c19800e8SDoug Rabson
591c19800e8SDoug Rabson	* hxtool-commands.in: argument is certificates.. for crl-sign
592c19800e8SDoug Rabson
593c19800e8SDoug Rabson	* hxtool.c (certificate_copy): free lock
594c19800e8SDoug Rabson
595c19800e8SDoug Rabson	* revoke.c: Fix hx509_set_error_string calls, add
596c19800e8SDoug Rabson	hx509_crl_add_revoked_certs(), implement hx509_crl_{alloc,free}.
597c19800e8SDoug Rabson
598c19800e8SDoug Rabson	* hxtool.c (crl_sign): free lock
599c19800e8SDoug Rabson
600c19800e8SDoug Rabson	* cert.c (hx509_context_free): free querystat
601c19800e8SDoug Rabson
602*ae771770SStanislav Sedov2007-06-02  Love Hörnquist Åstrand  <lha@it.su.se>
603c19800e8SDoug Rabson
604c19800e8SDoug Rabson	* test_chain.in: test ocsp-verify
605c19800e8SDoug Rabson
606c19800e8SDoug Rabson	* revoke.c (hx509_ocsp_verify): explain what its useful for and
607c19800e8SDoug Rabson	provide sane error message.
608c19800e8SDoug Rabson
609c19800e8SDoug Rabson	* hx509_err.et: New error code, CERT_NOT_IN_OCSP
610c19800e8SDoug Rabson
611c19800e8SDoug Rabson	* hxtool.c: New command ocsp-verify, check if ocsp contains all
612c19800e8SDoug Rabson	certs and are valid (exist and non expired).
613c19800e8SDoug Rabson
614c19800e8SDoug Rabson	* hxtool-commands.in: New command ocsp-verify.
615c19800e8SDoug Rabson
616*ae771770SStanislav Sedov2007-06-01  Love Hörnquist Åstrand  <lha@it.su.se>
617c19800e8SDoug Rabson
618c19800e8SDoug Rabson	* test_ca.in: Create crl and verify that is works.
619c19800e8SDoug Rabson
620c19800e8SDoug Rabson	* hxtool.c: Sign CRL command.
621c19800e8SDoug Rabson
622c19800e8SDoug Rabson	* hx509.h: Add hx509_crl.
623c19800e8SDoug Rabson
624c19800e8SDoug Rabson	* hxtool-commands.in: Add crl-sign commands.
625c19800e8SDoug Rabson
626c19800e8SDoug Rabson	* revoke.c: Support to generate an empty CRL.
627c19800e8SDoug Rabson
628c19800e8SDoug Rabson	* tst-crypto-select2: Switched default types.
629c19800e8SDoug Rabson
630c19800e8SDoug Rabson	* tst-crypto-select1: Switched default types.
631c19800e8SDoug Rabson
632c19800e8SDoug Rabson	* ca.c: Use default AlgorithmIdentifier.
633c19800e8SDoug Rabson
634c19800e8SDoug Rabson	* cms.c: Use default AlgorithmIdentifier.
635c19800e8SDoug Rabson
636c19800e8SDoug Rabson	* crypto.c: Provide default AlgorithmIdentifier and use them.
637c19800e8SDoug Rabson
638c19800e8SDoug Rabson	* hx_locl.h: Provide default AlgorithmIdentifier.
639c19800e8SDoug Rabson
640c19800e8SDoug Rabson	* keyset.c (hx509_certs_find): collects stats for queries.
641c19800e8SDoug Rabson
642c19800e8SDoug Rabson	* cert.c: Sort and print more info.
643c19800e8SDoug Rabson
644c19800e8SDoug Rabson	* hx_locl.h: Add querystat to hx509_context.
645c19800e8SDoug Rabson
646c19800e8SDoug Rabson	* test_*.in: sprinle stat saveing
647c19800e8SDoug Rabson
648c19800e8SDoug Rabson	* Makefile.am: Add stat and objdir.
649c19800e8SDoug Rabson
650c19800e8SDoug Rabson	* collector.c (_hx509_collector_alloc): return error code instead
651c19800e8SDoug Rabson	of pointer.
652c19800e8SDoug Rabson
653c19800e8SDoug Rabson	* hxtool.c: Add statistic hook.
654c19800e8SDoug Rabson
655c19800e8SDoug Rabson	* ks_file.c: Update _hx509_collector_alloc prototype.
656c19800e8SDoug Rabson
657c19800e8SDoug Rabson	* ks_p12.c: Update _hx509_collector_alloc prototype.
658c19800e8SDoug Rabson
659c19800e8SDoug Rabson	* ks_p11.c: Update _hx509_collector_alloc prototype.
660c19800e8SDoug Rabson
661c19800e8SDoug Rabson	* hxtool-commands.in: Add statistics hook.
662c19800e8SDoug Rabson
663c19800e8SDoug Rabson	* cert.c: Statistics printing.
664c19800e8SDoug Rabson
665c19800e8SDoug Rabson	* ks_p12.c: plug memory leak
666c19800e8SDoug Rabson
667c19800e8SDoug Rabson	* ca.c (hx509_ca_tbs_add_crl_dp_uri): plug memory leak
668c19800e8SDoug Rabson
669*ae771770SStanislav Sedov2007-05-31  Love Hörnquist Åstrand  <lha@it.su.se>
670c19800e8SDoug Rabson
671c19800e8SDoug Rabson	* print.c: print utf8 type SAN's
672c19800e8SDoug Rabson
673c19800e8SDoug Rabson	* Makefile.am: Fix windows client cert name.
674c19800e8SDoug Rabson
675c19800e8SDoug Rabson	* test_windows.in: Add crl-uri for the ee certs.
676c19800e8SDoug Rabson
677c19800e8SDoug Rabson	* print.c: Printf formating.
678c19800e8SDoug Rabson
679c19800e8SDoug Rabson	* ca.c: Add glue for adding CRL dps.
680c19800e8SDoug Rabson
681c19800e8SDoug Rabson	* test_ca.in: Readd the crl adding code, it works (somewhat) now.
682c19800e8SDoug Rabson
683c19800e8SDoug Rabson	* print.c: Fix printing of CRL DPnames (I hate IMPLICIT encoded
684c19800e8SDoug Rabson	structures).
685c19800e8SDoug Rabson
686c19800e8SDoug Rabson	* hxtool-commands.in: make ca and alias of certificate-sign
687c19800e8SDoug Rabson
688*ae771770SStanislav Sedov2007-05-30  Love Hörnquist Åstrand  <lha@it.su.se>
689c19800e8SDoug Rabson
690c19800e8SDoug Rabson	* crypto.c (hx509_crypto_select): copy AI to the right place.
691c19800e8SDoug Rabson
692c19800e8SDoug Rabson	* hxtool-commands.in: Add ca --ms-upn.
693c19800e8SDoug Rabson
694c19800e8SDoug Rabson	* hxtool.c: add --ms-upn and add more EKU's for pk-init client.
695c19800e8SDoug Rabson
696c19800e8SDoug Rabson	* ca.c: Add hx509_ca_tbs_add_san_ms_upn and refactor code.
697c19800e8SDoug Rabson
698c19800e8SDoug Rabson	* test_crypto.in: Resurect killed e.
699c19800e8SDoug Rabson
700c19800e8SDoug Rabson	* test_crypto.in: check for aes256-cbc
701c19800e8SDoug Rabson
702c19800e8SDoug Rabson	* tst-crypto-select7: check for aes256-cbc
703c19800e8SDoug Rabson
704c19800e8SDoug Rabson	* test_windows.in: test windows stuff
705c19800e8SDoug Rabson
706c19800e8SDoug Rabson	* hxtool.c: add ca --domain-controller option, add secret key
707c19800e8SDoug Rabson	option to avaible.
708c19800e8SDoug Rabson
709c19800e8SDoug Rabson	* ca.c: Add hx509_ca_tbs_set_domaincontroller.
710c19800e8SDoug Rabson
711c19800e8SDoug Rabson	* hxtool-commands.in: add ca --domain-controller
712c19800e8SDoug Rabson
713c19800e8SDoug Rabson	* hxtool.c: hook for testing secrety key algs
714c19800e8SDoug Rabson
715c19800e8SDoug Rabson	* crypto.c: Add selection code for secret key crypto.
716c19800e8SDoug Rabson
717c19800e8SDoug Rabson	* hx509.h: Add HX509_SELECT_SECRET_ENC.
718c19800e8SDoug Rabson
719*ae771770SStanislav Sedov2007-05-13  Love Hörnquist Åstrand  <lha@it.su.se>
720c19800e8SDoug Rabson
721c19800e8SDoug Rabson	* ks_p11.c: add more mechtypes
722c19800e8SDoug Rabson
723*ae771770SStanislav Sedov2007-05-10  Love Hörnquist Åstrand  <lha@it.su.se>
724c19800e8SDoug Rabson
725c19800e8SDoug Rabson	* print.c: Indent.
726c19800e8SDoug Rabson
727c19800e8SDoug Rabson	* hxtool-commands.in: add test-crypto command
728c19800e8SDoug Rabson
729c19800e8SDoug Rabson	* hxtool.c: test crypto command
730c19800e8SDoug Rabson
731c19800e8SDoug Rabson	* cms.c (hx509_cms_create_signed_1): if no eContentType is given,
732c19800e8SDoug Rabson	use pkcs7-data.
733c19800e8SDoug Rabson
734c19800e8SDoug Rabson	* print.c: add Netscape cert comment
735c19800e8SDoug Rabson
736c19800e8SDoug Rabson	* crypto.c: Try both the empty password and the NULL
737c19800e8SDoug Rabson	password (nothing vs the octet string \x00\x00).
738c19800e8SDoug Rabson
739c19800e8SDoug Rabson	* print.c: Add some US Fed PKI oids.
740c19800e8SDoug Rabson
741c19800e8SDoug Rabson	* ks_p11.c: Add some more hashes.
742c19800e8SDoug Rabson
743*ae771770SStanislav Sedov2007-04-24  Love Hörnquist Åstrand  <lha@it.su.se>
744c19800e8SDoug Rabson
745c19800e8SDoug Rabson	* hxtool.c (crypto_select): stop memory leak
746c19800e8SDoug Rabson
747*ae771770SStanislav Sedov2007-04-19  Love Hörnquist Åstrand  <lha@it.su.se>
748c19800e8SDoug Rabson
749c19800e8SDoug Rabson	* peer.c (hx509_peer_info_free): free memory used too
750c19800e8SDoug Rabson
751c19800e8SDoug Rabson	* hxtool.c (crypto_select): only free peer if it was used.
752c19800e8SDoug Rabson
753*ae771770SStanislav Sedov2007-04-18  Love Hörnquist Åstrand  <lha@it.su.se>
754c19800e8SDoug Rabson
755c19800e8SDoug Rabson	* hxtool.c: free template
756c19800e8SDoug Rabson
757c19800e8SDoug Rabson	* ks_mem.c (mem_free): free key array too
758c19800e8SDoug Rabson
759c19800e8SDoug Rabson	* hxtool.c: free private key and tbs
760c19800e8SDoug Rabson
761c19800e8SDoug Rabson	* hxtool.c (hxtool_ca): free signer
762c19800e8SDoug Rabson
763c19800e8SDoug Rabson	* hxtool.c (crypto_available): free peer too.
764c19800e8SDoug Rabson
765c19800e8SDoug Rabson	* ca.c (get_AuthorityKeyIdentifier): leak less memory
766c19800e8SDoug Rabson
767c19800e8SDoug Rabson	* hxtool.c (hxtool_ca): free SPKI
768c19800e8SDoug Rabson
769c19800e8SDoug Rabson	* hxtool.c (hxtool_ca): free cert
770c19800e8SDoug Rabson
771c19800e8SDoug Rabson	* ks_mem.c (mem_getkeys): allocate one more the we have elements
772c19800e8SDoug Rabson	so its possible to store the NULL pointer at the end.
773c19800e8SDoug Rabson
774*ae771770SStanislav Sedov2007-04-16  Love Hörnquist Åstrand  <lha@it.su.se>
775c19800e8SDoug Rabson
776c19800e8SDoug Rabson	* Makefile.am: CLEANFILES += cert-null.pem cert-sub-ca2.pem
777c19800e8SDoug Rabson
778*ae771770SStanislav Sedov2007-02-05  Love Hörnquist Åstrand  <lha@it.su.se>
779c19800e8SDoug Rabson
780c19800e8SDoug Rabson	* ca.c: Disable CRLDistributionPoints for now, its IMPLICIT code
781c19800e8SDoug Rabson	in the asn1 parser.
782c19800e8SDoug Rabson
783c19800e8SDoug Rabson	* print.c: Add some more \n's.
784c19800e8SDoug Rabson
785*ae771770SStanislav Sedov2007-02-03  Love Hörnquist Åstrand  <lha@it.su.se>
786c19800e8SDoug Rabson
787c19800e8SDoug Rabson	* file.c: Allow mapping using heim_octet_string.
788c19800e8SDoug Rabson
789c19800e8SDoug Rabson	* hxtool.c: Add options to generate detached signatures.
790c19800e8SDoug Rabson
791c19800e8SDoug Rabson	* cms.c: Add flags to generate detached signatures.
792c19800e8SDoug Rabson
793c19800e8SDoug Rabson	* hx509.h: Flag to generate detached signatures.
794c19800e8SDoug Rabson
795c19800e8SDoug Rabson	* test_cms.in: Support detached sigatures.
796c19800e8SDoug Rabson
797c19800e8SDoug Rabson	* name.c (hx509_general_name_unparse): unparse the other
798c19800e8SDoug Rabson	GeneralName nametypes.
799c19800e8SDoug Rabson
800c19800e8SDoug Rabson	* print.c: Use less printf. Use hx509_general_name_unparse.
801c19800e8SDoug Rabson
802c19800e8SDoug Rabson	* cert.c: Fix printing and plug leak-on-error.
803c19800e8SDoug Rabson
804*ae771770SStanislav Sedov2007-01-31  Love Hörnquist Åstrand  <lha@it.su.se>
805c19800e8SDoug Rabson
806c19800e8SDoug Rabson	* test_ca.in: Add test for ca --crl-uri.
807c19800e8SDoug Rabson
808c19800e8SDoug Rabson	* hxtool.c: Add ca --crl-uri.
809c19800e8SDoug Rabson
810c19800e8SDoug Rabson	* hxtool-commands.in: add ca --crl-uri
811c19800e8SDoug Rabson
812c19800e8SDoug Rabson	* ca.c: Code to set CRLDistributionPoints in certificates.
813c19800e8SDoug Rabson
814c19800e8SDoug Rabson	* print.c: Check CRLDistributionPointNames.
815c19800e8SDoug Rabson
816c19800e8SDoug Rabson	* name.c (hx509_general_name_unparse): function for unparsing
817c19800e8SDoug Rabson	GeneralName, only supports GeneralName.URI
818c19800e8SDoug Rabson
819c19800e8SDoug Rabson	* cert.c (is_proxy_cert): free info if we wont return it.
820c19800e8SDoug Rabson
821*ae771770SStanislav Sedov2007-01-30  Love Hörnquist Åstrand  <lha@it.su.se>
822c19800e8SDoug Rabson
823c19800e8SDoug Rabson	* hxtool.c: Try to help how to use this command.
824c19800e8SDoug Rabson
825*ae771770SStanislav Sedov2007-01-21  Love Hörnquist Åstrand  <lha@it.su.se>
826c19800e8SDoug Rabson
827c19800e8SDoug Rabson	* switch to sha256 as default digest for signing
828c19800e8SDoug Rabson
829*ae771770SStanislav Sedov2007-01-20  Love Hörnquist Åstrand  <lha@it.su.se>
830c19800e8SDoug Rabson
831c19800e8SDoug Rabson	* test_ca.in: Really test sub-ca code, add basic constraints tests
832c19800e8SDoug Rabson
833*ae771770SStanislav Sedov2007-01-17  Love Hörnquist Åstrand  <lha@it.su.se>
834c19800e8SDoug Rabson
835c19800e8SDoug Rabson	* Makefile.am: Fix makefile problem.
836c19800e8SDoug Rabson
837*ae771770SStanislav Sedov2007-01-16  Love Hörnquist Åstrand  <lha@it.su.se>
838c19800e8SDoug Rabson
839c19800e8SDoug Rabson	* hxtool.c: Set num of bits before we generate the key.
840c19800e8SDoug Rabson
841*ae771770SStanislav Sedov2007-01-15  Love Hörnquist Åstrand  <lha@it.su.se>
842c19800e8SDoug Rabson
843c19800e8SDoug Rabson	* cms.c (hx509_cms_create_signed_1): use hx509_cert_binary
844c19800e8SDoug Rabson
845c19800e8SDoug Rabson	* ks_p12.c (store_func): use hx509_cert_binary
846c19800e8SDoug Rabson
847c19800e8SDoug Rabson	* ks_file.c (store_func): use hx509_cert_binary
848c19800e8SDoug Rabson
849c19800e8SDoug Rabson	* cert.c (hx509_cert_binary): return binary encoded
850c19800e8SDoug Rabson	certificate (DER format)
851c19800e8SDoug Rabson
852*ae771770SStanislav Sedov2007-01-14  Love Hörnquist Åstrand  <lha@it.su.se>
853c19800e8SDoug Rabson
854c19800e8SDoug Rabson	* ca.c (hx509_ca_tbs_subject_expand): new function.
855c19800e8SDoug Rabson
856c19800e8SDoug Rabson	* name.c (hx509_name_expand): if env is NULL, return directly
857c19800e8SDoug Rabson
858c19800e8SDoug Rabson	* test_ca.in: test template handling
859c19800e8SDoug Rabson
860c19800e8SDoug Rabson	* hx509.h: Add template flags.
861c19800e8SDoug Rabson
862c19800e8SDoug Rabson	* Makefile.am: clean out new files
863c19800e8SDoug Rabson
864c19800e8SDoug Rabson	* hxtool.c: Add certificate template processing, fix hx509_err
865c19800e8SDoug Rabson	usage.
866c19800e8SDoug Rabson
867c19800e8SDoug Rabson	* hxtool-commands.in: Add certificate template processing.
868c19800e8SDoug Rabson
869c19800e8SDoug Rabson	* ca.c: Add certificate template processing. Fix return messages
870c19800e8SDoug Rabson	from hx509_ca_tbs_add_eku.
871c19800e8SDoug Rabson
872c19800e8SDoug Rabson	* cert.c: Export more stuff from certificate.
873c19800e8SDoug Rabson
874*ae771770SStanislav Sedov2007-01-13  Love Hörnquist Åstrand  <lha@it.su.se>
875c19800e8SDoug Rabson
876c19800e8SDoug Rabson	* ca.c: update (c)
877c19800e8SDoug Rabson
878c19800e8SDoug Rabson	* ca.c: (hx509_ca_tbs_add_eku): filter out dups.
879c19800e8SDoug Rabson
880c19800e8SDoug Rabson	* hxtool.c: Add type email and add email eku when using option
881c19800e8SDoug Rabson	--email.
882c19800e8SDoug Rabson
883c19800e8SDoug Rabson	* Makefile.am: add env.c
884c19800e8SDoug Rabson
885c19800e8SDoug Rabson	* name.c: Remove abort, add error handling.
886c19800e8SDoug Rabson
887c19800e8SDoug Rabson	* test_name.c: test name expansion
888c19800e8SDoug Rabson
889c19800e8SDoug Rabson	* name.c: add hx509_name_expand
890c19800e8SDoug Rabson
891c19800e8SDoug Rabson	* env.c: key-value pair help functions
892c19800e8SDoug Rabson
893*ae771770SStanislav Sedov2007-01-12  Love Hörnquist Åstrand  <lha@it.su.se>
894c19800e8SDoug Rabson
895c19800e8SDoug Rabson	* ca.c: Don't issue certs with subject DN that is NULL and have no
896c19800e8SDoug Rabson	SANs
897c19800e8SDoug Rabson
898c19800e8SDoug Rabson	* print.c: Fix previous test.
899c19800e8SDoug Rabson
900c19800e8SDoug Rabson	* print.c: Check there is a SAN if subject DN is NULL.
901c19800e8SDoug Rabson
902c19800e8SDoug Rabson	* test_ca.in: test email, null subject dn
903c19800e8SDoug Rabson
904c19800e8SDoug Rabson	* hxtool.c: Allow setting parameters to private key generation.
905c19800e8SDoug Rabson
906c19800e8SDoug Rabson	* hx_locl.h: Allow setting parameters to private key generation.
907c19800e8SDoug Rabson
908c19800e8SDoug Rabson	* crypto.c: Allow setting parameters to private key generation.
909c19800e8SDoug Rabson
910c19800e8SDoug Rabson	* hxtool.c (eval_types): add jid if user gave one
911c19800e8SDoug Rabson
912c19800e8SDoug Rabson	* hxtool-commands.in (certificate-sign): add --jid
913c19800e8SDoug Rabson
914c19800e8SDoug Rabson	* ca.c (hx509_ca_tbs_add_san_jid): Allow adding
915c19800e8SDoug Rabson	id-pkix-on-xmppAddr OtherName.
916c19800e8SDoug Rabson
917c19800e8SDoug Rabson	* print.c: Print id-pkix-on-xmppAddr OtherName.
918c19800e8SDoug Rabson
919*ae771770SStanislav Sedov2007-01-11  Love Hörnquist Åstrand  <lha@it.su.se>
920c19800e8SDoug Rabson
921c19800e8SDoug Rabson	* no random, no RSA/DH tests
922c19800e8SDoug Rabson
923c19800e8SDoug Rabson	* hxtool.c (info): print status of random generator
924c19800e8SDoug Rabson
925c19800e8SDoug Rabson	* Makefile.am: remove files created by tests
926c19800e8SDoug Rabson
927c19800e8SDoug Rabson	* error.c: constify
928c19800e8SDoug Rabson
929c19800e8SDoug Rabson	* name.c: constify
930c19800e8SDoug Rabson
931c19800e8SDoug Rabson	* revoke.c: constify
932c19800e8SDoug Rabson
933c19800e8SDoug Rabson	* hx_locl.h: constify
934c19800e8SDoug Rabson
935c19800e8SDoug Rabson	* keyset.c: constify
936c19800e8SDoug Rabson
937c19800e8SDoug Rabson	* ks_p11.c: constify
938c19800e8SDoug Rabson
939c19800e8SDoug Rabson	* hx_locl.h: make printinfo char * argument const.
940c19800e8SDoug Rabson
941c19800e8SDoug Rabson	* cms.c: move _hx509_set_digest_alg from cms.c to crypto.c since
942c19800e8SDoug Rabson	its only used there.
943c19800e8SDoug Rabson
944c19800e8SDoug Rabson	* crypto.c: remove no longer used stuff, move set_digest_alg here
945c19800e8SDoug Rabson	from cms.c since its only used here.
946c19800e8SDoug Rabson
947c19800e8SDoug Rabson	* Makefile.am: add data/test-nopw.p12 to EXTRA_DIST
948c19800e8SDoug Rabson
949*ae771770SStanislav Sedov2007-01-10  Love Hörnquist Åstrand  <lha@it.su.se>
950c19800e8SDoug Rabson
951c19800e8SDoug Rabson	* print.c: BasicConstraints vs criticality bit is complicated and
952c19800e8SDoug Rabson	not really possible to evaluate on its own, silly RFC3280.
953c19800e8SDoug Rabson
954c19800e8SDoug Rabson	* ca.c: Make basicConstraints critical if this is a CA.
955c19800e8SDoug Rabson
956c19800e8SDoug Rabson	* print.c: fix the version vs extension test
957c19800e8SDoug Rabson
958c19800e8SDoug Rabson	* print.c: More validation checks.
959c19800e8SDoug Rabson
960c19800e8SDoug Rabson	* name.c (hx509_name_cmp): add
961c19800e8SDoug Rabson
962*ae771770SStanislav Sedov2007-01-09  Love Hörnquist Åstrand  <lha@it.su.se>
963c19800e8SDoug Rabson
964c19800e8SDoug Rabson	* ks_p11.c (collect_private_key): Missing CKA_MODULUS is ok
965c19800e8SDoug Rabson	too (XXX why should these be fetched given they are not used).
966c19800e8SDoug Rabson
967c19800e8SDoug Rabson	* test_ca.in: rename all files to PEM files, since that is what
968c19800e8SDoug Rabson	they are.
969c19800e8SDoug Rabson
970c19800e8SDoug Rabson	* hxtool.c: copy out the key with the self signed CA cert
971c19800e8SDoug Rabson
972c19800e8SDoug Rabson	* Factor out private key operation out of the signing, operations,
973c19800e8SDoug Rabson	support import, export, and generation of private keys. Add
974c19800e8SDoug Rabson	support for writing PEM and PKCS12 files with private keys in them.
975c19800e8SDoug Rabson
976c19800e8SDoug Rabson	* data/gen-req.sh: Generate a no password pkcs12 file.
977c19800e8SDoug Rabson
978*ae771770SStanislav Sedov2007-01-08  Love Hörnquist Åstrand  <lha@it.su.se>
979c19800e8SDoug Rabson
980c19800e8SDoug Rabson	* cms.c: Check for internal ASN1 encoder error.
981c19800e8SDoug Rabson
982*ae771770SStanislav Sedov2007-01-05  Love Hörnquist Åstrand  <lha@it.su.se>
983c19800e8SDoug Rabson
984c19800e8SDoug Rabson	* Makefile.am: Drop most of the pkcs11 files.
985c19800e8SDoug Rabson
986c19800e8SDoug Rabson	* test_ca.in: test reissueing ca certificate (xxx time
987c19800e8SDoug Rabson	validAfter).
988c19800e8SDoug Rabson
989c19800e8SDoug Rabson	* hxtool.c: Allow setting serialNumber (needed for reissuing
990c19800e8SDoug Rabson	certificates) Change --key argument to --out-key.
991c19800e8SDoug Rabson
992c19800e8SDoug Rabson	* hxtool-commands.in (issue-certificate): Allow setting
993c19800e8SDoug Rabson	serialNumber (needed for reissuing certificates), Change --key
994c19800e8SDoug Rabson	argument to --out-key.
995c19800e8SDoug Rabson
996c19800e8SDoug Rabson	* ref: Replace with Marcus Brinkmann of g10 Code GmbH pkcs11
997c19800e8SDoug Rabson	headerfile that is compatible with GPL (file taken from scute)
998c19800e8SDoug Rabson
999*ae771770SStanislav Sedov2007-01-04  Love Hörnquist Åstrand  <lha@it.su.se>
1000c19800e8SDoug Rabson
1001c19800e8SDoug Rabson	* test_ca.in: Test to generate key and use them.
1002c19800e8SDoug Rabson
1003c19800e8SDoug Rabson	* hxtool.c: handle other keys the pkcs10 requested keys
1004c19800e8SDoug Rabson
1005c19800e8SDoug Rabson	* hxtool-commands.in: add generate key commands
1006c19800e8SDoug Rabson
1007c19800e8SDoug Rabson	* req.c (_hx509_request_to_pkcs10): PKCS10 needs to have a subject
1008c19800e8SDoug Rabson
1009c19800e8SDoug Rabson	* hxtool-commands.in: Spelling.
1010c19800e8SDoug Rabson
1011c19800e8SDoug Rabson	* ca.c (hx509_ca_tbs_set_proxy): allow negative pathLenConstraint
1012c19800e8SDoug Rabson	to signal no limit
1013c19800e8SDoug Rabson
1014c19800e8SDoug Rabson	* ks_file.c: Try all formats on the binary file before giving up,
1015c19800e8SDoug Rabson	this way we can handle binary rsa keys too.
1016c19800e8SDoug Rabson
1017c19800e8SDoug Rabson	* data/key2.der: new test key
1018c19800e8SDoug Rabson
1019c19800e8SDoug Rabson2007-01-04  David Love  <fx@gnu.org>
1020c19800e8SDoug Rabson
1021c19800e8SDoug Rabson	* Makefile.am (hxtool_LDADD): Add libasn1.la
1022c19800e8SDoug Rabson
1023c19800e8SDoug Rabson	* hxtool.c (pcert_verify): Fix format string.
1024c19800e8SDoug Rabson
1025*ae771770SStanislav Sedov2006-12-31  Love Hörnquist Åstrand  <lha@it.su.se>
1026c19800e8SDoug Rabson
1027c19800e8SDoug Rabson	* hxtool.c: Allow setting path length
1028c19800e8SDoug Rabson
1029c19800e8SDoug Rabson	* cert.c: Fix test for proxy certs chain length, it was too
1030c19800e8SDoug Rabson	restrictive.
1031c19800e8SDoug Rabson
1032c19800e8SDoug Rabson	* data: regen
1033c19800e8SDoug Rabson
1034c19800e8SDoug Rabson	* data/openssl.cnf: (proxy_cert) make length 0
1035c19800e8SDoug Rabson
1036c19800e8SDoug Rabson	* test_ca.in: Issue a long living cert.
1037c19800e8SDoug Rabson
1038c19800e8SDoug Rabson	* hxtool.c: add --lifetime to ca command.
1039c19800e8SDoug Rabson
1040c19800e8SDoug Rabson	* hxtool-commands.in: add --lifetime to ca command.
1041c19800e8SDoug Rabson
1042c19800e8SDoug Rabson	* ca.c: allow setting notBefore and notAfter.
1043c19800e8SDoug Rabson
1044c19800e8SDoug Rabson	* test_ca.in: Test generation of proxy certificates.
1045c19800e8SDoug Rabson
1046c19800e8SDoug Rabson	* ca.c: Allow generation of proxy certificates, always include
1047c19800e8SDoug Rabson	BasicConstraints, fix error codes.
1048c19800e8SDoug Rabson
1049c19800e8SDoug Rabson	* hxtool.c: Allow generation of proxy certificates.
1050c19800e8SDoug Rabson
1051c19800e8SDoug Rabson	* test_name.c: make hx509_parse_name take a hx509_context.
1052c19800e8SDoug Rabson
1053c19800e8SDoug Rabson	* name.c: Split building RDN to a separate function.
1054c19800e8SDoug Rabson
1055*ae771770SStanislav Sedov2006-12-30  Love Hörnquist Åstrand  <lha@it.su.se>
1056c19800e8SDoug Rabson
1057c19800e8SDoug Rabson	* Makefile.am: clean test_ca files.
1058c19800e8SDoug Rabson
1059c19800e8SDoug Rabson	* test_ca.in: test issuing self-signed and CA certificates.
1060c19800e8SDoug Rabson
1061c19800e8SDoug Rabson	* hxtool.c: Add bits to allow issuing self-signed and CA
1062c19800e8SDoug Rabson	certificates.
1063c19800e8SDoug Rabson
1064c19800e8SDoug Rabson	* hxtool-commands.in: Add bits to allow issuing self-signed and CA
1065c19800e8SDoug Rabson	certificates.
1066c19800e8SDoug Rabson
1067c19800e8SDoug Rabson	* ca.c: Add bits to allow issuing CA certificates.
1068c19800e8SDoug Rabson
1069c19800e8SDoug Rabson	* revoke.c: use new OCSPSigning.
1070c19800e8SDoug Rabson
1071c19800e8SDoug Rabson	* ca.c: Add Subject Key Identifier.
1072c19800e8SDoug Rabson
1073c19800e8SDoug Rabson	* ca.c: Add Authority Key Identifier.
1074c19800e8SDoug Rabson
1075c19800e8SDoug Rabson	* cert.c: Locally export _hx509_find_extension_subject_key_id.
1076c19800e8SDoug Rabson	Handle AuthorityKeyIdentifier where only authorityCertSerialNumber
1077c19800e8SDoug Rabson	and authorityCertSerialNumber is set.
1078c19800e8SDoug Rabson
1079c19800e8SDoug Rabson	* hxtool-commands.in: Add dnsname and rfc822 SANs.
1080c19800e8SDoug Rabson
1081c19800e8SDoug Rabson	* test_ca.in: Test dnsname and rfc822 SANs.
1082c19800e8SDoug Rabson
1083c19800e8SDoug Rabson	* ca.c: Add dnsname and rfc822 SANs.
1084c19800e8SDoug Rabson
1085c19800e8SDoug Rabson	* hxtool.c: Add dnsname and rfc822 SANs.
1086c19800e8SDoug Rabson
1087c19800e8SDoug Rabson	* test_ca.in: test adding eku, ku and san to the
1088c19800e8SDoug Rabson	certificate (https and pk-init)
1089c19800e8SDoug Rabson
1090c19800e8SDoug Rabson	* hxtool.c: Add eku, ku and san to the certificate.
1091c19800e8SDoug Rabson
1092c19800e8SDoug Rabson	* ca.c: Add eku, ku and san to the certificate.
1093c19800e8SDoug Rabson
1094c19800e8SDoug Rabson	* hxtool-commands.in: Add --type and --pk-init-principal
1095c19800e8SDoug Rabson
1096c19800e8SDoug Rabson	* ocsp.asn1: remove id-kp-OCSPSigning, its in rfc2459.asn1 now
1097c19800e8SDoug Rabson
1098*ae771770SStanislav Sedov2006-12-29  Love Hörnquist Åstrand  <lha@it.su.se>
1099c19800e8SDoug Rabson
1100c19800e8SDoug Rabson	* ca.c: Add KeyUsage extension.
1101c19800e8SDoug Rabson
1102c19800e8SDoug Rabson	* Makefile.am: add ca.c, add sign-certificate tests.
1103c19800e8SDoug Rabson
1104c19800e8SDoug Rabson	* crypto.c: Add _hx509_create_signature_bitstring.
1105c19800e8SDoug Rabson
1106c19800e8SDoug Rabson	* hxtool-commands.in: Add the sign-certificate tool.
1107c19800e8SDoug Rabson
1108c19800e8SDoug Rabson	* hxtool.c: Add the sign-certificate tool.
1109c19800e8SDoug Rabson
1110c19800e8SDoug Rabson	* cert.c: Add HX509_QUERY_OPTION_KU_KEYCERTSIGN.
1111c19800e8SDoug Rabson
1112c19800e8SDoug Rabson	* hx509.h: Add hx509_ca_tbs and HX509_QUERY_OPTION_KU_KEYCERTSIGN.
1113c19800e8SDoug Rabson
1114c19800e8SDoug Rabson	* test_ca.in: Basic test of generating a pkcs10 request, signing
1115c19800e8SDoug Rabson	it and verifying the chain.
1116c19800e8SDoug Rabson
1117c19800e8SDoug Rabson	* ca.c: Naive certificate signer.
1118c19800e8SDoug Rabson
1119*ae771770SStanislav Sedov2006-12-28  Love Hörnquist Åstrand  <lha@it.su.se>
1120c19800e8SDoug Rabson
1121c19800e8SDoug Rabson	* hxtool.c: add hxtool_hex
1122c19800e8SDoug Rabson
1123*ae771770SStanislav Sedov2006-12-22  Love Hörnquist Åstrand  <lha@it.su.se>
1124c19800e8SDoug Rabson
1125c19800e8SDoug Rabson	* Makefile.am: use top_builddir for libasn1.la
1126c19800e8SDoug Rabson
1127*ae771770SStanislav Sedov2006-12-11  Love Hörnquist Åstrand  <lha@it.su.se>
1128c19800e8SDoug Rabson
1129c19800e8SDoug Rabson	* hxtool.c (print_certificate): print serial number.
1130c19800e8SDoug Rabson
1131c19800e8SDoug Rabson	* name.c (no): add S=stateOrProvinceName
1132c19800e8SDoug Rabson
1133*ae771770SStanislav Sedov2006-12-09  Love Hörnquist Åstrand  <lha@it.su.se>
1134c19800e8SDoug Rabson
1135c19800e8SDoug Rabson	* crypto.c (_hx509_private_key_assign_rsa): set a default sig alg
1136c19800e8SDoug Rabson
1137c19800e8SDoug Rabson	* ks_file.c (try_decrypt): pass down AlgorithmIdentifier that key
1138c19800e8SDoug Rabson	uses to do sigatures so there is no need to hardcode RSA into this
1139c19800e8SDoug Rabson	function.
1140c19800e8SDoug Rabson
1141*ae771770SStanislav Sedov2006-12-08  Love Hörnquist Åstrand  <lha@it.su.se>
1142c19800e8SDoug Rabson
1143c19800e8SDoug Rabson	* ks_file.c: Pass filename to the parse functions and use it in
1144c19800e8SDoug Rabson	the error messages
1145c19800e8SDoug Rabson
1146c19800e8SDoug Rabson	* test_chain.in: test proxy cert (third level)
1147c19800e8SDoug Rabson
1148c19800e8SDoug Rabson	* hx509_err.et: fix errorstring for PROXY_CERT_NAME_WRONG
1149c19800e8SDoug Rabson
1150c19800e8SDoug Rabson	* data: regen
1151c19800e8SDoug Rabson
1152c19800e8SDoug Rabson	* Makefile.am: EXTRA_DIST: add
1153c19800e8SDoug Rabson	data/proxy10-child-child-test.{key,crt}
1154c19800e8SDoug Rabson
1155c19800e8SDoug Rabson	* data/gen-req.sh: Fix names and restrictions on the proxy
1156c19800e8SDoug Rabson	certificates
1157c19800e8SDoug Rabson
1158c19800e8SDoug Rabson	* cert.c: Clairfy and make proxy cert handling work for multiple
1159c19800e8SDoug Rabson	levels, before it was too restrictive. More helpful error message.
1160c19800e8SDoug Rabson
1161*ae771770SStanislav Sedov2006-12-07  Love Hörnquist Åstrand  <lha@it.su.se>
1162c19800e8SDoug Rabson
1163c19800e8SDoug Rabson	* cert.c (check_key_usage): tell what keyusages are missing
1164c19800e8SDoug Rabson
1165c19800e8SDoug Rabson	* print.c: Split OtherName printing code to a oid lookup and print
1166c19800e8SDoug Rabson	function.
1167c19800e8SDoug Rabson
1168c19800e8SDoug Rabson	* print.c (Time2string): print hour as hour not min
1169c19800e8SDoug Rabson
1170c19800e8SDoug Rabson	* Makefile.am: CLEANFILES += test
1171c19800e8SDoug Rabson
1172*ae771770SStanislav Sedov2006-12-06  Love Hörnquist Åstrand  <lha@it.su.se>
1173c19800e8SDoug Rabson
1174c19800e8SDoug Rabson	* Makefile.am (EXTRA_DIST): add data/pkinit-proxy* files
1175c19800e8SDoug Rabson
1176c19800e8SDoug Rabson	* Makefile.am (EXTRA_DIST): add tst-crypto* files
1177c19800e8SDoug Rabson
1178c19800e8SDoug Rabson	* cert.c (hx509_query_match_issuer_serial): make a copy of the
1179c19800e8SDoug Rabson	data
1180c19800e8SDoug Rabson
1181c19800e8SDoug Rabson	* cert.c (hx509_query_match_issuer_serial): allow matching on
1182c19800e8SDoug Rabson	issuer and serial num
1183c19800e8SDoug Rabson
1184c19800e8SDoug Rabson	* cert.c (_hx509_calculate_path): add flag to allow leaving out
1185c19800e8SDoug Rabson	trust anchor
1186c19800e8SDoug Rabson
1187c19800e8SDoug Rabson	* cms.c (hx509_cms_create_signed_1): when building the path, omit
1188c19800e8SDoug Rabson	the trust anchors.
1189c19800e8SDoug Rabson
1190c19800e8SDoug Rabson	* crypto.c (rsa_create_signature): Abort when signature is longer,
1191c19800e8SDoug Rabson	not shorter.
1192c19800e8SDoug Rabson
1193c19800e8SDoug Rabson	* cms.c: Provide time to _hx509_calculate_path so we don't send no
1194c19800e8SDoug Rabson	longer valid certs to our peer.
1195c19800e8SDoug Rabson
1196c19800e8SDoug Rabson	* cert.c (find_parent): when checking for certs and its not a
1197c19800e8SDoug Rabson	trust anchor, require time be in range.
1198c19800e8SDoug Rabson	(_hx509_query_match_cert): Add time validity-testing to query mask
1199c19800e8SDoug Rabson
1200c19800e8SDoug Rabson	* hx_locl.h: add time validity-testing to query mask
1201c19800e8SDoug Rabson
1202c19800e8SDoug Rabson	* test_cms.in: Tests for CMS SignedData with incomplete chain from
1203c19800e8SDoug Rabson	the signer.
1204c19800e8SDoug Rabson
1205*ae771770SStanislav Sedov2006-11-28  Love Hörnquist Åstrand  <lha@it.su.se>
1206c19800e8SDoug Rabson
1207c19800e8SDoug Rabson	* cms.c (hx509_cms_verify_signed): specify what signature we
1208c19800e8SDoug Rabson	failed to verify
1209c19800e8SDoug Rabson
1210c19800e8SDoug Rabson	* Makefile.am: Depend on LIB_com_err for AIX.
1211c19800e8SDoug Rabson
1212c19800e8SDoug Rabson	* keyset.c: Remove anther strndup that causes AIX to fall over.
1213c19800e8SDoug Rabson
1214c19800e8SDoug Rabson	* cert.c: Don't check the trust anchors expiration time since they
1215c19800e8SDoug Rabson	are transported out of band, from RFC3820.
1216c19800e8SDoug Rabson
1217c19800e8SDoug Rabson	* cms.c: sprinkle more error strings
1218c19800e8SDoug Rabson
1219c19800e8SDoug Rabson	* crypto.c: sprinkle more error strings
1220c19800e8SDoug Rabson
1221c19800e8SDoug Rabson	* hxtool.c: use unsigned int as counter to fit better with the
1222c19800e8SDoug Rabson	asn1 compiler
1223c19800e8SDoug Rabson
1224c19800e8SDoug Rabson	* crypto.c: use unsigned int as counter to fit better with the
1225c19800e8SDoug Rabson	asn1 compiler
1226c19800e8SDoug Rabson
1227*ae771770SStanislav Sedov2006-11-27  Love Hörnquist Åstrand  <lha@it.su.se>
1228c19800e8SDoug Rabson
1229c19800e8SDoug Rabson	* cms.c: Remove trailing white space.
1230c19800e8SDoug Rabson
1231c19800e8SDoug Rabson	* crypto.c: rewrite comment to make more sense
1232c19800e8SDoug Rabson
1233c19800e8SDoug Rabson	* crypto.c (hx509_crypto_select): check sig_algs[j]->key_oid
1234c19800e8SDoug Rabson
1235c19800e8SDoug Rabson	* hxtool-commands.in (crypto-available): add --type
1236c19800e8SDoug Rabson
1237c19800e8SDoug Rabson	* crypto.c (hx509_crypto_available): let alg pass if its keyless
1238c19800e8SDoug Rabson
1239c19800e8SDoug Rabson	* hxtool-commands.in: Expand crypto-select
1240c19800e8SDoug Rabson
1241c19800e8SDoug Rabson	* cms.c: Rename hx509_select to hx509_crypto_select.
1242c19800e8SDoug Rabson
1243c19800e8SDoug Rabson	* hxtool-commands.in: Add crypto-select and crypto-available.
1244c19800e8SDoug Rabson
1245c19800e8SDoug Rabson	* hxtool.c: Add crypto-select and crypto-available.
1246c19800e8SDoug Rabson
1247c19800e8SDoug Rabson	* crypto.c (hx509_crypto_available): use right index.
1248c19800e8SDoug Rabson	(hx509_crypto_free_algs): new function
1249c19800e8SDoug Rabson
1250c19800e8SDoug Rabson	* crypto.c (hx509_crypto_select): improve
1251c19800e8SDoug Rabson	(hx509_crypto_available): new function
1252c19800e8SDoug Rabson
1253*ae771770SStanislav Sedov2006-11-26  Love Hörnquist Åstrand  <lha@it.su.se>
1254c19800e8SDoug Rabson
1255c19800e8SDoug Rabson	* cert.c: Sprinkle more error string and hx509_contexts.
1256c19800e8SDoug Rabson
1257c19800e8SDoug Rabson	* cms.c: Sprinkle more error strings.
1258c19800e8SDoug Rabson
1259c19800e8SDoug Rabson	* crypto.c: Sprinkle error string and hx509_contexts.
1260c19800e8SDoug Rabson
1261c19800e8SDoug Rabson	* crypto.c: Add some more comments about how this works.
1262c19800e8SDoug Rabson
1263c19800e8SDoug Rabson	* crypto.c (hx509_select): new function.
1264c19800e8SDoug Rabson
1265c19800e8SDoug Rabson	* Makefile.am: add peer.c
1266c19800e8SDoug Rabson
1267c19800e8SDoug Rabson	* hxtool.c: Update hx509_cms_create_signed_1.
1268c19800e8SDoug Rabson
1269c19800e8SDoug Rabson	* hx_locl.h: add struct hx509_peer_info
1270c19800e8SDoug Rabson
1271c19800e8SDoug Rabson	* peer.c: Allow selection of digest/sig-alg
1272c19800e8SDoug Rabson
1273c19800e8SDoug Rabson	* cms.c: Allow selection of a better digest using hx509_peer_info.
1274c19800e8SDoug Rabson
1275c19800e8SDoug Rabson	* revoke.c: Handle that _hx509_verify_signature takes a context.
1276c19800e8SDoug Rabson
1277c19800e8SDoug Rabson	* cert.c: Handle that _hx509_verify_signature takes a context.
1278c19800e8SDoug Rabson
1279*ae771770SStanislav Sedov2006-11-25  Love Hörnquist Åstrand  <lha@it.su.se>
1280c19800e8SDoug Rabson
1281c19800e8SDoug Rabson	* cms.c: Sprinkle error strings.
1282c19800e8SDoug Rabson
1283c19800e8SDoug Rabson	* crypto.c: Sprinkle context and error strings.
1284c19800e8SDoug Rabson
1285*ae771770SStanislav Sedov2006-11-24  Love Hörnquist Åstrand  <lha@it.su.se>
1286c19800e8SDoug Rabson
1287c19800e8SDoug Rabson	* name.c: Handle printing and parsing raw oids in name.
1288c19800e8SDoug Rabson
1289*ae771770SStanislav Sedov2006-11-23  Love Hörnquist Åstrand  <lha@it.su.se>
1290c19800e8SDoug Rabson
1291c19800e8SDoug Rabson	* cert.c (_hx509_calculate_path): allow to calculate optimistic
1292c19800e8SDoug Rabson	path when we don't know the trust anchors, just follow the chain
1293c19800e8SDoug Rabson	upward until we no longer find a parent or we hit the max limit.
1294c19800e8SDoug Rabson
1295c19800e8SDoug Rabson	* cms.c (hx509_cms_create_signed_1): provide a best effort path to
1296c19800e8SDoug Rabson	the trust anchors to be stored in the SignedData packet, if find
1297c19800e8SDoug Rabson	parents until trust anchor or max length.
1298c19800e8SDoug Rabson
1299c19800e8SDoug Rabson	* data: regen
1300c19800e8SDoug Rabson
1301c19800e8SDoug Rabson	* data/gen-req.sh: Build pk-init proxy cert.
1302c19800e8SDoug Rabson
1303*ae771770SStanislav Sedov2006-11-16  Love Hörnquist Åstrand  <lha@it.su.se>
1304c19800e8SDoug Rabson
1305c19800e8SDoug Rabson	* error.c (hx509_get_error_string): Put ", " between strings in
1306c19800e8SDoug Rabson	error message.
1307c19800e8SDoug Rabson
1308*ae771770SStanislav Sedov2006-11-13  Love Hörnquist Åstrand  <lha@it.su.se>
1309c19800e8SDoug Rabson
1310c19800e8SDoug Rabson	* data/openssl.cnf: Change realm to TEST.H5L.SE
1311c19800e8SDoug Rabson
1312*ae771770SStanislav Sedov2006-11-07  Love Hörnquist Åstrand  <lha@it.su.se>
1313c19800e8SDoug Rabson
1314c19800e8SDoug Rabson	* revoke.c: Sprinkle error strings.
1315c19800e8SDoug Rabson
1316*ae771770SStanislav Sedov2006-11-04  Love Hörnquist Åstrand  <lha@it.su.se>
1317c19800e8SDoug Rabson
1318c19800e8SDoug Rabson	* hx_locl.h: add context variable to cmp function.
1319c19800e8SDoug Rabson
1320c19800e8SDoug Rabson	* cert.c (hx509_query_match_cmp_func): allow setting the match
1321c19800e8SDoug Rabson	function.
1322c19800e8SDoug Rabson
1323*ae771770SStanislav Sedov2006-10-24  Love Hörnquist Åstrand  <lha@it.su.se>
1324c19800e8SDoug Rabson
1325c19800e8SDoug Rabson	* ks_p11.c: Return less EINVAL.
1326c19800e8SDoug Rabson
1327c19800e8SDoug Rabson	* hx509_err.et: add more pkcs11 errors
1328c19800e8SDoug Rabson
1329c19800e8SDoug Rabson	* hx509_err.et: more error-codes
1330c19800e8SDoug Rabson
1331c19800e8SDoug Rabson	* revoke.c: Return less EINVAL.
1332c19800e8SDoug Rabson
1333c19800e8SDoug Rabson	* ks_dir.c: sprinkel more hx509_set_error_string
1334c19800e8SDoug Rabson
1335c19800e8SDoug Rabson	* ks_file.c: Return less EINVAL.
1336c19800e8SDoug Rabson
1337c19800e8SDoug Rabson	* hxtool.c: Pass in context to _hx509_parse_private_key.
1338c19800e8SDoug Rabson
1339c19800e8SDoug Rabson	* ks_file.c: Sprinkle more hx509_context so we can return propper
1340c19800e8SDoug Rabson	errors.
1341c19800e8SDoug Rabson
1342c19800e8SDoug Rabson	* hx509_err.et: add HX509_PARSING_KEY_FAILED
1343c19800e8SDoug Rabson
1344c19800e8SDoug Rabson	* crypto.c: Sprinkle more hx509_context so we can return propper
1345c19800e8SDoug Rabson	errors.
1346c19800e8SDoug Rabson
1347c19800e8SDoug Rabson	* collector.c: No more EINVAL.
1348c19800e8SDoug Rabson
1349c19800e8SDoug Rabson	* hx509_err.et: add HX509_LOCAL_ATTRIBUTE_MISSING
1350c19800e8SDoug Rabson
1351c19800e8SDoug Rabson	* cert.c (hx509_cert_get_base_subject): one less EINVAL
1352c19800e8SDoug Rabson	(_hx509_cert_private_decrypt): one less EINVAL
1353c19800e8SDoug Rabson
1354*ae771770SStanislav Sedov2006-10-22  Love Hörnquist Åstrand  <lha@it.su.se>
1355c19800e8SDoug Rabson
1356c19800e8SDoug Rabson	* collector.c: indent
1357c19800e8SDoug Rabson
1358c19800e8SDoug Rabson	* hxtool.c: Try to not leak memory.
1359c19800e8SDoug Rabson
1360c19800e8SDoug Rabson	* req.c: clean memory before free
1361c19800e8SDoug Rabson
1362c19800e8SDoug Rabson	* crypto.c (_hx509_private_key2SPKI): indent
1363c19800e8SDoug Rabson
1364c19800e8SDoug Rabson	* req.c: Try to not leak memory.
1365c19800e8SDoug Rabson
1366*ae771770SStanislav Sedov2006-10-21  Love Hörnquist Åstrand  <lha@it.su.se>
1367c19800e8SDoug Rabson
1368c19800e8SDoug Rabson	* test_crypto.in: Read 50 kilobyte random data
1369c19800e8SDoug Rabson
1370c19800e8SDoug Rabson	* revoke.c: Try to not leak memory.
1371c19800e8SDoug Rabson
1372c19800e8SDoug Rabson	* hxtool.c: Try to not leak memory.
1373c19800e8SDoug Rabson
1374c19800e8SDoug Rabson	* crypto.c (hx509_crypto_destroy): free oid.
1375c19800e8SDoug Rabson
1376c19800e8SDoug Rabson	* error.c: Clean error string on failure just to make sure.
1377c19800e8SDoug Rabson
1378c19800e8SDoug Rabson	* cms.c: Try to not leak memory (again).
1379c19800e8SDoug Rabson
1380c19800e8SDoug Rabson	* hxtool.c: use a sensable content type
1381c19800e8SDoug Rabson
1382c19800e8SDoug Rabson	* cms.c: Try harder to free certificate.
1383c19800e8SDoug Rabson
1384*ae771770SStanislav Sedov2006-10-20  Love Hörnquist Åstrand  <lha@it.su.se>
1385c19800e8SDoug Rabson
1386c19800e8SDoug Rabson	* Makefile.am: Add make check data.
1387c19800e8SDoug Rabson
1388*ae771770SStanislav Sedov2006-10-19  Love Hörnquist Åstrand  <lha@it.su.se>
1389c19800e8SDoug Rabson
1390c19800e8SDoug Rabson	* ks_p11.c (p11_list_keys): make element of search_data[0]
1391c19800e8SDoug Rabson	constants and set them later
1392c19800e8SDoug Rabson
1393c19800e8SDoug Rabson	* Makefile.am: Add more files.
1394c19800e8SDoug Rabson
1395*ae771770SStanislav Sedov2006-10-17  Love Hörnquist Åstrand  <lha@it.su.se>
1396c19800e8SDoug Rabson
1397c19800e8SDoug Rabson	* ks_file.c: set ret, remember to free ivdata
1398c19800e8SDoug Rabson
1399*ae771770SStanislav Sedov2006-10-16  Love Hörnquist Åstrand  <lha@it.su.se>
1400c19800e8SDoug Rabson
1401c19800e8SDoug Rabson	* hx_locl.h: Include <parse_bytes.h>.
1402c19800e8SDoug Rabson
1403c19800e8SDoug Rabson	* test_crypto.in: Test random-data.
1404c19800e8SDoug Rabson
1405c19800e8SDoug Rabson	* hxtool.c: RAND_bytes() return 1 for cryptographic strong data,
1406c19800e8SDoug Rabson	check for that.
1407c19800e8SDoug Rabson
1408c19800e8SDoug Rabson	* Makefile.am: clean random-data
1409c19800e8SDoug Rabson
1410c19800e8SDoug Rabson	* hxtool.c: Add random-data command, use sl_slc_help.
1411c19800e8SDoug Rabson
1412c19800e8SDoug Rabson	* hxtool-commands.in: Add random-data.
1413c19800e8SDoug Rabson
1414c19800e8SDoug Rabson	* ks_p12.c: Remember to release certs.
1415c19800e8SDoug Rabson
1416c19800e8SDoug Rabson	* ks_p11.c: Remember to release certs.
1417c19800e8SDoug Rabson
1418*ae771770SStanislav Sedov2006-10-14  Love Hörnquist Åstrand  <lha@it.su.se>
1419c19800e8SDoug Rabson
1420c19800e8SDoug Rabson	* prefix der primitives with der_
1421c19800e8SDoug Rabson
1422c19800e8SDoug Rabson	* lock.c: Match the prompt type PROMPT exact.
1423c19800e8SDoug Rabson
1424c19800e8SDoug Rabson	* hx_locl.h: Drop heim_any.h
1425c19800e8SDoug Rabson
1426*ae771770SStanislav Sedov2006-10-11  Love Hörnquist Åstrand  <lha@it.su.se>
1427c19800e8SDoug Rabson
1428c19800e8SDoug Rabson	* ks_p11.c (p11_release_module): j needs to be used as inter loop
1429c19800e8SDoug Rabson	index. From Douglas Engert.
1430c19800e8SDoug Rabson
1431c19800e8SDoug Rabson	* ks_file.c (parse_rsa_private_key): try all passwords and
1432c19800e8SDoug Rabson	prompter.
1433c19800e8SDoug Rabson
1434*ae771770SStanislav Sedov2006-10-10  Love Hörnquist Åstrand  <lha@it.su.se>
1435c19800e8SDoug Rabson
1436c19800e8SDoug Rabson	* test_*.in: Parameterise the invocation of hxtool, so we can make
1437c19800e8SDoug Rabson	it run under TESTS_ENVIRONMENT. From Andrew Bartlett
1438c19800e8SDoug Rabson
1439*ae771770SStanislav Sedov2006-10-08  Love Hörnquist Åstrand  <lha@it.su.se>
1440c19800e8SDoug Rabson
1441c19800e8SDoug Rabson	* test_crypto.in: Put all test stuck at 2006-09-25 since all their
1442c19800e8SDoug Rabson	chains where valied then.
1443c19800e8SDoug Rabson
1444c19800e8SDoug Rabson	* hxtool.c: Implement --time= option.
1445c19800e8SDoug Rabson
1446c19800e8SDoug Rabson	* hxtool-commands.in: Add option time.
1447c19800e8SDoug Rabson
1448c19800e8SDoug Rabson	* Makefile.am: test_name is a PROGRAM_TESTS
1449c19800e8SDoug Rabson
1450c19800e8SDoug Rabson	* ks_p11.c: Return HX509_PKCS11_NO_SLOT when there are no slots
1451c19800e8SDoug Rabson	and HX509_PKCS11_NO_TOKEN when there are no token. For use in PAM
1452c19800e8SDoug Rabson	modules that want to detect when to use smartcard login and when
1453c19800e8SDoug Rabson	not to. Patched based on code from Douglas Engert.
1454c19800e8SDoug Rabson
1455c19800e8SDoug Rabson	* hx509_err.et: Add new pkcs11 related errors in a new section:
1456c19800e8SDoug Rabson	keystore related error.  Patched based on code from Douglas
1457c19800e8SDoug Rabson	Engert.
1458c19800e8SDoug Rabson
1459*ae771770SStanislav Sedov2006-10-07  Love Hörnquist Åstrand  <lha@it.su.se>
1460c19800e8SDoug Rabson
1461c19800e8SDoug Rabson	* Makefile.am: Make depenency for slc built files just like
1462c19800e8SDoug Rabson	everywhere else.
1463c19800e8SDoug Rabson
1464c19800e8SDoug Rabson	* cert.c: Add all openssl algs and init asn1 et
1465c19800e8SDoug Rabson
1466*ae771770SStanislav Sedov2006-10-06  Love Hörnquist Åstrand  <lha@it.su.se>
1467c19800e8SDoug Rabson
1468c19800e8SDoug Rabson	* ks_file.c (parse_rsa_private_key): free type earlier.
1469c19800e8SDoug Rabson
1470c19800e8SDoug Rabson	* ks_file.c (parse_rsa_private_key): free type after use
1471c19800e8SDoug Rabson
1472c19800e8SDoug Rabson	* name.c (_hx509_Name_to_string): remove dup const
1473c19800e8SDoug Rabson
1474*ae771770SStanislav Sedov2006-10-02  Love Hörnquist Åstrand  <lha@it.su.se>
1475c19800e8SDoug Rabson
1476c19800e8SDoug Rabson	* Makefile.am: Add more libs to libhx509
1477c19800e8SDoug Rabson
1478*ae771770SStanislav Sedov2006-10-01  Love Hörnquist Åstrand  <lha@it.su.se>
1479c19800e8SDoug Rabson
1480c19800e8SDoug Rabson	* ks_p11.c: Fix double free's, NULL ptr de-reference, and conform
1481c19800e8SDoug Rabson	better to pkcs11.  From Douglas Engert.
1482c19800e8SDoug Rabson
1483c19800e8SDoug Rabson	* ref: remove ^M, it breaks solaris 10s cc. From Harald Barth
1484c19800e8SDoug Rabson
1485*ae771770SStanislav Sedov2006-09-19  Love Hörnquist Åstrand  <lha@it.su.se>
1486c19800e8SDoug Rabson
1487c19800e8SDoug Rabson	* test_crypto.in: Bleichenbacher bad cert from Ralf-Philipp
1488c19800e8SDoug Rabson	Weinmann and Andrew Pyshkin, pad right.
1489c19800e8SDoug Rabson
1490c19800e8SDoug Rabson	* data: starfield test root cert and Ralf-Philipp and Andreis
1491c19800e8SDoug Rabson	correctly padded bad cert
1492c19800e8SDoug Rabson
1493*ae771770SStanislav Sedov2006-09-15  Love Hörnquist Åstrand  <lha@it.su.se>
1494c19800e8SDoug Rabson
1495c19800e8SDoug Rabson	* test_crypto.in: Add test for yutaka certs.
1496c19800e8SDoug Rabson
1497c19800e8SDoug Rabson	* cert.c: Add a strict rfc3280 verification flag. rfc3280 requires
1498c19800e8SDoug Rabson	certificates to have KeyUsage.keyCertSign if they are to be used
1499c19800e8SDoug Rabson	for signing of certificates, but the step in the verifiation is
1500c19800e8SDoug Rabson	optional.
1501c19800e8SDoug Rabson
1502c19800e8SDoug Rabson	* hxtool.c: Improve printing and error reporting.
1503c19800e8SDoug Rabson
1504*ae771770SStanislav Sedov2006-09-13  Love Hörnquist Åstrand  <lha@it.su.se>
1505c19800e8SDoug Rabson
1506c19800e8SDoug Rabson	* test_crypto.in,Makefile.am,data/bleichenbacher-{bad,good}.pem:
1507c19800e8SDoug Rabson	test bleichenbacher from eay
1508c19800e8SDoug Rabson
1509*ae771770SStanislav Sedov2006-09-12  Love Hörnquist Åstrand  <lha@it.su.se>
1510c19800e8SDoug Rabson
1511c19800e8SDoug Rabson	* hxtool.c: Make common function for all getarg_strings and
1512c19800e8SDoug Rabson	hx509_certs_append commonly used.
1513c19800e8SDoug Rabson
1514c19800e8SDoug Rabson	* cms.c: HX509_CMS_UE_DONT_REQUIRE_KU_ENCIPHERMENT is a negative
1515c19800e8SDoug Rabson	flag, treat it was such.
1516c19800e8SDoug Rabson
1517*ae771770SStanislav Sedov2006-09-11  Love Hörnquist Åstrand  <lha@it.su.se>
1518c19800e8SDoug Rabson
1519c19800e8SDoug Rabson	* req.c: Use the new add_GeneralNames function.
1520c19800e8SDoug Rabson
1521c19800e8SDoug Rabson	* hx509.h: Add HX509_CMS_UE_DONT_REQUIRE_KU_ENCIPHERMENT.
1522c19800e8SDoug Rabson
1523c19800e8SDoug Rabson	* ks_p12.c: Adapt to new signature of hx509_cms_unenvelope.
1524c19800e8SDoug Rabson
1525c19800e8SDoug Rabson	* hxtool.c: Adapt to new signature of hx509_cms_unenvelope.
1526c19800e8SDoug Rabson
1527c19800e8SDoug Rabson	* cms.c: Allow passing in encryptedContent and flag.  Add new flag
1528c19800e8SDoug Rabson	HX509_CMS_UE_DONT_REQUIRE_KU_ENCIPHERMENT.
1529c19800e8SDoug Rabson
1530*ae771770SStanislav Sedov2006-09-08  Love Hörnquist Åstrand  <lha@it.su.se>
1531c19800e8SDoug Rabson
1532c19800e8SDoug Rabson	* ks_p11.c: cast void * to char * when using it for %s formating
1533c19800e8SDoug Rabson	in printf.
1534c19800e8SDoug Rabson
1535c19800e8SDoug Rabson	* name.c: New function _hx509_Name_to_string.
1536c19800e8SDoug Rabson
1537*ae771770SStanislav Sedov2006-09-07  Love Hörnquist Åstrand  <lha@it.su.se>
1538c19800e8SDoug Rabson
1539c19800e8SDoug Rabson	* ks_file.c: Sprinkle error messages.
1540c19800e8SDoug Rabson
1541c19800e8SDoug Rabson	* cms.c: Sprinkle even more error messages.
1542c19800e8SDoug Rabson
1543c19800e8SDoug Rabson	* cms.c: Sprinkle some error messages.
1544c19800e8SDoug Rabson
1545c19800e8SDoug Rabson	* cms.c (find_CMSIdentifier): only free string when we allocated
1546c19800e8SDoug Rabson	one.
1547c19800e8SDoug Rabson
1548c19800e8SDoug Rabson	* ks_p11.c: Don't build most of the pkcs11 module if there are no
1549c19800e8SDoug Rabson	dlopen().
1550c19800e8SDoug Rabson
1551*ae771770SStanislav Sedov2006-09-06  Love Hörnquist Åstrand  <lha@it.su.se>
1552c19800e8SDoug Rabson
1553c19800e8SDoug Rabson	* cms.c (hx509_cms_unenvelope): try to save the error string from
1554c19800e8SDoug Rabson	find_CMSIdentifier so we have one more bit of information what
1555c19800e8SDoug Rabson	went wrong.
1556c19800e8SDoug Rabson
1557c19800e8SDoug Rabson	* hxtool.c: More pretty printing, make verify_signed return the
1558c19800e8SDoug Rabson	error string from the library.
1559c19800e8SDoug Rabson
1560c19800e8SDoug Rabson	* cms.c: Try returning what certificates failed to parse or be
1561c19800e8SDoug Rabson	found.
1562c19800e8SDoug Rabson
1563c19800e8SDoug Rabson	* ks_p11.c (p11_list_keys): fetch CKA_LABEL and use it to set the
1564c19800e8SDoug Rabson	friendlyname for the certificate.
1565c19800e8SDoug Rabson
1566*ae771770SStanislav Sedov2006-09-05  Love Hörnquist Åstrand  <lha@it.su.se>
1567c19800e8SDoug Rabson
1568c19800e8SDoug Rabson	* crypto.c: check that there are no extra bytes in the checksum
1569c19800e8SDoug Rabson	and that the parameters are NULL or the NULL-type. All to avoid
1570c19800e8SDoug Rabson	having excess data that can be used to fake the signature.
1571c19800e8SDoug Rabson
1572c19800e8SDoug Rabson	* hxtool.c: print keyusage
1573c19800e8SDoug Rabson
1574c19800e8SDoug Rabson	* print.c: add hx509_cert_keyusage_print, simplify oid printing
1575c19800e8SDoug Rabson
1576c19800e8SDoug Rabson	* cert.c: add _hx509_cert_get_keyusage
1577c19800e8SDoug Rabson
1578c19800e8SDoug Rabson	* ks_p11.c: keep one session around for the whole life of the keyset
1579c19800e8SDoug Rabson
1580c19800e8SDoug Rabson	* test_query.in: tests more selection
1581c19800e8SDoug Rabson
1582c19800e8SDoug Rabson	* hxtool.c: improve pretty printing in print and query
1583c19800e8SDoug Rabson
1584c19800e8SDoug Rabson	* hxtool{.c,-commands.in}: add selection on KU and printing to query
1585c19800e8SDoug Rabson
1586c19800e8SDoug Rabson	* test_cms.in: Add cms test for digitalSignature and
1587c19800e8SDoug Rabson	keyEncipherment certs.
1588c19800e8SDoug Rabson
1589c19800e8SDoug Rabson	* name.c (no): Add serialNumber
1590c19800e8SDoug Rabson
1591c19800e8SDoug Rabson	* ks_p11.c (p11_get_session): return better error messages
1592c19800e8SDoug Rabson
1593*ae771770SStanislav Sedov2006-09-04  Love Hörnquist Åstrand  <lha@it.su.se>
1594c19800e8SDoug Rabson
1595c19800e8SDoug Rabson	* ref: update to pkcs11 reference files 2.20
1596c19800e8SDoug Rabson
1597c19800e8SDoug Rabson	* ks_p11.c: add more mechflags
1598c19800e8SDoug Rabson
1599c19800e8SDoug Rabson	* name.c (no): add OU and sort
1600c19800e8SDoug Rabson
1601c19800e8SDoug Rabson	* revoke.c: pass context to _hx509_create_signature
1602c19800e8SDoug Rabson
1603c19800e8SDoug Rabson	* ks_p11.c (p11_printinfo): print proper plural s
1604c19800e8SDoug Rabson
1605c19800e8SDoug Rabson	* ks_p11.c: save the mechs supported when initing the token, print
1606c19800e8SDoug Rabson	them in printinfo.
1607c19800e8SDoug Rabson
1608c19800e8SDoug Rabson	* hx_locl.h: Include <parse_units.h>.
1609c19800e8SDoug Rabson
1610c19800e8SDoug Rabson	* cms.c: pass context to _hx509_create_signature
1611c19800e8SDoug Rabson
1612c19800e8SDoug Rabson	* req.c: pass context to _hx509_create_signature
1613c19800e8SDoug Rabson
1614c19800e8SDoug Rabson	* keyset.c (hx509_certs_info): print information about the keyset.
1615c19800e8SDoug Rabson
1616c19800e8SDoug Rabson	* hxtool.c (pcert_print) print keystore info when --info flag is
1617c19800e8SDoug Rabson	given.
1618c19800e8SDoug Rabson
1619c19800e8SDoug Rabson	* hxtool-commands.in: Add hxtool print --info.
1620c19800e8SDoug Rabson
1621c19800e8SDoug Rabson	* test_query.in: Test hxtool print --info.
1622c19800e8SDoug Rabson
1623c19800e8SDoug Rabson	* hx_locl.h (hx509_keyset_ops): add printinfo
1624c19800e8SDoug Rabson
1625c19800e8SDoug Rabson	* crypto.c: Start to hang the private key operations of the
1626c19800e8SDoug Rabson	private key, pass hx509_context to create_checksum.
1627c19800e8SDoug Rabson
1628*ae771770SStanislav Sedov2006-05-29  Love Hörnquist Åstrand  <lha@it.su.se>
1629c19800e8SDoug Rabson
1630c19800e8SDoug Rabson	* ks_p11.c: Iterate over all slots, not just the first/selected
1631c19800e8SDoug Rabson	one.
1632c19800e8SDoug Rabson
1633*ae771770SStanislav Sedov2006-05-27  Love Hörnquist Åstrand  <lha@it.su.se>
1634c19800e8SDoug Rabson
1635c19800e8SDoug Rabson	* cert.c: Add release function for certifiates so backend knowns
1636c19800e8SDoug Rabson	when its no longer used.
1637c19800e8SDoug Rabson
1638c19800e8SDoug Rabson	* ks_p11.c: Add reference counting on certifiates, push out
1639c19800e8SDoug Rabson	CK_SESSION_HANDLE from slot.
1640c19800e8SDoug Rabson
1641c19800e8SDoug Rabson	* cms.c: sprinkle more hx509_clear_error_string
1642c19800e8SDoug Rabson
1643*ae771770SStanislav Sedov2006-05-22  Love Hörnquist Åstrand  <lha@it.su.se>
1644c19800e8SDoug Rabson
1645c19800e8SDoug Rabson	* ks_p11.c: Sprinkle some hx509_set_error_strings
1646c19800e8SDoug Rabson
1647*ae771770SStanislav Sedov2006-05-13  Love Hörnquist Åstrand  <lha@it.su.se>
1648c19800e8SDoug Rabson
1649c19800e8SDoug Rabson	* hxtool.c: Avoid shadowing.
1650c19800e8SDoug Rabson
1651c19800e8SDoug Rabson	* revoke.c: Avoid shadowing.
1652c19800e8SDoug Rabson
1653c19800e8SDoug Rabson	* ks_file.c: Avoid shadowing.
1654c19800e8SDoug Rabson
1655c19800e8SDoug Rabson	* cert.c: Avoid shadowing.
1656c19800e8SDoug Rabson
1657*ae771770SStanislav Sedov2006-05-12  Love Hörnquist Åstrand  <lha@it.su.se>
1658c19800e8SDoug Rabson
1659c19800e8SDoug Rabson	* lock.c (hx509_prompt_hidden): reshuffle to avoid gcc warning
1660c19800e8SDoug Rabson
1661c19800e8SDoug Rabson	* hx509.h: Reshuffle the prompter types, remove the hidden field.
1662c19800e8SDoug Rabson
1663c19800e8SDoug Rabson	* lock.c (hx509_prompt_hidden): return if the prompt should be
1664c19800e8SDoug Rabson	hidden or not
1665c19800e8SDoug Rabson
1666c19800e8SDoug Rabson	* revoke.c (hx509_revoke_free): allow free of NULL.
1667c19800e8SDoug Rabson
1668*ae771770SStanislav Sedov2006-05-11  Love Hörnquist Åstrand  <lha@it.su.se>
1669c19800e8SDoug Rabson
1670c19800e8SDoug Rabson	* ks_file.c (file_init): Avoid shadowing ret (and thus avoiding
1671c19800e8SDoug Rabson	crashing).
1672c19800e8SDoug Rabson
1673c19800e8SDoug Rabson	* ks_dir.c: Implement DIR: caches useing FILE: caches.
1674c19800e8SDoug Rabson
1675c19800e8SDoug Rabson	* ks_p11.c: Catch more errors.
1676c19800e8SDoug Rabson
1677*ae771770SStanislav Sedov2006-05-08  Love Hörnquist Åstrand  <lha@it.su.se>
1678c19800e8SDoug Rabson
1679c19800e8SDoug Rabson	* crypto.c (hx509_crypto_encrypt): free correctly in error
1680c19800e8SDoug Rabson	path. From Andrew Bartlett.
1681c19800e8SDoug Rabson
1682c19800e8SDoug Rabson	* crypto.c: If RAND_bytes fails, then we will attempt to
1683c19800e8SDoug Rabson	double-free crypt->key.data.  From Andrew Bartlett.
1684c19800e8SDoug Rabson
1685*ae771770SStanislav Sedov2006-05-05  Love Hörnquist Åstrand  <lha@it.su.se>
1686c19800e8SDoug Rabson
1687c19800e8SDoug Rabson	* name.c: Rename u_intXX_t to uintXX_t
1688c19800e8SDoug Rabson
1689*ae771770SStanislav Sedov2006-05-03  Love Hörnquist Åstrand  <lha@it.su.se>
1690c19800e8SDoug Rabson
1691c19800e8SDoug Rabson	* TODO: More to do about the about the PKCS11 code.
1692c19800e8SDoug Rabson
1693c19800e8SDoug Rabson	* ks_p11.c: Use the prompter from the lock function.
1694c19800e8SDoug Rabson
1695c19800e8SDoug Rabson	* lock.c: Deal with that hx509_prompt.reply is no longer a
1696c19800e8SDoug Rabson	pointer.
1697c19800e8SDoug Rabson
1698c19800e8SDoug Rabson	* hx509.h: Make hx509_prompt.reply not a pointer.
1699c19800e8SDoug Rabson
1700*ae771770SStanislav Sedov2006-05-02  Love Hörnquist Åstrand  <lha@it.su.se>
1701c19800e8SDoug Rabson
1702c19800e8SDoug Rabson	* keyset.c: Sprinkle setting error strings.
1703c19800e8SDoug Rabson
1704c19800e8SDoug Rabson	* crypto.c: Sprinkle setting error strings.
1705c19800e8SDoug Rabson
1706c19800e8SDoug Rabson	* collector.c: Sprinkle setting error strings.
1707c19800e8SDoug Rabson
1708c19800e8SDoug Rabson	* cms.c: Sprinkle setting error strings.
1709c19800e8SDoug Rabson
1710*ae771770SStanislav Sedov2006-05-01  Love Hörnquist Åstrand  <lha@it.su.se>
1711c19800e8SDoug Rabson
1712c19800e8SDoug Rabson	* test_name.c: renamed one error code
1713c19800e8SDoug Rabson
1714c19800e8SDoug Rabson	* name.c: renamed one error code
1715c19800e8SDoug Rabson
1716c19800e8SDoug Rabson	* ks_p11.c: _hx509_set_cert_attribute changed signature
1717c19800e8SDoug Rabson
1718c19800e8SDoug Rabson	* hxtool.c (pcert_print): use hx509_err so I can test it
1719c19800e8SDoug Rabson
1720c19800e8SDoug Rabson	* error.c (hx509_set_error_stringv): clear errors on malloc
1721c19800e8SDoug Rabson	failure
1722c19800e8SDoug Rabson
1723c19800e8SDoug Rabson	* hx509_err.et: Add some more errors
1724c19800e8SDoug Rabson
1725c19800e8SDoug Rabson	* cert.c: Sprinkle setting error strings.
1726c19800e8SDoug Rabson
1727c19800e8SDoug Rabson	* cms.c: _hx509_path_append changed signature.
1728c19800e8SDoug Rabson
1729c19800e8SDoug Rabson	* revoke.c: changed signature of _hx509_check_key_usage
1730c19800e8SDoug Rabson
1731c19800e8SDoug Rabson	* keyset.c: changed signature of _hx509_query_match_cert
1732c19800e8SDoug Rabson
1733c19800e8SDoug Rabson	* hx509.h: Add support for error strings.
1734c19800e8SDoug Rabson
1735c19800e8SDoug Rabson	* cms.c: changed signature of _hx509_check_key_usage
1736c19800e8SDoug Rabson
1737c19800e8SDoug Rabson	* Makefile.am: ibhx509_la_files += error.c
1738c19800e8SDoug Rabson
1739c19800e8SDoug Rabson	* ks_file.c: Sprinkel setting error strings.
1740c19800e8SDoug Rabson
1741c19800e8SDoug Rabson	* cert.c: Sprinkel setting error strings.
1742c19800e8SDoug Rabson
1743c19800e8SDoug Rabson	* hx_locl.h: Add support for error strings.
1744c19800e8SDoug Rabson
1745c19800e8SDoug Rabson	* error.c: Add string error handling functions.
1746c19800e8SDoug Rabson
1747c19800e8SDoug Rabson	* keyset.c (hx509_certs_init): pass the right error code back
1748c19800e8SDoug Rabson
1749*ae771770SStanislav Sedov2006-04-30  Love Hörnquist Åstrand  <lha@it.su.se>
1750c19800e8SDoug Rabson
1751c19800e8SDoug Rabson	* revoke.c: Revert previous patch.
1752c19800e8SDoug Rabson	(hx509_ocsp_verify): new function that returns the expiration of
1753c19800e8SDoug Rabson	certificate in ocsp data-blob
1754c19800e8SDoug Rabson
1755c19800e8SDoug Rabson	* cert.c: Reverse previous patch, lets do it another way.
1756c19800e8SDoug Rabson
1757c19800e8SDoug Rabson	* cert.c (hx509_revoke_verify): update usage
1758c19800e8SDoug Rabson
1759c19800e8SDoug Rabson	* revoke.c: Make compile.
1760c19800e8SDoug Rabson
1761c19800e8SDoug Rabson	* revoke.c: Add the expiration time the crl/ocsp info expire
1762c19800e8SDoug Rabson
1763c19800e8SDoug Rabson	* name.c: Add hx509_name_is_null_p
1764c19800e8SDoug Rabson
1765c19800e8SDoug Rabson	* cert.c: remove _hx509_cert_private_sigature
1766c19800e8SDoug Rabson
1767*ae771770SStanislav Sedov2006-04-29  Love Hörnquist Åstrand  <lha@it.su.se>
1768c19800e8SDoug Rabson
1769c19800e8SDoug Rabson	* name.c: Expose more of Name.
1770c19800e8SDoug Rabson
1771c19800e8SDoug Rabson	* hxtool.c (main): add missing argument to printf
1772c19800e8SDoug Rabson
1773c19800e8SDoug Rabson	* data/openssl.cnf: Add EKU for the KDC certificate
1774c19800e8SDoug Rabson
1775c19800e8SDoug Rabson	* cert.c (hx509_cert_get_base_subject): reject un-canon proxy
1776c19800e8SDoug Rabson	certs, not the reverse
1777c19800e8SDoug Rabson	(add_to_list): constify and fix argument order to
1778c19800e8SDoug Rabson	copy_octet_string
1779c19800e8SDoug Rabson	(hx509_cert_find_subjectAltName_otherName): make work
1780c19800e8SDoug Rabson
1781*ae771770SStanislav Sedov2006-04-28  Love Hörnquist Åstrand  <lha@it.su.se>
1782c19800e8SDoug Rabson
1783c19800e8SDoug Rabson	* data/{pkinit,kdc}.{crt,key}: pkinit certificates
1784c19800e8SDoug Rabson
1785c19800e8SDoug Rabson	* data/gen-req.sh: Generate pkinit certificates.
1786c19800e8SDoug Rabson
1787c19800e8SDoug Rabson	* data/openssl.cnf: Add pkinit glue.
1788c19800e8SDoug Rabson
1789c19800e8SDoug Rabson	* cert.c (hx509_verify_hostname): implement stub function
1790c19800e8SDoug Rabson
1791*ae771770SStanislav Sedov2006-04-27  Love Hörnquist Åstrand  <lha@it.su.se>
1792c19800e8SDoug Rabson
1793c19800e8SDoug Rabson	* TODO: CRL delta support
1794c19800e8SDoug Rabson
1795*ae771770SStanislav Sedov2006-04-26 Love Hörnquist Åstrand <lha@it.su.se>
1796c19800e8SDoug Rabson
1797c19800e8SDoug Rabson	* data/.cvsignore: ignore leftover from OpenSSL cert generation
1798c19800e8SDoug Rabson
1799c19800e8SDoug Rabson	* hx509_err.et: Add name malformated error
1800c19800e8SDoug Rabson
1801c19800e8SDoug Rabson	* name.c (hx509_parse_name): don't abort on error, rather return
1802c19800e8SDoug Rabson	error
1803c19800e8SDoug Rabson
1804c19800e8SDoug Rabson	* test_name.c: Test failure parsing name.
1805c19800e8SDoug Rabson
1806c19800e8SDoug Rabson	* cert.c: When verifying certificates, store subject basename for
1807c19800e8SDoug Rabson	later consumption.
1808c19800e8SDoug Rabson
1809c19800e8SDoug Rabson	* test_name.c: test to parse and print name and check that they
1810c19800e8SDoug Rabson	are the same.
1811c19800e8SDoug Rabson
1812c19800e8SDoug Rabson	* name.c (hx509_parse_name): fix length argument to printf string
1813c19800e8SDoug Rabson
1814c19800e8SDoug Rabson	* name.c (hx509_parse_name): fix length argument to stringtooid, 1
1815c19800e8SDoug Rabson	too short.
1816c19800e8SDoug Rabson
1817c19800e8SDoug Rabson	* cert.c: remove debug printf's
1818c19800e8SDoug Rabson
1819c19800e8SDoug Rabson	* name.c (hx509_parse_name): make compile pre c99
1820c19800e8SDoug Rabson
1821c19800e8SDoug Rabson	* data/gen-req.sh: OpenSSL have a serious issue of user confusion
1822c19800e8SDoug Rabson	-subj in -ca takes the arguments in LDAP order. -subj for x509
1823c19800e8SDoug Rabson	takes it in x509 order.
1824c19800e8SDoug Rabson
1825c19800e8SDoug Rabson	* cert.c (hx509_verify_path): handle the case where the where two
1826c19800e8SDoug Rabson	proxy certs in a chain.
1827c19800e8SDoug Rabson
1828c19800e8SDoug Rabson	* test_chain.in: enable two proxy certificates in a chain test
1829c19800e8SDoug Rabson
1830c19800e8SDoug Rabson	* test_chain.in: tests proxy certificates
1831c19800e8SDoug Rabson
1832c19800e8SDoug Rabson	* data: re-gen
1833c19800e8SDoug Rabson
1834c19800e8SDoug Rabson	* data/gen-req.sh: build proxy certificates
1835c19800e8SDoug Rabson
1836c19800e8SDoug Rabson	* data/openssl.cnf: add def for proxy10_cert
1837c19800e8SDoug Rabson
1838c19800e8SDoug Rabson	* hx509_err.et: Add another proxy certificate error.
1839c19800e8SDoug Rabson
1840c19800e8SDoug Rabson	* cert.c (hx509_verify_path): Need to mangle name to remove the CN
1841c19800e8SDoug Rabson	of the subject, copying issuer only works for one level but is
1842c19800e8SDoug Rabson	better then doing no checking at all.
1843c19800e8SDoug Rabson
1844c19800e8SDoug Rabson	* hxtool.c: Add verify --allow-proxy-certificate.
1845c19800e8SDoug Rabson
1846c19800e8SDoug Rabson	* hxtool-commands.in: add verify --allow-proxy-certificate
1847c19800e8SDoug Rabson
1848c19800e8SDoug Rabson	* hx509_err.et: Add proxy certificate errors.
1849c19800e8SDoug Rabson
1850c19800e8SDoug Rabson	* cert.c: Fix comment about subject name of proxy certificate.
1851c19800e8SDoug Rabson
1852c19800e8SDoug Rabson	* test_chain.in: tests for proxy certs
1853c19800e8SDoug Rabson
1854c19800e8SDoug Rabson	* data/gen-req.sh: gen proxy and non-proxy tests certificates
1855c19800e8SDoug Rabson
1856c19800e8SDoug Rabson	* data/openssl.cnf: Add definition for proxy certs
1857c19800e8SDoug Rabson
1858c19800e8SDoug Rabson	* data/*proxy-test.*: Add proxy certificates
1859c19800e8SDoug Rabson
1860c19800e8SDoug Rabson	* cert.c (hx509_verify_path): verify proxy certificate have no san
1861c19800e8SDoug Rabson	or ian
1862c19800e8SDoug Rabson
1863c19800e8SDoug Rabson	* cert.c (hx509_verify_set_proxy_certificate): Add
1864c19800e8SDoug Rabson	(*): rename policy cert to proxy cert
1865c19800e8SDoug Rabson
1866c19800e8SDoug Rabson	* cert.c: Initial support for proxy certificates.
1867c19800e8SDoug Rabson
1868*ae771770SStanislav Sedov2006-04-24  Love Hörnquist Åstrand  <lha@it.su.se>
1869c19800e8SDoug Rabson
1870c19800e8SDoug Rabson	* hxtool.c: some error checking
1871c19800e8SDoug Rabson
1872c19800e8SDoug Rabson	* name.c: Switch over to asn1 generaed oids.
1873c19800e8SDoug Rabson
1874c19800e8SDoug Rabson	* TODO: merge with old todo file
1875c19800e8SDoug Rabson
1876*ae771770SStanislav Sedov2006-04-23 Love Hörnquist Åstrand <lha@it.su.se>
1877c19800e8SDoug Rabson
1878c19800e8SDoug Rabson	* test_query.in: make quiet
1879c19800e8SDoug Rabson
1880c19800e8SDoug Rabson	* test_req.in: SKIP test if there is no RSA support.
1881c19800e8SDoug Rabson
1882c19800e8SDoug Rabson	* hxtool.c: print dh method too
1883c19800e8SDoug Rabson
1884c19800e8SDoug Rabson	* test_chain.in: SKIP test if there is no RSA support.
1885c19800e8SDoug Rabson
1886c19800e8SDoug Rabson	* test_cms.in: SKIP test if there is no RSA support.
1887c19800e8SDoug Rabson
1888c19800e8SDoug Rabson	* test_nist.in: SKIP test if there is no RSA support.
1889c19800e8SDoug Rabson
1890*ae771770SStanislav Sedov2006-04-22  Love Hörnquist Åstrand  <lha@it.su.se>
1891c19800e8SDoug Rabson
1892c19800e8SDoug Rabson	* hxtool-commands.in: Allow passing in pool and anchor to
1893c19800e8SDoug Rabson	signedData
1894c19800e8SDoug Rabson
1895c19800e8SDoug Rabson	* hxtool.c: Allow passing in pool and anchor to signedData
1896c19800e8SDoug Rabson
1897c19800e8SDoug Rabson	* test_cms.in: Test that certs in signed data is picked up.
1898c19800e8SDoug Rabson
1899c19800e8SDoug Rabson	* hx_locl.h: Expose the path building function to internal
1900c19800e8SDoug Rabson	functions.
1901c19800e8SDoug Rabson
1902c19800e8SDoug Rabson	* cert.c: Expose the path building function to internal functions.
1903c19800e8SDoug Rabson
1904c19800e8SDoug Rabson	* hxtool-commands.in: cms-envelope: Add support for choosing the
1905c19800e8SDoug Rabson	encryption type
1906c19800e8SDoug Rabson
1907c19800e8SDoug Rabson	* hxtool.c (cms_create_enveloped): Add support for choosing the
1908c19800e8SDoug Rabson	encryption type
1909c19800e8SDoug Rabson
1910c19800e8SDoug Rabson	* test_cms.in: Test generating des-ede3 aes-128 aes-256 enveloped
1911c19800e8SDoug Rabson	data
1912c19800e8SDoug Rabson
1913c19800e8SDoug Rabson	* crypto.c: Add names to cipher types.
1914c19800e8SDoug Rabson
1915c19800e8SDoug Rabson	* cert.c (hx509_query_match_friendly_name): fix return value
1916c19800e8SDoug Rabson
1917c19800e8SDoug Rabson	* data/gen-req.sh: generate tests for enveloped data using
1918c19800e8SDoug Rabson	des-ede3 and aes256
1919c19800e8SDoug Rabson
1920c19800e8SDoug Rabson	* test_cms.in: add tests for enveloped data using des-ede3 and
1921c19800e8SDoug Rabson	aes256
1922c19800e8SDoug Rabson
1923c19800e8SDoug Rabson	* cert.c (hx509_query_match_friendly_name): New function.
1924c19800e8SDoug Rabson
1925*ae771770SStanislav Sedov2006-04-21  Love Hörnquist Åstrand  <lha@it.su.se>
1926c19800e8SDoug Rabson
1927c19800e8SDoug Rabson	* ks_p11.c: Add support for parsing slot-number.
1928c19800e8SDoug Rabson
1929c19800e8SDoug Rabson	* crypto.c (oid_private_rc2_40): simply
1930c19800e8SDoug Rabson
1931c19800e8SDoug Rabson	* crypto.c: Use oids from asn1 generator.
1932c19800e8SDoug Rabson
1933c19800e8SDoug Rabson	* ks_file.c (file_init): reset length when done with a part
1934c19800e8SDoug Rabson
1935c19800e8SDoug Rabson	* test_cms.in: check with test.combined.crt.
1936c19800e8SDoug Rabson
1937c19800e8SDoug Rabson	* data/gen-req.sh: Create test.combined.crt.
1938c19800e8SDoug Rabson
1939c19800e8SDoug Rabson	* test_cms.in: Test signed data using keyfile that is encrypted.
1940c19800e8SDoug Rabson
1941c19800e8SDoug Rabson	* ks_file.c: Remove (commented out) debug printf
1942c19800e8SDoug Rabson
1943c19800e8SDoug Rabson	* ks_file.c (parse_rsa_private_key): use EVP_get_cipherbyname
1944c19800e8SDoug Rabson
1945c19800e8SDoug Rabson	* ks_file.c (parse_rsa_private_key): make working for one
1946c19800e8SDoug Rabson	password.
1947c19800e8SDoug Rabson
1948c19800e8SDoug Rabson	* ks_file.c (parse_rsa_private_key): Implement enought for
1949c19800e8SDoug Rabson	testing.
1950c19800e8SDoug Rabson
1951c19800e8SDoug Rabson	* hx_locl.h: Add <ctype.h>
1952c19800e8SDoug Rabson
1953c19800e8SDoug Rabson	* ks_file.c: Add glue code for PEM encrypted password files.
1954c19800e8SDoug Rabson
1955c19800e8SDoug Rabson	* test_cms.in: Add commeted out password protected PEM file,
1956c19800e8SDoug Rabson	remove password for those tests that doesn't need it.
1957c19800e8SDoug Rabson
1958c19800e8SDoug Rabson	* test_cms.in: adapt test now that we can use any certificate and
1959c19800e8SDoug Rabson	trust anchor
1960c19800e8SDoug Rabson
1961c19800e8SDoug Rabson	* collector.c: handle PEM RSA PRIVATE KEY files
1962c19800e8SDoug Rabson
1963c19800e8SDoug Rabson	* cert.c: Remove unused function.
1964c19800e8SDoug Rabson
1965c19800e8SDoug Rabson	* ks_dir.c: move code here from ks_file.c now that its no longer
1966c19800e8SDoug Rabson	used.
1967c19800e8SDoug Rabson
1968c19800e8SDoug Rabson	* ks_file.c: Add support for parsing unencrypted RSA PRIVATE KEY
1969c19800e8SDoug Rabson
1970c19800e8SDoug Rabson	* crypto.c: Handle rsa private keys better.
1971c19800e8SDoug Rabson
1972*ae771770SStanislav Sedov2006-04-20  Love Hörnquist Åstrand <lha@it.su.se>
1973c19800e8SDoug Rabson
1974c19800e8SDoug Rabson	* hxtool.c: Use hx509_cms_{,un}wrap_ContentInfo
1975c19800e8SDoug Rabson
1976c19800e8SDoug Rabson	* cms.c: Make hx509_cms_{,un}wrap_ContentInfo usable in asn1
1977c19800e8SDoug Rabson	un-aware code.
1978c19800e8SDoug Rabson
1979c19800e8SDoug Rabson	* cert.c (hx509_verify_path): if trust anchor is not self signed,
1980c19800e8SDoug Rabson	don't check sig From Douglas Engert.
1981c19800e8SDoug Rabson
1982c19800e8SDoug Rabson	* test_chain.in: test "sub-cert -> sub-ca"
1983c19800e8SDoug Rabson
1984c19800e8SDoug Rabson	* crypto.c: Use the right length for the sha256 checksums.
1985c19800e8SDoug Rabson
1986*ae771770SStanislav Sedov2006-04-15  Love Hörnquist Åstrand  <lha@it.su.se>
1987c19800e8SDoug Rabson
1988c19800e8SDoug Rabson	* crypto.c: Fix breakage from sha256 code.
1989c19800e8SDoug Rabson
1990c19800e8SDoug Rabson	* crypto.c: Add SHA256 support, and symbols for the other new
1991c19800e8SDoug Rabson	SHA-2 types.
1992c19800e8SDoug Rabson
1993*ae771770SStanislav Sedov2006-04-14  Love Hörnquist Åstrand  <lha@it.su.se>
1994c19800e8SDoug Rabson
1995c19800e8SDoug Rabson	* test_cms.in: test rc2-40 rc2-64 rc2-128 enveloped data
1996c19800e8SDoug Rabson
1997c19800e8SDoug Rabson	* data/test-enveloped-rc2-{40,64,128}: add tests cases for rc2
1998c19800e8SDoug Rabson
1999c19800e8SDoug Rabson	* cms.c: Update prototypes changes for hx509_crypto_[gs]et_params.
2000c19800e8SDoug Rabson
2001c19800e8SDoug Rabson	* crypto.c: Break out the parameter handling code for encrypting
2002c19800e8SDoug Rabson	data to handle RC2.  Needed for Windows 2k pk-init support.
2003c19800e8SDoug Rabson
2004*ae771770SStanislav Sedov2006-04-04  Love Hörnquist Åstrand <lha@it.su.se>
2005c19800e8SDoug Rabson
2006c19800e8SDoug Rabson	* Makefile.am: Split libhx509_la_SOURCES into build file and
2007c19800e8SDoug Rabson	distributed files so we can avoid building prototypes for
2008c19800e8SDoug Rabson	build-files.
2009c19800e8SDoug Rabson
2010*ae771770SStanislav Sedov2006-04-03  Love Hörnquist Åstrand  <lha@it.su.se>
2011c19800e8SDoug Rabson
2012c19800e8SDoug Rabson	* TODO: split certificate request into pkcs10 and CRMF
2013c19800e8SDoug Rabson
2014c19800e8SDoug Rabson	* hxtool-commands.in: Add nonce flag to ocsp-fetch
2015c19800e8SDoug Rabson
2016c19800e8SDoug Rabson	* hxtool.c: control sending nonce
2017c19800e8SDoug Rabson
2018c19800e8SDoug Rabson	* hxtool.c (request_create): store the request in a file, no in
2019c19800e8SDoug Rabson	bitbucket.
2020c19800e8SDoug Rabson
2021c19800e8SDoug Rabson	* cert.c: expose print_cert_subject internally
2022c19800e8SDoug Rabson
2023c19800e8SDoug Rabson	* hxtool.c: Add ocsp_print.
2024c19800e8SDoug Rabson
2025c19800e8SDoug Rabson	* hxtool-commands.in: New command "ocsp-print".
2026c19800e8SDoug Rabson
2027c19800e8SDoug Rabson	* hx_locl.h: Include <hex.h>.
2028c19800e8SDoug Rabson
2029c19800e8SDoug Rabson	* revoke.c (verify_ocsp): require issuer to match too.
2030c19800e8SDoug Rabson	(free_ocsp): new function
2031c19800e8SDoug Rabson	(hx509_revoke_ocsp_print): new function, print ocsp reply
2032c19800e8SDoug Rabson
2033c19800e8SDoug Rabson	* Makefile.am: build CRMF files
2034c19800e8SDoug Rabson
2035c19800e8SDoug Rabson	* data/key.der: needed for cert request test
2036c19800e8SDoug Rabson
2037c19800e8SDoug Rabson	* test_req.in: adapt to rename of pkcs10-create to request-create
2038c19800e8SDoug Rabson
2039c19800e8SDoug Rabson	* hxtool.c: adapt to rename of pkcs10-create to request-create
2040c19800e8SDoug Rabson
2041c19800e8SDoug Rabson	* hxtool-commands.in: Rename pkcs10-create to request-create
2042c19800e8SDoug Rabson
2043c19800e8SDoug Rabson	* crypto.c: (_hx509_parse_private_key): Avoid crashing on bad input.
2044c19800e8SDoug Rabson
2045c19800e8SDoug Rabson	* hxtool.c (pkcs10_create): use opt->subject_string
2046c19800e8SDoug Rabson
2047c19800e8SDoug Rabson	* hxtool-commands.in: Add pkcs10-create --subject
2048c19800e8SDoug Rabson
2049c19800e8SDoug Rabson	* Makefile.am: Add test_req to tests.
2050c19800e8SDoug Rabson
2051c19800e8SDoug Rabson	* test_req.in: Test for pkcs10 commands.
2052c19800e8SDoug Rabson
2053c19800e8SDoug Rabson	* name.c (hx509_parse_name): new function.
2054c19800e8SDoug Rabson
2055c19800e8SDoug Rabson	* hxtool.c (pkcs10_create): implement
2056c19800e8SDoug Rabson
2057c19800e8SDoug Rabson	* hxtool-commands.in (pkcs10-create): Add arguments
2058c19800e8SDoug Rabson
2059c19800e8SDoug Rabson	* crypto.c: Add _hx509_private_key2SPKI and support
2060c19800e8SDoug Rabson	functions (only support RSA for now).
2061c19800e8SDoug Rabson
2062*ae771770SStanislav Sedov2006-04-02  Love Hörnquist Åstrand  <lha@it.su.se>
2063c19800e8SDoug Rabson
2064c19800e8SDoug Rabson	* hxtool-commands.in: Add pkcs10-create command.
2065c19800e8SDoug Rabson
2066c19800e8SDoug Rabson	* hx509.h: Add hx509_request.
2067c19800e8SDoug Rabson
2068c19800e8SDoug Rabson	* TODO: more stuff
2069c19800e8SDoug Rabson
2070c19800e8SDoug Rabson	* Makefile.am: Add req.c
2071c19800e8SDoug Rabson
2072c19800e8SDoug Rabson	* req.c: Create certificate requests, prototype converts the
2073c19800e8SDoug Rabson	request in a pkcs10 packet.
2074c19800e8SDoug Rabson
2075c19800e8SDoug Rabson	* hxtool.c: Add pkcs10_create
2076c19800e8SDoug Rabson
2077c19800e8SDoug Rabson	* name.c (hx509_name_copy): new function.
2078c19800e8SDoug Rabson
2079*ae771770SStanislav Sedov2006-04-01  Love Hörnquist Åstrand  <lha@it.su.se>
2080c19800e8SDoug Rabson
2081c19800e8SDoug Rabson	* TODO: fill out what do
2082c19800e8SDoug Rabson
2083c19800e8SDoug Rabson	* hxtool-commands.in: add pkcs10-print
2084c19800e8SDoug Rabson
2085c19800e8SDoug Rabson	* hx_locl.h: Include <pkcs10_asn1.h>.
2086c19800e8SDoug Rabson
2087c19800e8SDoug Rabson	* pkcs10.asn1: PKCS#10
2088c19800e8SDoug Rabson
2089c19800e8SDoug Rabson	* hxtool.c (pkcs10_print): new function.
2090c19800e8SDoug Rabson
2091c19800e8SDoug Rabson	* test_chain.in: test ocsp keyhash
2092c19800e8SDoug Rabson
2093c19800e8SDoug Rabson	* data: generate ocsp keyhash version too
2094c19800e8SDoug Rabson
2095c19800e8SDoug Rabson	* revoke.c (load_ocsp): test that we got back a BasicReponse
2096c19800e8SDoug Rabson
2097c19800e8SDoug Rabson	* ocsp.asn1: Add asn1_id_pkix_ocsp*.
2098c19800e8SDoug Rabson
2099c19800e8SDoug Rabson	* Makefile.am: Add asn1_id_pkix_ocsp*.
2100c19800e8SDoug Rabson
2101c19800e8SDoug Rabson	* cert.c: Add HX509_QUERY_MATCH_KEY_HASH_SHA1
2102c19800e8SDoug Rabson
2103c19800e8SDoug Rabson	* hx_locl.h: Add HX509_QUERY_MATCH_KEY_HASH_SHA1
2104c19800e8SDoug Rabson
2105c19800e8SDoug Rabson	* revoke.c: Support OCSPResponderID.byKey, indent.
2106c19800e8SDoug Rabson
2107c19800e8SDoug Rabson	* revoke.c (hx509_ocsp_request): Add nonce to ocsp request.
2108c19800e8SDoug Rabson
2109c19800e8SDoug Rabson	* hxtool.c: Add nonce to ocsp request.
2110c19800e8SDoug Rabson
2111c19800e8SDoug Rabson	* test_chain.in: Added crl tests
2112c19800e8SDoug Rabson
2113c19800e8SDoug Rabson	* data/nist-data: rename missing-crl to missing-revoke
2114c19800e8SDoug Rabson
2115c19800e8SDoug Rabson	* data: make ca use openssl ca command so we can add ocsp tests,
2116c19800e8SDoug Rabson	and regen certs
2117c19800e8SDoug Rabson
2118c19800e8SDoug Rabson	* test_chain.in: Add revoked ocsp cert test
2119c19800e8SDoug Rabson
2120c19800e8SDoug Rabson	* cert.c: rename missing-crl to missing-revoke
2121c19800e8SDoug Rabson
2122c19800e8SDoug Rabson	* revoke.c: refactor code, fix a un-init-ed variable
2123c19800e8SDoug Rabson
2124c19800e8SDoug Rabson	* test_chain.in: rename missing-crl to missing-revoke add ocsp
2125c19800e8SDoug Rabson	tests
2126c19800e8SDoug Rabson
2127c19800e8SDoug Rabson	* test_cms.in: rename missing-crl to missing-revoke
2128c19800e8SDoug Rabson
2129c19800e8SDoug Rabson	* hxtool.c: rename missing-crl to missing-revoke
2130c19800e8SDoug Rabson
2131c19800e8SDoug Rabson	* hxtool-commands.in: rename missing-crl to missing-revoke
2132c19800e8SDoug Rabson
2133c19800e8SDoug Rabson	* revoke.c: Plug one memory leak.
2134c19800e8SDoug Rabson
2135c19800e8SDoug Rabson	* revoke.c: Renamed generic CRL related errors.
2136c19800e8SDoug Rabson
2137c19800e8SDoug Rabson	* hx509_err.et: Comments and renamed generic CRL related errors
2138c19800e8SDoug Rabson
2139c19800e8SDoug Rabson	* revoke.c: Add ocsp checker.
2140c19800e8SDoug Rabson
2141c19800e8SDoug Rabson	* ocsp.asn1: Add id-kp-OCSPSigning
2142c19800e8SDoug Rabson
2143c19800e8SDoug Rabson	* hxtool-commands.in: add url-path argument to ocsp-fetch
2144c19800e8SDoug Rabson
2145c19800e8SDoug Rabson	* hxtool.c: implement ocsp-fetch
2146c19800e8SDoug Rabson
2147c19800e8SDoug Rabson	* cert.c: Use HX509_DEFAULT_OCSP_TIME_DIFF.
2148c19800e8SDoug Rabson
2149c19800e8SDoug Rabson	* hx_locl.h: Add ocsp_time_diff to hx509_context
2150c19800e8SDoug Rabson
2151c19800e8SDoug Rabson	* crypto.c (_hx509_verify_signature_bitstring): new function,
2152c19800e8SDoug Rabson	commonly use when checking certificates
2153c19800e8SDoug Rabson
2154c19800e8SDoug Rabson	* cms.c (hx509_cms_envelope_1): check for internal ASN.1 encoder
2155c19800e8SDoug Rabson	error
2156c19800e8SDoug Rabson
2157c19800e8SDoug Rabson	* cert.c: Add ocsp glue, use new
2158c19800e8SDoug Rabson	_hx509_verify_signature_bitstring, add eku checking function.
2159c19800e8SDoug Rabson
2160*ae771770SStanislav Sedov2006-03-31  Love Hörnquist Åstrand  <lha@it.su.se>
2161c19800e8SDoug Rabson
2162c19800e8SDoug Rabson	* Makefile.am: add id_kp_OCSPSigning.x
2163c19800e8SDoug Rabson
2164c19800e8SDoug Rabson	* revoke.c: Pick out certs in ocsp response
2165c19800e8SDoug Rabson
2166c19800e8SDoug Rabson	* TODO: list of stuff to verify
2167c19800e8SDoug Rabson
2168c19800e8SDoug Rabson	* revoke.c: Add code to load OCSPBasicOCSPResponse files, reload
2169c19800e8SDoug Rabson	crl when its changed on disk.
2170c19800e8SDoug Rabson
2171c19800e8SDoug Rabson	* cert.c: Update for ocsp merge. handle building path w/o
2172c19800e8SDoug Rabson	subject (using subject key id)
2173c19800e8SDoug Rabson
2174c19800e8SDoug Rabson	* ks_p12.c: _hx509_map_file changed prototype.
2175c19800e8SDoug Rabson
2176c19800e8SDoug Rabson	* file.c: _hx509_map_file changed prototype, returns struct stat
2177c19800e8SDoug Rabson	if requested.
2178c19800e8SDoug Rabson
2179c19800e8SDoug Rabson	* ks_file.c: _hx509_map_file changed prototype.
2180c19800e8SDoug Rabson
2181c19800e8SDoug Rabson	* hxtool.c: Add stub for ocsp-fetch, _hx509_map_file changed
2182c19800e8SDoug Rabson	prototype, add ocsp parsing to verify command.
2183c19800e8SDoug Rabson
2184c19800e8SDoug Rabson	* hx_locl.h: rename HX509_CTX_CRL_MISSING_OK to
2185c19800e8SDoug Rabson	HX509_CTX_VERIFY_MISSING_OK now that we have OCSP glue
2186c19800e8SDoug Rabson
2187*ae771770SStanislav Sedov2006-03-30  Love Hörnquist Åstrand  <lha@it.su.se>
2188c19800e8SDoug Rabson
2189c19800e8SDoug Rabson	* hx_locl.h: Add <krb5-types.h> to make it compile on Solaris,
2190c19800e8SDoug Rabson	from Alex V. Labuta.
2191c19800e8SDoug Rabson
2192*ae771770SStanislav Sedov2006-03-28  Love Hörnquist Åstrand  <lha@it.su.se>
2193c19800e8SDoug Rabson
2194c19800e8SDoug Rabson	* crypto.c (_hx509_pbe_decrypt): try all passwords, not just the
2195c19800e8SDoug Rabson	first one.
2196c19800e8SDoug Rabson
2197*ae771770SStanislav Sedov2006-03-27  Love Hörnquist Åstrand  <lha@it.su.se>
2198c19800e8SDoug Rabson
2199c19800e8SDoug Rabson	* print.c (check_altName): Print the othername oid.
2200c19800e8SDoug Rabson
2201c19800e8SDoug Rabson	* crypto.c: Manual page claims RSA_public_decrypt will return -1
2202c19800e8SDoug Rabson	on error, lets check for that
2203c19800e8SDoug Rabson
2204c19800e8SDoug Rabson	* crypto.c (_hx509_pbe_decrypt): also try the empty password
2205c19800e8SDoug Rabson
2206c19800e8SDoug Rabson	* collector.c (match_localkeyid): no need to add back the cert to
2207c19800e8SDoug Rabson	the cert pool, its already there.
2208c19800e8SDoug Rabson
2209c19800e8SDoug Rabson	* crypto.c: Add REQUIRE_SIGNER
2210c19800e8SDoug Rabson
2211c19800e8SDoug Rabson	* cert.c (hx509_cert_free): ok to free NULL
2212c19800e8SDoug Rabson
2213c19800e8SDoug Rabson	* hx509_err.et: Add new error code SIGNATURE_WITHOUT_SIGNER.
2214c19800e8SDoug Rabson
2215c19800e8SDoug Rabson	* name.c (_hx509_name_ds_cmp): make DirectoryString case
2216c19800e8SDoug Rabson	insenstive
2217c19800e8SDoug Rabson	(hx509_name_to_string): less spacing
2218c19800e8SDoug Rabson
2219c19800e8SDoug Rabson	* cms.c: Check for signature error, check consitency of error
2220c19800e8SDoug Rabson
2221*ae771770SStanislav Sedov2006-03-26  Love Hörnquist Åstrand  <lha@it.su.se>
2222c19800e8SDoug Rabson
2223c19800e8SDoug Rabson	* collector.c (_hx509_collector_alloc): handle errors
2224c19800e8SDoug Rabson
2225c19800e8SDoug Rabson	* cert.c (hx509_query_alloc): allocate slight more more then a
2226c19800e8SDoug Rabson	sizeof(pointer)
2227c19800e8SDoug Rabson
2228c19800e8SDoug Rabson	* crypto.c (_hx509_private_key_assign_key_file): ask for password
2229c19800e8SDoug Rabson	if nothing matches.
2230c19800e8SDoug Rabson
2231c19800e8SDoug Rabson	* cert.c: Expose more of the hx509_query interface.
2232c19800e8SDoug Rabson
2233c19800e8SDoug Rabson	* collector.c: hx509_certs_find is now exposed.
2234c19800e8SDoug Rabson
2235c19800e8SDoug Rabson	* cms.c: hx509_certs_find is now exposed.
2236c19800e8SDoug Rabson
2237c19800e8SDoug Rabson	* revoke.c: hx509_certs_find is now exposed.
2238c19800e8SDoug Rabson
2239c19800e8SDoug Rabson	* keyset.c (hx509_certs_free): allow free-ing NULL
2240c19800e8SDoug Rabson	(hx509_certs_find): expose
2241c19800e8SDoug Rabson	(hx509_get_one_cert): new function
2242c19800e8SDoug Rabson
2243c19800e8SDoug Rabson	* hxtool.c: hx509_certs_find is now exposed.
2244c19800e8SDoug Rabson
2245c19800e8SDoug Rabson	* hx_locl.h: Remove hx509_query, its exposed now.
2246c19800e8SDoug Rabson
2247c19800e8SDoug Rabson	* hx509.h: Add hx509_query.
2248c19800e8SDoug Rabson
2249*ae771770SStanislav Sedov2006-02-22  Love Hörnquist Åstrand  <lha@it.su.se>
2250c19800e8SDoug Rabson
2251c19800e8SDoug Rabson	* cert.c: Add exceptions for null (empty) subjectNames
2252c19800e8SDoug Rabson
2253c19800e8SDoug Rabson	* data/nist-data: Add some more name constraints tests.
2254c19800e8SDoug Rabson
2255c19800e8SDoug Rabson	* data/nist-data: Add some of the test from 4.13 Name Constraints.
2256c19800e8SDoug Rabson
2257c19800e8SDoug Rabson	* cert.c: Name constraits needs to be evaluated in block as they
2258c19800e8SDoug Rabson	appear in the certificates, they can not be joined to one
2259c19800e8SDoug Rabson	list. One example of this is:
2260c19800e8SDoug Rabson
2261c19800e8SDoug Rabson	- cert is cn=foo,dc=bar,dc=baz
2262c19800e8SDoug Rabson	- subca is dc=foo,dc=baz with name restriction dc=kaka,dc=baz
2263c19800e8SDoug Rabson	- ca is dc=baz with name restriction dc=baz
2264c19800e8SDoug Rabson
2265c19800e8SDoug Rabson	If the name restrictions are merged to a list, the certificate
2266c19800e8SDoug Rabson	will pass this test.
2267c19800e8SDoug Rabson
2268*ae771770SStanislav Sedov2006-02-14 Love Hörnquist Åstrand <lha@it.su.se>
2269c19800e8SDoug Rabson
2270c19800e8SDoug Rabson	* cert.c: Handle more name constraints cases.
2271c19800e8SDoug Rabson
2272c19800e8SDoug Rabson	* crypto.c (dsa_verify_signature): if test if malloc failed
2273c19800e8SDoug Rabson
2274*ae771770SStanislav Sedov2006-01-31  Love Hörnquist Åstrand  <lha@it.su.se>
2275c19800e8SDoug Rabson
2276c19800e8SDoug Rabson	* cms.c: Drop partial pkcs12 string2key implementation.
2277c19800e8SDoug Rabson
2278*ae771770SStanislav Sedov2006-01-20  Love Hörnquist Åstrand  <lha@it.su.se>
2279c19800e8SDoug Rabson
2280c19800e8SDoug Rabson	* data/nist-data: Add commited out DSA tests (they fail).
2281c19800e8SDoug Rabson
2282c19800e8SDoug Rabson	* data/nist-data: Add 4.2 Validity Periods.
2283c19800e8SDoug Rabson
2284c19800e8SDoug Rabson	* test_nist.in: Make less verbose to use.
2285c19800e8SDoug Rabson
2286c19800e8SDoug Rabson	* Makefile.am: Add test_nist_cert.
2287c19800e8SDoug Rabson
2288c19800e8SDoug Rabson	* data/nist-data: Add some more CRL-tests.
2289c19800e8SDoug Rabson
2290c19800e8SDoug Rabson	* test_nist.in: Print $id instead of . when running the tests.
2291c19800e8SDoug Rabson
2292c19800e8SDoug Rabson	* test_nist.in: Drop verifying certifiates, its done in another
2293c19800e8SDoug Rabson	test now.
2294c19800e8SDoug Rabson
2295c19800e8SDoug Rabson	* data/nist-data: fixup kill-rectangle leftovers
2296c19800e8SDoug Rabson
2297c19800e8SDoug Rabson	* data/nist-data: Drop verifying certifiates, its done in another
2298c19800e8SDoug Rabson	test now.  Add more crl tests. comment out all unused tests.
2299c19800e8SDoug Rabson
2300c19800e8SDoug Rabson	* test_nist_cert.in: test parse all nist certs
2301c19800e8SDoug Rabson
2302*ae771770SStanislav Sedov2006-01-19  Love Hörnquist Åstrand  <lha@it.su.se>
2303c19800e8SDoug Rabson
2304c19800e8SDoug Rabson	* hx509_err.et: Add HX509_CRL_UNKNOWN_EXTENSION.
2305c19800e8SDoug Rabson
2306c19800e8SDoug Rabson	* revoke.c: Check for unknown extentions in CRLs and CRLEntries.
2307c19800e8SDoug Rabson
2308c19800e8SDoug Rabson	* test_nist.in: Parse new format to handle CRL info.
2309c19800e8SDoug Rabson
2310c19800e8SDoug Rabson	* test_chain.in: Add --missing-crl.
2311c19800e8SDoug Rabson
2312c19800e8SDoug Rabson	* name.c (hx509_unparse_der_name): Rename from hx509_parse_name.
2313c19800e8SDoug Rabson	(_hx509_unparse_Name): Add.
2314c19800e8SDoug Rabson
2315c19800e8SDoug Rabson	* hxtool-commands.in: Add --missing-crl to verify commands.
2316c19800e8SDoug Rabson
2317c19800e8SDoug Rabson	* hx509_err.et: Add CRL errors.
2318c19800e8SDoug Rabson
2319c19800e8SDoug Rabson	* cert.c (hx509_context_set_missing_crl): new function Add CRL
2320c19800e8SDoug Rabson	handling.
2321c19800e8SDoug Rabson
2322c19800e8SDoug Rabson	* hx_locl.h: Add HX509_CTX_CRL_MISSING_OK.
2323c19800e8SDoug Rabson
2324c19800e8SDoug Rabson	* revoke.c: Parse and verify CRLs (simplistic).
2325c19800e8SDoug Rabson
2326c19800e8SDoug Rabson	* hxtool.c: Parse CRL info.
2327c19800e8SDoug Rabson
2328c19800e8SDoug Rabson	* data/nist-data: Change format so we can deal with CRLs, also
2329c19800e8SDoug Rabson	note the test-id from PKITS.
2330c19800e8SDoug Rabson
2331c19800e8SDoug Rabson	* data: regenerate test
2332c19800e8SDoug Rabson
2333c19800e8SDoug Rabson	* data/gen-req.sh: use static-file to generate tests
2334c19800e8SDoug Rabson
2335c19800e8SDoug Rabson	* data/static-file: new file to use for commited tests
2336c19800e8SDoug Rabson
2337c19800e8SDoug Rabson	* test_cms.in: Use static file, add --missing-crl.
2338c19800e8SDoug Rabson
2339*ae771770SStanislav Sedov2006-01-18  Love Hörnquist Åstrand <lha@it.su.se>
2340c19800e8SDoug Rabson
2341c19800e8SDoug Rabson	* print.c: Its cRLReason, not cRLReasons.
2342c19800e8SDoug Rabson
2343c19800e8SDoug Rabson	* hxtool.c: Attach revoke context to verify context.
2344c19800e8SDoug Rabson
2345c19800e8SDoug Rabson	* data/nist-data: change syntax to make match better with crl
2346c19800e8SDoug Rabson	checks
2347c19800e8SDoug Rabson
2348c19800e8SDoug Rabson	* cert.c: Verify no certificates has been revoked with the new
2349c19800e8SDoug Rabson	revoke interface.
2350c19800e8SDoug Rabson
2351c19800e8SDoug Rabson	* Makefile.am: libhx509_la_SOURCES += revoke.c
2352c19800e8SDoug Rabson
2353c19800e8SDoug Rabson	* revoke.c: Add framework for handling CRLs.
2354c19800e8SDoug Rabson
2355c19800e8SDoug Rabson	* hx509.h: Add hx509_revoke_ctx.
2356c19800e8SDoug Rabson
2357*ae771770SStanislav Sedov2006-01-13  Love Hörnquist Åstrand  <lha@it.su.se>
2358c19800e8SDoug Rabson
2359c19800e8SDoug Rabson	* delete crypto_headers.h, use global file instead.
2360c19800e8SDoug Rabson
2361c19800e8SDoug Rabson	* crypto.c (PBE_string2key): libdes now supports PKCS12_key_gen
2362c19800e8SDoug Rabson
2363*ae771770SStanislav Sedov2006-01-12  Love Hörnquist Åstrand  <lha@it.su.se>
2364c19800e8SDoug Rabson
2365c19800e8SDoug Rabson	* crypto_headers.h: Need BN_is_negative too.
2366c19800e8SDoug Rabson
2367*ae771770SStanislav Sedov2006-01-11  Love Hörnquist Åstrand  <lha@it.su.se>
2368c19800e8SDoug Rabson
2369c19800e8SDoug Rabson	* ks_p11.c (p11_rsa_public_decrypt): since is wrong, don't provide
2370c19800e8SDoug Rabson	it. PKCS11 can't do public_decrypt, it support verify though. All
2371c19800e8SDoug Rabson	this doesn't matter, since the code never go though this path.
2372c19800e8SDoug Rabson
2373c19800e8SDoug Rabson	* crypto_headers.h: Provide glue to compile with less warnings
2374c19800e8SDoug Rabson	with OpenSSL
2375c19800e8SDoug Rabson
2376*ae771770SStanislav Sedov2006-01-08  Love Hörnquist Åstrand  <lha@it.su.se>
2377c19800e8SDoug Rabson
2378c19800e8SDoug Rabson	* Makefile.am: Depend on LIB_des
2379c19800e8SDoug Rabson
2380c19800e8SDoug Rabson	* lock.c: Use "crypto_headers.h".
2381c19800e8SDoug Rabson
2382c19800e8SDoug Rabson	* crypto_headers.h: Include the two diffrent implementation of
2383c19800e8SDoug Rabson	crypto headers.
2384c19800e8SDoug Rabson
2385c19800e8SDoug Rabson	* cert.c: Use "crypto-headers.h". Load ENGINE configuration.
2386c19800e8SDoug Rabson
2387c19800e8SDoug Rabson	* crypto.c: Make compile with both OpenSSL and heimdal libdes.
2388c19800e8SDoug Rabson
2389c19800e8SDoug Rabson	* ks_p11.c: Add code for public key decryption (not supported yet)
2390c19800e8SDoug Rabson	and use "crypto-headers.h".
2391c19800e8SDoug Rabson
2392c19800e8SDoug Rabson
2393*ae771770SStanislav Sedov2006-01-04 Love Hörnquist Åstrand <lha@it.su.se>
2394c19800e8SDoug Rabson
2395c19800e8SDoug Rabson	* add a hx509_context where we can store configuration
2396c19800e8SDoug Rabson
2397c19800e8SDoug Rabson	* p11.c,Makefile.am: pkcs11 is now supported by library, remove
2398c19800e8SDoug Rabson	old files.
2399c19800e8SDoug Rabson
2400c19800e8SDoug Rabson	* ks_p11.c: more paranoid on refcount, set refcounter ealier,
2401c19800e8SDoug Rabson	reset pointers after free
2402c19800e8SDoug Rabson
2403c19800e8SDoug Rabson	* collector.c (struct private_key): remove temporary key data
2404c19800e8SDoug Rabson	storage, convert directly to a key
2405c19800e8SDoug Rabson	(match_localkeyid): match certificate and key using localkeyid
2406c19800e8SDoug Rabson	(match_keys): match certificate and key using _hx509_match_keys
2407c19800e8SDoug Rabson	(_hx509_collector_collect): rewrite to use match_keys and
2408c19800e8SDoug Rabson	match_localkeyid
2409c19800e8SDoug Rabson
2410c19800e8SDoug Rabson	* crypto.c (_hx509_match_keys): function that determins if a
2411c19800e8SDoug Rabson	private key matches a certificate, used when there is no
2412c19800e8SDoug Rabson	localkeyid.
2413c19800e8SDoug Rabson	(*) reset free pointer
2414c19800e8SDoug Rabson
2415c19800e8SDoug Rabson	* ks_file.c: Rewrite to use collector and mapping support
2416c19800e8SDoug Rabson	function.
2417c19800e8SDoug Rabson
2418c19800e8SDoug Rabson	* ks_p11.c (rsa_pkcs1_method): constify
2419c19800e8SDoug Rabson
2420c19800e8SDoug Rabson	* ks_p11.c: drop extra wrapping of p11_init
2421c19800e8SDoug Rabson
2422c19800e8SDoug Rabson	* crypto.c (_hx509_private_key_assign_key_file): use function to
2423c19800e8SDoug Rabson	extact rsa key
2424c19800e8SDoug Rabson
2425c19800e8SDoug Rabson	* cert.c: Revert previous, refcounter is unsigned, so it can never
2426c19800e8SDoug Rabson	be negative.
2427c19800e8SDoug Rabson
2428c19800e8SDoug Rabson	* cert.c (hx509_cert_ref): more refcount paranoia
2429c19800e8SDoug Rabson
2430c19800e8SDoug Rabson	* ks_p11.c: Implement rsa_private_decrypt and add stubs for public
2431c19800e8SDoug Rabson	ditto.
2432c19800e8SDoug Rabson
2433c19800e8SDoug Rabson	* ks_p11.c: Less printf, less memory leaks.
2434c19800e8SDoug Rabson
2435c19800e8SDoug Rabson	* ks_p11.c: Implement signing using pkcs11.
2436c19800e8SDoug Rabson
2437c19800e8SDoug Rabson	* ks_p11.c: Partly assign private key, enough to complete
2438c19800e8SDoug Rabson	collection, but not any crypto functionallity.
2439c19800e8SDoug Rabson
2440c19800e8SDoug Rabson	* collector.c: Use hx509_private_key to assign private keys.
2441c19800e8SDoug Rabson
2442c19800e8SDoug Rabson	* crypto.c: Remove most of the EVP_PKEY code, and use RSA
2443c19800e8SDoug Rabson	directly, this temporary removes DSA support.
2444c19800e8SDoug Rabson
2445c19800e8SDoug Rabson	* hxtool.c (print_f): print if there is a friendly name and if
2446c19800e8SDoug Rabson	there is a private key
2447c19800e8SDoug Rabson
2448*ae771770SStanislav Sedov2006-01-03  Love Hörnquist Åstrand  <lha@it.su.se>
2449c19800e8SDoug Rabson
2450c19800e8SDoug Rabson	* name.c: Avoid warning from missing __attribute__((noreturn))
2451c19800e8SDoug Rabson
2452c19800e8SDoug Rabson	* lock.c (_hx509_lock_unlock_certs): return unlock certificates
2453c19800e8SDoug Rabson
2454c19800e8SDoug Rabson	* crypto.c (_hx509_private_key_assign_ptr): new function, exposes
2455c19800e8SDoug Rabson	EVP_PKEY
2456c19800e8SDoug Rabson	(_hx509_private_key_assign_key_file): remember to free private key
2457c19800e8SDoug Rabson	if there is one.
2458c19800e8SDoug Rabson
2459c19800e8SDoug Rabson	* cert.c (_hx509_abort): add newline to output and flush stdout
2460c19800e8SDoug Rabson
2461c19800e8SDoug Rabson	* Makefile.am: libhx509_la_SOURCES += collector.c
2462c19800e8SDoug Rabson
2463c19800e8SDoug Rabson	* hx_locl.h: forward type declaration of struct hx509_collector.
2464c19800e8SDoug Rabson
2465c19800e8SDoug Rabson	* collector.c: Support functions to collect certificates and
2466c19800e8SDoug Rabson	private keys and then match them.
2467c19800e8SDoug Rabson
2468c19800e8SDoug Rabson	* ks_p12.c: Use the new hx509_collector support functions.
2469c19800e8SDoug Rabson
2470c19800e8SDoug Rabson	* ks_p11.c: Add enough glue to support certificate iteration.
2471c19800e8SDoug Rabson
2472c19800e8SDoug Rabson	* test_nist_pkcs12.in: Less verbose.
2473c19800e8SDoug Rabson
2474c19800e8SDoug Rabson	* cert.c (hx509_cert_free): if there is a private key assosited
2475c19800e8SDoug Rabson	with this cert, free it
2476c19800e8SDoug Rabson
2477c19800e8SDoug Rabson	* print.c: Use _hx509_abort.
2478c19800e8SDoug Rabson
2479c19800e8SDoug Rabson	* ks_p12.c: Use _hx509_abort.
2480c19800e8SDoug Rabson
2481c19800e8SDoug Rabson	* hxtool.c: Use _hx509_abort.
2482c19800e8SDoug Rabson
2483c19800e8SDoug Rabson	* crypto.c: Use _hx509_abort.
2484c19800e8SDoug Rabson
2485c19800e8SDoug Rabson	* cms.c: Use _hx509_abort.
2486c19800e8SDoug Rabson
2487c19800e8SDoug Rabson	* cert.c: Use _hx509_abort.
2488c19800e8SDoug Rabson
2489c19800e8SDoug Rabson	* name.c: use _hx509_abort
2490c19800e8SDoug Rabson
2491*ae771770SStanislav Sedov2006-01-02  Love Hörnquist Åstrand  <lha@it.su.se>
2492c19800e8SDoug Rabson
2493c19800e8SDoug Rabson	* name.c (hx509_name_to_string): don't cut bmpString in half.
2494c19800e8SDoug Rabson
2495c19800e8SDoug Rabson	* name.c (hx509_name_to_string): don't overwrite with 1 byte with
2496c19800e8SDoug Rabson	bmpString.
2497c19800e8SDoug Rabson
2498c19800e8SDoug Rabson	* ks_file.c (parse_certificate): avoid stomping before array
2499c19800e8SDoug Rabson
2500c19800e8SDoug Rabson	* name.c (oidtostring): avoid leaking memory
2501c19800e8SDoug Rabson
2502c19800e8SDoug Rabson	* keyset.c: Add _hx509_ks_dir_register.
2503c19800e8SDoug Rabson
2504c19800e8SDoug Rabson	* Makefile.am (libhx509_la_SOURCES): += ks_dir.c
2505c19800e8SDoug Rabson
2506c19800e8SDoug Rabson	* hxtool-commands.in: Remove pkcs11.
2507c19800e8SDoug Rabson
2508c19800e8SDoug Rabson	* hxtool.c: Remove pcert_pkcs11.
2509c19800e8SDoug Rabson
2510c19800e8SDoug Rabson	* ks_file.c: Factor out certificate parsing code.
2511c19800e8SDoug Rabson
2512c19800e8SDoug Rabson	* ks_dir.c: Add new keystore that treats all files in a directory
2513c19800e8SDoug Rabson	a keystore, useful for regression tests.
2514c19800e8SDoug Rabson
2515*ae771770SStanislav Sedov2005-12-12  Love Hörnquist Åstrand  <lha@it.su.se>
2516c19800e8SDoug Rabson
2517c19800e8SDoug Rabson	* test_nist_pkcs12.in: Test parse PKCS12 files from NIST.
2518c19800e8SDoug Rabson
2519c19800e8SDoug Rabson	* data/nist-data: Can handle DSA certificate.
2520c19800e8SDoug Rabson
2521c19800e8SDoug Rabson	* hxtool.c: Print error code on failure.
2522c19800e8SDoug Rabson
2523*ae771770SStanislav Sedov2005-10-29  Love Hörnquist Åstrand  <lha@it.su.se>
2524c19800e8SDoug Rabson
2525c19800e8SDoug Rabson	* crypto.c: Support DSA signature operations.
2526c19800e8SDoug Rabson
2527*ae771770SStanislav Sedov2005-10-04  Love Hörnquist Åstrand  <lha@it.su.se>
2528c19800e8SDoug Rabson
2529c19800e8SDoug Rabson	* print.c: Validate that issuerAltName and subjectAltName isn't
2530c19800e8SDoug Rabson	empty.
2531c19800e8SDoug Rabson
2532*ae771770SStanislav Sedov2005-09-14  Love Hörnquist Åstrand  <lha@it.su.se>
2533c19800e8SDoug Rabson
2534c19800e8SDoug Rabson	* p11.c: Cast to unsigned char to avoid warning.
2535c19800e8SDoug Rabson
2536c19800e8SDoug Rabson	* keyset.c: Register pkcs11 module.
2537c19800e8SDoug Rabson
2538c19800e8SDoug Rabson	* Makefile.am: Add ks_p11.c, install hxtool.
2539c19800e8SDoug Rabson
2540c19800e8SDoug Rabson	* ks_p11.c: Starting point of a pkcs11 module.
2541c19800e8SDoug Rabson
2542*ae771770SStanislav Sedov2005-09-04  Love Hörnquist Åstrand  <lha@it.su.se>
2543c19800e8SDoug Rabson
2544c19800e8SDoug Rabson	* lock.c: Implement prompter.
2545c19800e8SDoug Rabson
2546c19800e8SDoug Rabson	* hxtool-commands.in: add --content to print
2547c19800e8SDoug Rabson
2548c19800e8SDoug Rabson	* hxtool.c: Split verify and print.
2549c19800e8SDoug Rabson
2550c19800e8SDoug Rabson	* cms.c: _hx509_pbe_decrypt now takes a hx509_lock.
2551c19800e8SDoug Rabson
2552c19800e8SDoug Rabson	* crypto.c: Make _hx509_pbe_decrypt take a hx509_lock, workaround
2553c19800e8SDoug Rabson	for empty password.
2554c19800e8SDoug Rabson
2555c19800e8SDoug Rabson	* name.c: Add DC, handle all Directory strings, fix signless
2556c19800e8SDoug Rabson	problems.
2557c19800e8SDoug Rabson
2558*ae771770SStanislav Sedov2005-09-03  Love Hörnquist Åstrand  <lha@it.su.se>
2559c19800e8SDoug Rabson
2560c19800e8SDoug Rabson	* test_query.in: Pass in --pass to all commands.
2561c19800e8SDoug Rabson
2562c19800e8SDoug Rabson	* hxtool.c: Use option --pass.
2563c19800e8SDoug Rabson
2564c19800e8SDoug Rabson	* hxtool-commands.in: Add --pass to all commands.
2565c19800e8SDoug Rabson
2566c19800e8SDoug Rabson	* hx509_err.et: add UNKNOWN_LOCK_COMMAND and CRYPTO_NO_PROMPTER
2567c19800e8SDoug Rabson
2568c19800e8SDoug Rabson	* test_cms.in: pass in password to cms-create-sd
2569c19800e8SDoug Rabson
2570c19800e8SDoug Rabson	* crypto.c: Abstract out PBE_string2key so I can add PBE2 s2k
2571c19800e8SDoug Rabson	later.  Avoid signess warnings with OpenSSL.
2572c19800e8SDoug Rabson
2573c19800e8SDoug Rabson	* cms.c: Use void * instead of char * for to avoid signedness
2574c19800e8SDoug Rabson	issues
2575c19800e8SDoug Rabson
2576c19800e8SDoug Rabson	* cert.c (hx509_cert_get_attribute): remove const, its not
2577c19800e8SDoug Rabson
2578c19800e8SDoug Rabson	* ks_p12.c: Cast size_t to unsigned long when print.
2579c19800e8SDoug Rabson
2580c19800e8SDoug Rabson	* name.c: Fix signedness warning.
2581c19800e8SDoug Rabson
2582c19800e8SDoug Rabson	* test_query.in: Use echo, the function check isn't defined here.
2583c19800e8SDoug Rabson
2584*ae771770SStanislav Sedov2005-08-11  Love Hörnquist Åstrand  <lha@it.su.se>
2585c19800e8SDoug Rabson
2586c19800e8SDoug Rabson	* hxtool-commands.in: Add more options that was missing.
2587c19800e8SDoug Rabson
2588*ae771770SStanislav Sedov2005-07-28  Love Hörnquist Åstrand  <lha@it.su.se>
2589c19800e8SDoug Rabson
2590c19800e8SDoug Rabson	* test_cms.in: Use --certificate= for enveloped/unenvelope.
2591c19800e8SDoug Rabson
2592c19800e8SDoug Rabson	* hxtool.c: Use --certificate= for enveloped/unenvelope.  Clean
2593c19800e8SDoug Rabson	up.
2594c19800e8SDoug Rabson
2595c19800e8SDoug Rabson	* test_cms.in: add EnvelopeData tests
2596c19800e8SDoug Rabson
2597c19800e8SDoug Rabson	* hxtool.c: use id-envelopedData for ContentInfo
2598c19800e8SDoug Rabson
2599c19800e8SDoug Rabson	* hxtool-commands.in: add contentinfo wrapping for create/unwrap
2600c19800e8SDoug Rabson	enveloped data
2601c19800e8SDoug Rabson
2602c19800e8SDoug Rabson	* hxtool.c: add contentinfo wrapping for create/unwrap enveloped
2603c19800e8SDoug Rabson	data
2604c19800e8SDoug Rabson
2605c19800e8SDoug Rabson	* data/gen-req.sh: add enveloped data (aes128)
2606c19800e8SDoug Rabson
2607c19800e8SDoug Rabson	* crypto.c: add "new" RC2 oid
2608c19800e8SDoug Rabson
2609*ae771770SStanislav Sedov2005-07-27  Love Hörnquist Åstrand  <lha@it.su.se>
2610c19800e8SDoug Rabson
2611c19800e8SDoug Rabson	* hx_locl.h, cert.c: Add HX509_QUERY_MATCH_FUNCTION that allows
2612c19800e8SDoug Rabson	caller to match by function, note that this doesn't not work
2613c19800e8SDoug Rabson	directly for backends that implements ->query, they must do their
2614c19800e8SDoug Rabson	own processing. (I'm running out of flags, only 12 left now)
2615c19800e8SDoug Rabson
2616c19800e8SDoug Rabson	* test_cms.in: verify ContentInfo wrapping code in hxtool
2617c19800e8SDoug Rabson
2618c19800e8SDoug Rabson	* hxtool-commands.in (cms_create_sd): support wrapping in content
2619c19800e8SDoug Rabson	info spelling
2620c19800e8SDoug Rabson
2621c19800e8SDoug Rabson	* hxtool.c (cms_create_sd): support wrapping in content info
2622c19800e8SDoug Rabson
2623c19800e8SDoug Rabson	* test_cms.in: test more cms signeddata messages
2624c19800e8SDoug Rabson
2625c19800e8SDoug Rabson	* data/gen-req.sh: generate SignedData
2626c19800e8SDoug Rabson
2627c19800e8SDoug Rabson	* hxtool.c (cms_create_sd): support certificate store, add support
2628c19800e8SDoug Rabson	to unwrap a ContentInfo the SignedData inside.
2629c19800e8SDoug Rabson
2630c19800e8SDoug Rabson	* crypto.c: sprinkel rk_UNCONST
2631c19800e8SDoug Rabson
2632c19800e8SDoug Rabson	* crypto.c: add DER NULL to the digest oid's
2633c19800e8SDoug Rabson
2634c19800e8SDoug Rabson	* hxtool-commands.in: add --content-info to cms-verify-sd
2635c19800e8SDoug Rabson
2636c19800e8SDoug Rabson	* cms.c (hx509_cms_create_signed_1): pass in a full
2637c19800e8SDoug Rabson	AlgorithmIdentifier instead of heim_oid for digest_alg
2638c19800e8SDoug Rabson
2639c19800e8SDoug Rabson	* crypto.c: make digest_alg a digest_oid, it's not needed right
2640c19800e8SDoug Rabson	now
2641c19800e8SDoug Rabson
2642c19800e8SDoug Rabson	* hx509_err.et: add CERT_NOT_FOUND
2643c19800e8SDoug Rabson
2644c19800e8SDoug Rabson	* keyset.c (_hx509_certs_find): add error code for cert not
2645c19800e8SDoug Rabson	found
2646c19800e8SDoug Rabson
2647c19800e8SDoug Rabson	* cms.c (hx509_cms_verify_signed): add external store of
2648c19800e8SDoug Rabson	certificates, use the right digest algorithm identifier.
2649c19800e8SDoug Rabson
2650c19800e8SDoug Rabson	* cert.c: fix const warning
2651c19800e8SDoug Rabson
2652c19800e8SDoug Rabson	* ks_p12.c: slightly less verbose
2653c19800e8SDoug Rabson
2654c19800e8SDoug Rabson	* cert.c: add hx509_cert_find_subjectAltName_otherName, add
2655c19800e8SDoug Rabson	HX509_QUERY_MATCH_FRIENDLY_NAME
2656c19800e8SDoug Rabson
2657c19800e8SDoug Rabson	* hx509.h: add hx509_octet_string_list, remove bad comment
2658c19800e8SDoug Rabson
2659c19800e8SDoug Rabson	* hx_locl.h: add HX509_QUERY_MATCH_FRIENDLY_NAME
2660c19800e8SDoug Rabson
2661c19800e8SDoug Rabson	* keyset.c (hx509_certs_append): needs a hx509_lock, add one
2662c19800e8SDoug Rabson
2663c19800e8SDoug Rabson	* Makefile.am: add test cases tempfiles to CLEANFILES
2664c19800e8SDoug Rabson
2665c19800e8SDoug Rabson	* Makefile.am: add test_query to TESTS, fix dependency on hxtool
2666c19800e8SDoug Rabson	sources on hxtool-commands.h
2667c19800e8SDoug Rabson
2668c19800e8SDoug Rabson	* hxtool-commands.in: explain what signer is for create-sd
2669c19800e8SDoug Rabson
2670c19800e8SDoug Rabson	* hxtool.c: add query, add more options to verify-sd and create-sd
2671c19800e8SDoug Rabson
2672c19800e8SDoug Rabson	* test_cms.in: add more cms tests
2673c19800e8SDoug Rabson
2674c19800e8SDoug Rabson	* hxtool-commands.in: add query, add more options to verify-sd
2675c19800e8SDoug Rabson
2676c19800e8SDoug Rabson	* test_query.in: test query interface
2677c19800e8SDoug Rabson
2678c19800e8SDoug Rabson	* data: fix filenames for ds/ke files, add pkcs12 files, regen
2679c19800e8SDoug Rabson
2680c19800e8SDoug Rabson	* hxtool.c,Makefile.am,hxtool-commands.in: switch to slc
2681c19800e8SDoug Rabson
2682*ae771770SStanislav Sedov2005-07-26  Love Hörnquist Åstrand  <lha@it.su.se>
2683c19800e8SDoug Rabson
2684c19800e8SDoug Rabson	* cert.c (hx509_verify_destroy_ctx): add
2685c19800e8SDoug Rabson
2686c19800e8SDoug Rabson	* hxtool.c: free hx509_verify_ctx
2687c19800e8SDoug Rabson
2688c19800e8SDoug Rabson	* name.c (_hx509_name_ds_cmp): make sure all strings are not equal
2689c19800e8SDoug Rabson
2690*ae771770SStanislav Sedov2005-07-25  Love Hörnquist Åstrand  <lha@it.su.se>
2691c19800e8SDoug Rabson
2692c19800e8SDoug Rabson	* hxtool.c: return error
2693c19800e8SDoug Rabson
2694c19800e8SDoug Rabson	* keyset.c: return errors from iterations
2695c19800e8SDoug Rabson
2696c19800e8SDoug Rabson	* test_chain.in: clean up checks
2697c19800e8SDoug Rabson
2698c19800e8SDoug Rabson	* ks_file.c (parse_certificate): return errno's not 1 in case of
2699c19800e8SDoug Rabson	error
2700c19800e8SDoug Rabson
2701c19800e8SDoug Rabson	* ks_file.c (file_iter): make sure endpointer is NULL
2702c19800e8SDoug Rabson
2703c19800e8SDoug Rabson	* ks_mem.c (mem_iter): follow conversion and return NULL when we
2704c19800e8SDoug Rabson	get to the end, not ENOENT.
2705c19800e8SDoug Rabson
2706c19800e8SDoug Rabson	* Makefile.am: test_chain depends on hxtool
2707c19800e8SDoug Rabson
2708c19800e8SDoug Rabson	* data: test certs that lasts 10 years
2709c19800e8SDoug Rabson
2710c19800e8SDoug Rabson	* data/gen-req.sh: script to generate test certs
2711c19800e8SDoug Rabson
2712c19800e8SDoug Rabson	* Makefile.am: Add regression tests.
2713c19800e8SDoug Rabson
2714c19800e8SDoug Rabson	* data: test certificate and keys
2715c19800e8SDoug Rabson
2716c19800e8SDoug Rabson	* test_chain.in: test chain
2717c19800e8SDoug Rabson
2718c19800e8SDoug Rabson	* hxtool.c (cms_create_sd): add KU digitalSigature as a
2719c19800e8SDoug Rabson	requirement to the query
2720c19800e8SDoug Rabson
2721c19800e8SDoug Rabson	* hx_locl.h: add KeyUsage query bits
2722c19800e8SDoug Rabson
2723c19800e8SDoug Rabson	* hx509_err.et: add KeyUsage error
2724c19800e8SDoug Rabson
2725c19800e8SDoug Rabson	* cms.c: add checks for KeyUsage
2726c19800e8SDoug Rabson
2727c19800e8SDoug Rabson	* cert.c: more checks on KeyUsage, allow to query on them too
2728c19800e8SDoug Rabson
2729*ae771770SStanislav Sedov2005-07-24  Love Hörnquist Åstrand  <lha@it.su.se>
2730c19800e8SDoug Rabson
2731c19800e8SDoug Rabson	* cms.c: Add missing break.
2732c19800e8SDoug Rabson
2733c19800e8SDoug Rabson	* hx_locl.h,cms.c,cert.c: allow matching on SubjectKeyId
2734c19800e8SDoug Rabson
2735c19800e8SDoug Rabson	* hxtool.c: Use _hx509_map_file, _hx509_unmap_file and
2736c19800e8SDoug Rabson	_hx509_write_file.
2737c19800e8SDoug Rabson
2738c19800e8SDoug Rabson	* file.c (_hx509_write_file): in case of write error, return errno
2739c19800e8SDoug Rabson
2740c19800e8SDoug Rabson	* file.c (_hx509_write_file): add a function that write a data
2741c19800e8SDoug Rabson	blob to disk too
2742c19800e8SDoug Rabson
2743c19800e8SDoug Rabson	* Fix id-tags
2744c19800e8SDoug Rabson
2745c19800e8SDoug Rabson	* Import mostly complete X.509 and CMS library. Handles, PEM, DER,
2746c19800e8SDoug Rabson	PKCS12 encoded certicates.  Verificate RSA chains and handled
2747c19800e8SDoug Rabson	CMS's SignedData, and EnvelopedData.
2748c19800e8SDoug Rabson
2749c19800e8SDoug Rabson
2750