Date: Wed, 19 Sep 2018 07:08:04 +0000 (UTC) From: Jung-uk Kim <jkim@FreeBSD.org> To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r338783 - projects/openssl111/sys/geom/eli Message-ID: <201809190708.w8J784vO072073@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: jkim Date: Wed Sep 19 07:08:04 2018 New Revision: 338783 URL: https://svnweb.freebsd.org/changeset/base/338783 Log: Make geli(8) buildable. Modified: projects/openssl111/sys/geom/eli/g_eli_crypto.c Modified: projects/openssl111/sys/geom/eli/g_eli_crypto.c ============================================================================== --- projects/openssl111/sys/geom/eli/g_eli_crypto.c Wed Sep 19 07:07:03 2018 (r338782) +++ projects/openssl111/sys/geom/eli/g_eli_crypto.c Wed Sep 19 07:08:04 2018 (r338783) @@ -122,7 +122,7 @@ static int g_eli_crypto_cipher(u_int algo, int enc, u_char *data, size_t datasize, const u_char *key, size_t keysize) { - EVP_CIPHER_CTX ctx; + EVP_CIPHER_CTX *ctx; const EVP_CIPHER *type; u_char iv[keysize]; int outsize; @@ -175,27 +175,29 @@ g_eli_crypto_cipher(u_int algo, int enc, u_char *data, return (EINVAL); } - EVP_CIPHER_CTX_init(&ctx); + ctx = EVP_CIPHER_CTX_new(); + if (ctx == NULL) + return (ENOMEM); - EVP_CipherInit_ex(&ctx, type, NULL, NULL, NULL, enc); - EVP_CIPHER_CTX_set_key_length(&ctx, keysize / 8); - EVP_CIPHER_CTX_set_padding(&ctx, 0); + EVP_CipherInit_ex(ctx, type, NULL, NULL, NULL, enc); + EVP_CIPHER_CTX_set_key_length(ctx, keysize / 8); + EVP_CIPHER_CTX_set_padding(ctx, 0); bzero(iv, sizeof(iv)); - EVP_CipherInit_ex(&ctx, NULL, NULL, key, iv, enc); + EVP_CipherInit_ex(ctx, NULL, NULL, key, iv, enc); - if (EVP_CipherUpdate(&ctx, data, &outsize, data, datasize) == 0) { - EVP_CIPHER_CTX_cleanup(&ctx); + if (EVP_CipherUpdate(ctx, data, &outsize, data, datasize) == 0) { + EVP_CIPHER_CTX_free(ctx); return (EINVAL); } assert(outsize == (int)datasize); - if (EVP_CipherFinal_ex(&ctx, data + outsize, &outsize) == 0) { - EVP_CIPHER_CTX_cleanup(&ctx); + if (EVP_CipherFinal_ex(ctx, data + outsize, &outsize) == 0) { + EVP_CIPHER_CTX_free(ctx); return (EINVAL); } assert(outsize == 0); - EVP_CIPHER_CTX_cleanup(&ctx); + EVP_CIPHER_CTX_free(ctx); return (0); } #endif /* !_KERNEL */
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201809190708.w8J784vO072073>