Re: [PATCH v2] ima-evm-utils: rework openssl init

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Vitaly,

On Sun, 2019-02-03 at 20:47 +0300, Vitaly Chikunov wrote:
> Remove deprecated call to OpenSSL_add_all_algorithms().
> Allow to disable openssl config loading via configure
> `--disable-openssl-conf' option.
> Finish engine initialization properly by calling ENGINE_set_default(),
> as suggested by James Bottomley.
> 

Thanks, could you also display the status under "Give some feedback".

Mimi


> Signed-off-by: Vitaly Chikunov <vt@xxxxxxxxxxxx>
> ---
> - v1 is "ima-evm-utils: remove redundant call to OpenSSL_add_all_algorithms"
> - everything is changed as suggested in mailing list, not just
>   redundant OpenSSL_add_all_algorithms() call is removed.
> 
>  configure.ac    | 6 ++++++
>  src/evmctl.c    | 1 +
>  src/libimaevm.c | 8 ++++++--
>  3 files changed, 13 insertions(+), 2 deletions(-)
> 
> diff --git a/configure.ac b/configure.ac
> index 60f3684..ff8ac29 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -39,6 +39,12 @@ AC_ARG_WITH(kernel_headers, [AS_HELP_STRING([--with-kernel-headers=PATH],
>  	    [KERNEL_HEADERS="$withval"],
>  	    [KERNEL_HEADERS=/lib/modules/$(uname -r)/source])
> 
> +AC_ARG_ENABLE([openssl_conf],
> +	      [AS_HELP_STRING([--disable-openssl-conf], [disable loading of openssl config by libimaevm])],
> +	      if test "$enable_openssl_conf" = "no"; then
> +		AC_DEFINE(DISABLE_OPENSSL_CONF, 1, [Define to disable loading of openssl config by libimaevm.])
> +	      fi)
> +
>  #debug support - yes for a while
>  PKG_ARG_ENABLE(debug, "yes", DEBUG, [Enable Debug support])
>  if test $pkg_cv_enable_debug = yes; then
> diff --git a/src/evmctl.c b/src/evmctl.c
> index 2e4d551..fa074c4 100644
> --- a/src/evmctl.c
> +++ b/src/evmctl.c
> @@ -1904,6 +1904,7 @@ int main(int argc, char *argv[])
>  				ENGINE_free(eng);
>  				eng = NULL;
>  			}
> +			ENGINE_set_default(eng, ENGINE_METHOD_ALL);
>  			break;
>  		case 140: /* --xattr-user */
>  			xattr_ima = "user.ima";
> diff --git a/src/libimaevm.c b/src/libimaevm.c
> index 799eeec..db27c6f 100644
> --- a/src/libimaevm.c
> +++ b/src/libimaevm.c
> @@ -976,7 +976,11 @@ int sign_hash(const char *hashalgo, const unsigned char *hash, int size, const c
> 
>  static void libinit()
>  {
> -	OpenSSL_add_all_algorithms();
> -	OPENSSL_add_all_algorithms_conf();
> +	OPENSSL_init_crypto(OPENSSL_INIT_ADD_ALL_CIPHERS |
> +			    OPENSSL_INIT_ADD_ALL_DIGESTS |
> +#ifndef DISABLE_OPENSSL_CONF
> +			    OPENSSL_INIT_LOAD_CONFIG |
> +#endif
> +			    OPENSSL_INIT_ENGINE_ALL_BUILTIN, NULL);
>  	ERR_load_crypto_strings();
>  }




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux Kernel]     [Linux Kernel Hardening]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux