1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-07-09 23:33:46 -05:00

Make lots more algorithm structures globally visible.

Previously, lots of individual ssh2_cipheralg structures were declared
static, and only available to the rest of the code via a smaller
number of 'ssh2_ciphers' objects that wrapped them into lists. But I'm
going to want to access individual ciphers directly in the testing
system I'm currently working on, so I'm giving all those objects
external linkage and declaring them in ssh.h.

Also, I've made up an entirely new one, namely exposing MD5 as an
instance of the general ssh_hashalg abstraction, which it has no need
to be for the purposes of actually using it in SSH. But, again, this
will let me treat it the same as all the other hashes in the test
system.

No functional change, for the moment.
This commit is contained in:
Simon Tatham
2018-12-31 13:55:46 +00:00
parent f3295e0fb5
commit 84f98c5bf9
7 changed files with 92 additions and 18 deletions

View File

@ -938,7 +938,7 @@ static void poly_genresult(ssh2_mac *mac, unsigned char *blk)
poly1305_finalise(&ctx->mac, blk);
}
static const struct ssh2_macalg ssh2_poly1305 = {
const struct ssh2_macalg ssh2_poly1305 = {
poly_ssh2_new, poly_ssh2_free, poly_setkey,
poly_start, poly_genresult,
@ -1026,7 +1026,7 @@ static void ccp_decrypt_length(ssh2_cipher *cipher, void *blk, int len,
chacha20_decrypt(&ctx->a_cipher, blk, len);
}
static const struct ssh2_cipheralg ssh2_chacha20_poly1305 = {
const struct ssh2_cipheralg ssh2_chacha20_poly1305 = {
ccp_new,
ccp_free,