blob: f5f89ff9f7f1a23c7e319240e2c4194ce70ec96d [file] [log] [blame]
Jean-Paul Calderone828c9cb2008-04-26 18:06:54 -040012008-04-26 Jean-Paul Calderone <exarkun@twistedmatrix.com>
2
3 * src/ssl/context.c: Change global_passphrase_callback so that it
4 acquires the GIL before invoking any CPython APIs and does not
5 release it until after it is finished invoking all of them.
6 * test/test_crypto.py: Add tests for load_privatekey and
7 dump_privatekey when a passphrase or a passphrase callback is
8 supplied.
9
Jean-Paul Calderonee53ccf72008-04-11 11:40:39 -0400102008-04-11 Jean-Paul Calderone <exarkun@twistedmatrix.com>
11
12 * Release 0.7
13
Jean-Paul Calderonec54cc182008-03-26 21:11:07 -0400142008-03-26 Jean-Paul Calderone <exarkun@twistedmatrix.com>
15
16 * src/crypto/x509name.c: Add X509Name.get_components
17
Jean-Paul Calderone9ab16c02008-03-25 15:22:47 -0400182008-03-25 Jean-Paul Calderone <exarkun@twistedmatrix.com>
19
20 * src/crypto/x509name.c: Add hash and der methods to X509Name.
Jean-Paul Calderonec8215432008-03-25 15:34:21 -040021 * src/crypto/x509.c: Fix a bug in X509.get_notBefore and
22 X509.get_notAfter preventing UTCTIME format timestamps from
23 working.
Jean-Paul Calderone9ab16c02008-03-25 15:22:47 -040024
Jean-Paul Calderone3de9f622008-03-12 14:12:19 -0400252008-03-12 Jean-Paul Calderone <exarkun@twistedmatrix.com>
26
27 * Fix coding problems in examples/. Remove keys and certificates
28 and add a note about how to generate new ones.
29
Jean-Paul Calderone525ef802008-03-09 20:39:42 -0400302008-03-09 Jean-Paul Calderone <exarkun@twistedmatrix.com>
31
32 * src/crypto/x509.c: Add getters and setters for the notBefore and
33 notAfter attributes of X509s.
Jean-Paul Calderoneac0d95f2008-03-10 00:00:42 -040034 * src/crypto/pkey.h, src/crypto/pkey.c, src/crypto/x509req.c,
35 src/crypto/x509.c: Track the initialized and public/private state
36 of EVP_PKEY structures underlying the crypto_PKeyObj type and
37 reject X509Req signature operations on keys not suitable for the
38 task.
Jean-Paul Calderone525ef802008-03-09 20:39:42 -040039
Jean-Paul Calderoneda92ccc2008-03-06 23:48:12 -0500402008-03-06 Jean-Paul Calderone <exarkun@twistedmatrix.com>
41
42 * src/crypto/x509name.c: Fix tp_compare so it only returns -1, 0, or
43 1. This eliminates a RuntimeWarning emitted by Python.
44 * src/crypto/x509req.c: Fix reference counting for X509Name returned
45 by X509Req.get_subject. This removes a segfault when the subject
46 name outlives the request object.
47 * src/crypto/x509.c: Change get_serial_number and set_serial_number
48 to accept Python longs.
49 * doc/pyOpenSSL.tex: A number of minor corrections.
50
Jean-Paul Calderone7df40db2008-03-03 15:12:42 -0500512008-03-03 Jean-Paul Calderone <exarkun@twistedmatrix.com>
52
53 * src/crypto/crypto.c: Expose X509_verify_cert_error_string. (patch
54 from Victor Stinner)
55
Jean-Paul Calderone12ea9a02008-02-22 12:24:39 -0500562008-02-22 Jean-Paul Calderone <exarkun@twistedmatrix.com>
57
58 * src/ssl/connection.c src/ssl/context.c src/ssl/ssl.c: Fix
59 compilation on Windows. (patch from Michael Schneider)
60
Jean-Paul Calderone72b8f0f2008-02-21 23:57:40 -0500612008-02-21 Jean-Paul Calderone <exarkun@twistedmatrix.com>
62
63 * src/ssl/connection.c: Expose SSL_get_shutdown and
64 SSL_set_shutdown. (patch from James Knight)
65 * src/ssl/ssl.c: Expose SSL_SENT_SHUTDOWN and SSL_RECEIVED_SHUTDOWN.
66 (patch from James Knight)
67
Jean-Paul Calderone779db6b2008-02-19 21:00:37 -0500682008-02-19 Jean-Paul Calderone <exarkun@twistedmatrix.com>
69
70 * src/ssl/context.c: Expose SSL_CTX_add_extra_chain_cert.
71 * src/crypto/x509name.c: Fix memory leaks in __getattr__ and
72 __setattr_ implementations.
Jean-Paul Calderone19555b92008-02-19 22:29:57 -050073 * src/crypto/x509.c: Fix memory leak in X509.get_pubkey().
74 * leakcheck/: An attempt at a systematic approach to leak
75 elimination.
Jean-Paul Calderone779db6b2008-02-19 21:00:37 -050076
Jean-Paul Calderone897bc252008-02-18 20:50:23 -0500772004-08-13 Martin Sjögren <msjogren@gmail.com>
78
79 * Released version 0.6.
80
812004-08-11 Martin Sjögren <msjogren@gmail.com>
82
83 * doc/pyOpenSSL.tex: Updates to the docs.
84
852004-08-10 Martin Sjögren <msjogren@gmail.com>
86
87 * src/crypto/x509.c: Add X509.add_extensions based on a patch
88 from Han S. Lee.
89 * src/ssl/ssl.c: Add more SSL_OP_ constants. Patch from Mihai
90 Ibanescu.
91
922004-08-09 Martin Sjögren <msjogren@gmail.com>
93
94 * setup.py src/crypto/: Add support for Netscape SPKI extensions
95 based on a patch from Tollef Fog Heen.
96 * src/crypto/crypto.c: Add support for python passphrase callbacks
97 based on a patch from Robert Olson.
98
992004-08-03 Martin Sjögren <msjogren@gmail.com>
100
101 * src/ssl/context.c: Applied patch from Frederic Peters to add
102 Context.use_certificate_chain_file.
103 * src/crypto/x509.c: Applid patch from Tollef Fog Heen to add
104 X509.subject_name_hash and X509.digest.
105
1062004-08-02 Martin Sjögren <msjogren@gmail.com>
107
108 * src/crypto/crypto.c src/ssl/ssl.c: Applied patch from Bastian
109 Kleineidam to fix full names of exceptions.
110
1112004-07-19 Martin Sjögren <msjogren@gmail.com>
112
113 * doc/pyOpenSSL.tex: Fix the errors regarding X509Name's field names.
Jean-Paul Calderone828c9cb2008-04-26 18:06:54 -0400114
Jean-Paul Calderone897bc252008-02-18 20:50:23 -05001152004-07-18 Martin Sjögren <msjogren@gmail.com>
116
117 * examples/certgen.py: Fixed wrong attributes in doc string, thanks
118 Remy. (SFbug#913315)
119 * __init__.py, setup.py, version.py: Add __version__, as suggested by
120 Ronald Oussoren in SFbug#888729.
121 * examples/proxy.py: Fix typos, thanks Mihai Ibanescu. (SFpatch#895820)
122
1232003-01-09 Martin Sjögren <martin@strakt.com>
124
125 * Use cyclic GC protocol in SSL.Connection, SSL.Context, crypto.PKCS12
126 and crypto.X509Name.
127
1282002-12-02 Martin Sjögren <martin@strakt.com>
129
130 * tsafe.py: Add some missing methods.
131
1322002-10-06 Martin Sjögren <martin@strakt.com>
133
134 * __init__.py: Import tsafe too!
135
1362002-10-05 Martin Sjögren <martin@strakt.com>
137
138 * src/crypto/x509name.c: Use unicode strings instead of ordinary
139 strings in getattr/setattr. Note that plain ascii strings should
140 still work.
141
1422002-09-17 Martin Sjögren <martin@strakt.com>
143
144 * Released version 0.5.1.
145
1462002-09-09 Martin Sjögren <martin@strakt.com>
147
148 * setup.cfg: Fixed build requirements for rpms.
149
1502002-09-07 Martin Sjögren <martin@strakt.com>
151
152 * src/ssl/connection.c: Fix sendall() method. It segfaulted because
153 it was too generous about giving away the GIL.
154 * Added SecureXMLRPCServer example, contributed by Michal Wallace.
155
1562002-09-06 Martin Sjögren <martin@strakt.com>
157
158 * setup.cfg: Updated the build requirements.
159 * src/ssl/connection.c: Fix includes for AIX.
160
1612002-09-04 Anders Hammarquist <iko@strakt.com>
162
163 * Added type checks in all the other places where we expect
164 specific types of objects passed.
165
1662002-09-04 Martin Sjögren <martin@strakt.com>
167
168 * src/crypto/crypto.c: Added an explicit type check in the dump_*
169 functions, so that they won't die when e.g. None is passed in.
170
1712002-08-25 Martin Sjögren <martin@strakt.com>
172
173 * doc/pyOpenSSL.tex: Docs for PKCS12.
174
1752002-08-24 Martin Sjögren <martin@strakt.com>
176
177 * src/crypto: Added basic PKCS12 support, thanks to Mark Welch
178 <mark@collab.net>
179
1802002-08-16 Martin Sjögren <martin@strakt.com>
181
182 * D'oh! Fixes for python 1.5 and python 2.1.
183
1842002-08-15 Martin Sjögren <martin@strakt.com>
185
186 * Version 0.5. Yay!
187
1882002-07-25 Martin Sjögren <martin@strakt.com>
189
190 * src/ssl/context.c: Added set_options method.
191 * src/ssl/ssl.c: Added constants for Context.set_options method.
192
1932002-07-23 Martin Sjögren <martin@strakt.com>
194
195 * Updated docs
196 * src/ssl/connection.c: Changed the get_cipher_list method to actually
197 return a list! WARNING: This change makes the API incompatible with
198 earlier versions!
199
2002002-07-15 Martin Sjögren <martin@strakt.com>
201
202 * src/ssl/connection.[ch]: Removed the fileno method, it uses the
203 transport object's fileno instead.
204
2052002-07-09 Martin Sjögren <martin@strakt.com>
206
207 * src/crypto/x509.c src/crypto/x509name.c: Fixed segfault bug where
208 you used an X509Name after its X509 had been destroyed.
209 * src/crypto/crypto.[ch] src/crypto/x509req.c src/crypto/x509ext.[ch]:
210 Added X509 Extension support. Thanks to maas-Maarten Zeeman
211 <maas@awanim.com>
212 * src/crypto/pkey.c: Added bits() and type() methods.
213
2142002-07-08 Martin Sjögren <martin@strakt.com>
215
216 * src/ssl/connection.c: Moved the contents of setup_ssl into the
217 constructor, thereby fixing some segfault bugs :)
218 * src/ssl/connection.c: Added connect_ex and sendall methods.
219 * src/crypto/x509name.c: Cleaned up comparisons and NID lookup.
220 Thank you Maas-Maarten Zeeman <maas@awanim.com>
221 * src/rand/rand.c: Fix RAND_screen import.
222 * src/crypto/crypto.c src/crypto/pkcs7.[ch]: Added PKCS7 management,
223 courtesy of Maas-Maarten Zeeman <maas@awanim.com>
224 * src/crypto/x509req.c: Added verify method.
225
2262002-06-17 Martin Sjögren <martin@strakt.com>
227
228 * rpm/, setup.cfg: Added improved RPM-building stuff, thanks to
229 Mihai Ibanescu <misa@redhat.com>
230
2312002-06-14 Martin Sjögren <martin@strakt.com>
232
233 * examples/proxy.py: Example code for using OpenSSL through a proxy
234 contributed by Mihai Ibanescu <misa@redhat.com>
235 * Updated installation instruction and added them to the TeX manual.
236
2372002-06-13 Martin Sjögren <martin@strakt.com>
238
239 * src/ssl/context.c: Changed global_verify_callback so that it uses
240 PyObject_IsTrue instead of requring ints.
241 * Added pymemcompat.h to make the memory management uniform and
242 backwards-compatible.
243 * src/util.h: Added conditional definition of PyModule_AddObject and
244 PyModule_AddIntConstant
245 * src/ssl/connection.c: Socket methods are no longer explicitly
246 wrapped. fileno() is the only method the transport layer object HAS
247 to support, but if you want to use connect, accept or sock_shutdown,
248 then the transport layer object has to supply connect, accept
249 and shutdown respectively.
250
2512002-06-12 Martin Sjögren <martin@strakt.com>
252
253 * Changed comments to docstrings that are visible in Python.
254 * src/ssl/connection.c: Added set_connect_state and set_accept_state
255 methods. Thanks to Mark Welch <mark@collab.net> for this.
256
2572002-06-11 Martin Sjögren <martin@strakt.com>
258
259 * src/ssl/connection.c: accept and connect now use SSL_set_accept_state
260 and SSL_set_connect_state respectively, instead of SSL_accept and
261 SSL_connect.
262 * src/ssl/connection.c: Added want_read and want_write methods.
263
2642002-06-05 Martin Sjögren <martin@strakt.com>
265
266 * src/ssl/connection.c: Added error messages for windows. The code is
267 copied from Python's socketmodule.c. Ick.
268 * src/ssl/connection.c: Changed the parameters to the SysCallError. It
269 always has a tuple (number, string) now, even though the number
270 might not always be useful.
271
2722002-04-05 Martin Sjögren <md9ms@mdstud.chalmers.se>
273
274 * Worked more on the Debian packaging, hopefully the packages
275 are getting into the main Debian archive soon.
276
2772002-01-10 Martin Sjögren <martin@strakt.com>
278
279 * Worked some more on the Debian packaging, it's turning out real
280 nice.
281 * Changed format on this file, I'm going to try to be a bit more
282 verbose about my changes, and this format makes it easier.
283
2842002-01-08 Martin Sjögren <martin@strakt.com>
285
286 * Version 0.4.1
287 * Added some example code
288 * Added the thread safe Connection object in the 'tsafe' submodule
289 * New Debian packaging
290
2912001-08-09 Martin Sjögren <martin@strakt.com>
292
293 * Version 0.4
294 * Added a compare function for X509Name structures.
295 * Moved the submodules to separate .so files, with tiny C APIs so they
296 can communicate
297 * Skeletal OpenSSL/__init__.py
298 * Removed the err submodule, use crypto.Error and SSL.Error instead
299
3002001-08-06 Martin Sjögren <martin@strakt.com>
301
302 * Version 0.3
303 * Added more types for dealing with certificates (X509Store, X509Req,
304 PKey)
305 * Functionality to load private keys, certificates and certificate
306 requests from memory buffers, and store them too
307 * X509 and X509Name objects can now be modified as well, very neat when
308 creating certificates ;)
309 * Added SSL_MODE_AUTO_RETRY to smooth things for blocking sockets
310 * Added a sock_shutdown() method to the Connection type
311 * I don't understand why, but I can't use Py_InitModule() to create
312 submodules in Python 2.0, the interpreter segfaults on the cleanup
313 process when I do. I added a conditional compile on the version
314 number, falling back to my own routine. It would of course be nice to
315 investigate what is happening, but I don't have the time to do so
316 * Do INCREF on the type objects before inserting them in the
317 dictionary, so they will never reach refcount 0 (they are, after all,
318 statically allocated)
319
3202001-07-30 Martin Sjögren <martin@strakt.com>
321
322 * Version 0.2
323 * Lots of tweaking and comments in the code
324 * Now uses distutils instead of the stupid Setup file
325 * Hacked doc/tools/mkhowto, html generation should now work
326
3272001-07-16 Martin Sjögren <martin@strakt.com>
328
329 * Initial release (0.1, don't expect much from this one :-)
330