Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
Sketch the test for BN_kronecker.
|
|
|
|
Also add the next file in advance so that I can't forget this one :-)
|
|
|
|
Fix BN_gcd.
Analyze BN_mod_inverse.
Add BN_kronecker.
"make update".
|
|
use BN_CTX_start/get/end instead of accessing ctx->tos).
Change indentation to "EAY" style.
|
|
use BN_CTX_start/get/end instead of accessing ctx->tos).
Change indentation to "EAY" style.
|
|
the RSA_METHOD's "init()" handler is called, and is cleaned up after the
RSA_METHOD's "finish()" handler is called. Custom RSA_METHODs may wish to
initialise contexts and other specifics in the RSA structure upon creation
and that was previously not possible - "ex_data" is where that stuff
should go and it was being initialised too late for it to be used.
|
|
|
|
BN_swap manual page.
|
|
"make update"
|
|
|
|
These new files will not be included literally in OpenSSL, but I intend
to integrate most of their contents. Most file names will change,
and when the integration is done, the superfluous files will be deleted.
Submitted by: Lenka Fibikova <fibikova@exp-math.uni-essen.de>
|
|
|
|
|
|
I'm a little bit nervous about bn_div_words, as I don't know what it's
supposed to return on overflow. For now, I trust the rest of the
system to give it numbers that will not cause any overflow...
|
|
|
|
|
|
(incorrect) attempt to free it once more...
|
|
BN_mul() correctly constified, avoids two realloc()'s that aren't
really necessary and saves memory to boot. This required a small
change in bn_mul_part_recursive() and the addition of variants of
bn_cmp_words(), bn_add_words() and bn_sub_words() that can take arrays
with differing sizes.
The test results show a performance that very closely matches the
original code from before my constification. This may seem like a
very small win from a performance point of view, but if one remembers
that the variants of bn_cmp_words(), bn_add_words() and bn_sub_words()
are not at all optimized for the moment (and there's no corresponding
assembler code), and that their use may be just as non-optimal, I'm
pretty confident there are possibilities...
This code needs reviewing!
|
|
|
|
|
|
declarations of bn_add_part_words() and bn_sub_part_words() since they
do not exist.
|
|
in bn.h
|
|
|
|
stdout. bc gets so confused by bean counts.
|
|
|
|
4 times it's size when bn_sqr_recursive() won't look farther than the
original length. Thereby, constification is no longer a problem.
|
|
applicable to ENGINE_ctrl()
|
|
situation where they've initialised the ENGINE, loaded keys (which are then
linked to that ENGINE), and performed other checks (such as verifying
certificate chains etc). At that point, if the application goes
multi-threaded or multi-process it creates problems for any ENGINE
implementations that are either not thread/process safe or that perform
optimally when they do not have to perform locking and other contention
management tasks at "run-time".
This defines a new ENGINE_ctrl() command that can be supported by engines
at their discretion. If ENGINE_ctrl(..., ENGINE_CTRL_HUP,...) returns an
error then the caller should check if the *_R_COMMAND_NOT_IMPLEMENTED error
reason was set - it may just be that the engine doesn't support or need the
HUP command, or it could be that the attempted reinitialisation failed. A
crude alternative is to ignore the return value from ENGINE_ctrl() (and
clear any errors with ERR_clear_error()) and perform a test operation
immediately after the "HUP". Very crude indeed.
ENGINEs can support this command to close and reopen connections, files,
handles, or whatever as an alternative to run-time locking when such things
would otherwise be needed. In such a case, it's advisable for the engine
implementations to support locking by default but disable it after the
arrival of a HUP command, or any other indication by the application that
locking is not required. NB: This command exists to allow an ENGINE to
reinitialise without the ENGINE's functional reference count having to sink
down to zero and back up - which is what is normally required for the
finish() and init() handlers to get invoked. It would also be a bad idea
for engine_lib to catch this command itself and interpret it by calling the
engine's init() and finish() handlers directly, because reinitialisation
may need special handling on a case-by-case basis that is distinct from a
finish/init pair - eg. calling a finish() handler may invalidate the state
stored inside individual keys that have already loaded for this engine.
|
|
|
|
engine structure, and some ANSI C compilers will complain otherwise.
|
|
|
|
Caught by Jeffrey Altman <jaltman@columbia.edu>
|
|
|
|
LEVITTE_DEBUG to LEVITTE_DEBUG_MEM.
|
|
|
|
|
|
|
|
|
|
away now...
|
|
|
|
I didn't apply all his patches yet, since I have some hesitance about
unconstifying. To be pondered.
|
|
|
|
|
|
|