diff options
author | marha <marha@users.sourceforge.net> | 2010-06-16 16:17:11 +0000 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2010-06-16 16:17:11 +0000 |
commit | fef0b61e18b9c7475e4d6e67ddfc55db46573f4e (patch) | |
tree | d4c68ba5b80ca0748fb23f1c344e859efd79503f /openssl/engines/ccgost/gost_crypt.c | |
parent | 243edb24f5179d93c849ea326fb489d3f846db71 (diff) | |
download | vcxsrv-fef0b61e18b9c7475e4d6e67ddfc55db46573f4e.tar.gz vcxsrv-fef0b61e18b9c7475e4d6e67ddfc55db46573f4e.tar.bz2 vcxsrv-fef0b61e18b9c7475e4d6e67ddfc55db46573f4e.zip |
Switched to openssl-1.0.0a
Diffstat (limited to 'openssl/engines/ccgost/gost_crypt.c')
-rw-r--r-- | openssl/engines/ccgost/gost_crypt.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/openssl/engines/ccgost/gost_crypt.c b/openssl/engines/ccgost/gost_crypt.c index eb11f0e32..4977d1dcf 100644 --- a/openssl/engines/ccgost/gost_crypt.c +++ b/openssl/engines/ccgost/gost_crypt.c @@ -299,7 +299,7 @@ int gost_cipher_do_cfb(EVP_CIPHER_CTX *ctx, unsigned char *out, if (i<inl) { gost_crypt_mesh(ctx->cipher_data,ctx->iv,ctx->buf); - if (!ctx->encrypt) memcpy(ctx->buf+8,in_ptr,j); + if (!ctx->encrypt) memcpy(ctx->buf+8,in_ptr,inl-i); for (j=0;i<inl;j++,i++) { out_ptr[j]=ctx->buf[j]^in_ptr[j]; @@ -459,13 +459,15 @@ int gost89_get_asn1_parameters(EVP_CIPHER_CTX *ctx,ASN1_TYPE *params) int ret = -1; int len; GOST_CIPHER_PARAMS *gcp = NULL; - unsigned char *p = params->value.sequence->data; + unsigned char *p; struct ossl_gost_cipher_ctx *c=ctx->cipher_data; if (ASN1_TYPE_get(params) != V_ASN1_SEQUENCE) { return ret; } + p = params->value.sequence->data; + gcp = d2i_GOST_CIPHER_PARAMS(NULL, (const unsigned char **)&p, params->value.sequence->length); |