3rdparties/software/cl+ssl-20200427-git/todo.txt (1973 bytes)
1 - Fix the CCL crash. 2 - Separate project page and a Git repo for trivial-gray-streams. 3 - Remove the ENSURE-INITIALIZED function from the public API. 4 It was only intoroduced to provide users access to the RAND-SEEND 5 which we decided to pass as a parameter to the ENSURE-INITIALIZED. 6 We did this because solaris users complained, as Solaris doesn't 7 have /dev/random, /dev/urnandom files which OpenSSL uses to initialize 8 it's random number generator. But now we know that on Solaris people can 9 use EGD: The Entropy Gathering Daemon: http://egd.sourceforge.net/, 10 and OpenSSL uses it if it's running on a systems without /dev/random. 11 Therefore we should get rid of the ENSURE-INITIALIZED and just 12 put an excerpt from the OpenSSL docs about what software should 13 be installed on the systems without /dev/random. 14 - The stream-fd function is confusing when it's called with ssl-stream as 15 a parameter; a developer might think this function allows to retrieve a 16 socket file descriptor from an ssl-strem, but this function is implemented 17 only for "native" socket streams provided by the Lisp implementation. 18 Makes sense to implement it for ssl-stream too. 19 - The ssl-error-syscall condition uses (err-get-error) in it's :report 20 function. This is not correct; (err-get-error) should be queried 21 when the error occurs. The result might be stored in a slot of 22 the ssl-error-syscall and printed by the :report function. 23 - Fix LispBIO. 24 - Extract the low-level SSL code into a separate library that supports 25 both OpenSSL and GnuTLS (maybe into two thin FFI libraries). 26 - Implement SSL in IOLib adding an API system that only defines stubs that 27 signal an error, and adding implementation systems using the before 28 mentioned thin FFI wrapper libraries. IOLib doesn't support windows, 29 therefore with this plan we will either need to drop Windows support 30 (at tleast for the IOLib based asynch subset of features), or 31 implement Windows support in IOLib.