public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Zurcher, Christopher J" <christopher.j.zurcher@intel.com>
To: "devel@edk2.groups.io" <devel@edk2.groups.io>,
	"lersek@redhat.com" <lersek@redhat.com>
Subject: Re: [edk2-devel] [PATCH 1/1] CryptoPkg/OpensslLib: Remove "no-autoalginit" flag from OpenSSL build
Date: Thu, 13 Feb 2020 23:39:35 +0000	[thread overview]
Message-ID: <MWHPR11MB201415A2D126CF3DC3517012B31A0@MWHPR11MB2014.namprd11.prod.outlook.com> (raw)
In-Reply-To: <dbb00771-2d00-1951-f2fd-abc313e7cf31@redhat.com>

> -----Original Message-----
> From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Laszlo Ersek
> Sent: Thursday, February 13, 2020 15:29
> To: devel@edk2.groups.io; Zurcher, Christopher J
> <christopher.j.zurcher@intel.com>
> Subject: Re: [edk2-devel] [PATCH 1/1] CryptoPkg/OpensslLib: Remove "no-
> autoalginit" flag from OpenSSL build
> 
> Hi Christopher,
> 
> (1) Please CC the CryptoPkg maintainers on CryptoPkg patches.

Thanks, I missed this originally and added them in v2.

> 
> On 02/13/20 00:41, Zurcher, Christopher J wrote:
> > This is required for interfaces such as EVP to retrieve algorithms
> > by name.
> 
> (2) Apologies, I don't understand this explanation. There don't seem to
> be any users for whatever is being enabled in this patch in the edk2
> tree. Can you please elaborate? (Not just for me in this thread, but in
> the commit message.)

This is to prepare for a future commit that will implement an EVP interface.

> 
> >
> > This commit also adds the "sort" keyword to the header file parsing loop
> > so the .inf files aren't randomized after every run of process_files.pl.
> 
> (3) That's a great idea, but it should be split to a separate patch. I'd
> suggest first introducing the sorted generation (without any change to
> the set of files built).
> 
> And then the effects of the "no-autoalginit" removal can be seen
> clearly, without being hidden by the reordering.

Will split in v3.

Thanks,
Christopher Zurcher

> 
> 
> > ---
> >  CryptoPkg/Library/OpensslLib/OpensslLib.inf       | 64 ++++++++++---------
> -
> >  CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf | 60 +++++++++---------
> >  CryptoPkg/Library/Include/openssl/opensslconf.h   |  3 -
> >  CryptoPkg/Library/OpensslLib/process_files.pl     |  5 +-
> >  4 files changed, 64 insertions(+), 68 deletions(-)
> >
> > diff --git a/CryptoPkg/Library/OpensslLib/OpensslLib.inf
> b/CryptoPkg/Library/OpensslLib/OpensslLib.inf
> > index 3fa52f5543..5caffdb71e 100644
> > --- a/CryptoPkg/Library/OpensslLib/OpensslLib.inf
> > +++ b/CryptoPkg/Library/OpensslLib/OpensslLib.inf
> > @@ -494,57 +494,57 @@
> >    $(OPENSSL_PATH)/crypto/x509v3/v3_tlsf.c
> >    $(OPENSSL_PATH)/crypto/x509v3/v3_utl.c
> >    $(OPENSSL_PATH)/crypto/x509v3/v3err.c
> > -  $(OPENSSL_PATH)/crypto/hmac/hmac_lcl.h
> > -  $(OPENSSL_PATH)/crypto/dh/dh_locl.h
> > -  $(OPENSSL_PATH)/crypto/bio/bio_lcl.h
> > -  $(OPENSSL_PATH)/crypto/conf/conf_def.h
> > -  $(OPENSSL_PATH)/crypto/conf/conf_lcl.h
> > -  $(OPENSSL_PATH)/crypto/lhash/lhash_lcl.h
> > -  $(OPENSSL_PATH)/crypto/sha/sha_locl.h
> > -  $(OPENSSL_PATH)/crypto/md5/md5_locl.h
> > -  $(OPENSSL_PATH)/crypto/store/store_locl.h
> > -  $(OPENSSL_PATH)/crypto/dso/dso_locl.h
> > -  $(OPENSSL_PATH)/crypto/pkcs12/p12_lcl.h
> >    $(OPENSSL_PATH)/crypto/arm_arch.h
> >    $(OPENSSL_PATH)/crypto/mips_arch.h
> >    $(OPENSSL_PATH)/crypto/ppc_arch.h
> >    $(OPENSSL_PATH)/crypto/s390x_arch.h
> >    $(OPENSSL_PATH)/crypto/sparc_arch.h
> >    $(OPENSSL_PATH)/crypto/vms_rms.h
> > -  $(OPENSSL_PATH)/crypto/bn/bn_lcl.h
> > -  $(OPENSSL_PATH)/crypto/bn/bn_prime.h
> > -  $(OPENSSL_PATH)/crypto/bn/rsaz_exp.h
> > -  $(OPENSSL_PATH)/crypto/ui/ui_locl.h
> > -  $(OPENSSL_PATH)/crypto/md4/md4_locl.h
> > -  $(OPENSSL_PATH)/crypto/rc4/rc4_locl.h
> > +  $(OPENSSL_PATH)/crypto/aes/aes_locl.h
> >    $(OPENSSL_PATH)/crypto/asn1/asn1_item_list.h
> >    $(OPENSSL_PATH)/crypto/asn1/asn1_locl.h
> >    $(OPENSSL_PATH)/crypto/asn1/charmap.h
> >    $(OPENSSL_PATH)/crypto/asn1/standard_methods.h
> >    $(OPENSSL_PATH)/crypto/asn1/tbl_standard.h
> > -  $(OPENSSL_PATH)/crypto/evp/evp_locl.h
> > -  $(OPENSSL_PATH)/crypto/rand/rand_lcl.h
> > -  $(OPENSSL_PATH)/crypto/ocsp/ocsp_lcl.h
> > -  $(OPENSSL_PATH)/crypto/modes/modes_lcl.h
> > -  $(OPENSSL_PATH)/crypto/comp/comp_lcl.h
> > -  $(OPENSSL_PATH)/crypto/rsa/rsa_locl.h
> > -  $(OPENSSL_PATH)/crypto/x509/x509_lcl.h
> > +  $(OPENSSL_PATH)/crypto/async/async_locl.h
> >    $(OPENSSL_PATH)/crypto/async/arch/async_null.h
> >    $(OPENSSL_PATH)/crypto/async/arch/async_posix.h
> >    $(OPENSSL_PATH)/crypto/async/arch/async_win.h
> > -  $(OPENSSL_PATH)/crypto/sm3/sm3_locl.h
> > +  $(OPENSSL_PATH)/crypto/bio/bio_lcl.h
> > +  $(OPENSSL_PATH)/crypto/bn/bn_lcl.h
> > +  $(OPENSSL_PATH)/crypto/bn/bn_prime.h
> > +  $(OPENSSL_PATH)/crypto/bn/rsaz_exp.h
> > +  $(OPENSSL_PATH)/crypto/comp/comp_lcl.h
> > +  $(OPENSSL_PATH)/crypto/conf/conf_def.h
> > +  $(OPENSSL_PATH)/crypto/conf/conf_lcl.h
> >    $(OPENSSL_PATH)/crypto/des/des_locl.h
> >    $(OPENSSL_PATH)/crypto/des/spr.h
> > +  $(OPENSSL_PATH)/crypto/dh/dh_locl.h
> > +  $(OPENSSL_PATH)/crypto/dso/dso_locl.h
> > +  $(OPENSSL_PATH)/crypto/evp/evp_locl.h
> > +  $(OPENSSL_PATH)/crypto/hmac/hmac_lcl.h
> > +  $(OPENSSL_PATH)/crypto/lhash/lhash_lcl.h
> > +  $(OPENSSL_PATH)/crypto/md4/md4_locl.h
> > +  $(OPENSSL_PATH)/crypto/md5/md5_locl.h
> > +  $(OPENSSL_PATH)/crypto/modes/modes_lcl.h
> > +  $(OPENSSL_PATH)/crypto/objects/obj_dat.h
> > +  $(OPENSSL_PATH)/crypto/objects/obj_lcl.h
> > +  $(OPENSSL_PATH)/crypto/objects/obj_xref.h
> > +  $(OPENSSL_PATH)/crypto/ocsp/ocsp_lcl.h
> > +  $(OPENSSL_PATH)/crypto/pkcs12/p12_lcl.h
> > +  $(OPENSSL_PATH)/crypto/rand/rand_lcl.h
> > +  $(OPENSSL_PATH)/crypto/rc4/rc4_locl.h
> > +  $(OPENSSL_PATH)/crypto/rsa/rsa_locl.h
> > +  $(OPENSSL_PATH)/crypto/sha/sha_locl.h
> >    $(OPENSSL_PATH)/crypto/siphash/siphash_local.h
> > -  $(OPENSSL_PATH)/crypto/aes/aes_locl.h
> > -  $(OPENSSL_PATH)/crypto/async/async_locl.h
> > +  $(OPENSSL_PATH)/crypto/sm3/sm3_locl.h
> > +  $(OPENSSL_PATH)/crypto/store/store_locl.h
> > +  $(OPENSSL_PATH)/crypto/ui/ui_locl.h
> > +  $(OPENSSL_PATH)/crypto/x509/x509_lcl.h
> >    $(OPENSSL_PATH)/crypto/x509v3/ext_dat.h
> >    $(OPENSSL_PATH)/crypto/x509v3/pcy_int.h
> >    $(OPENSSL_PATH)/crypto/x509v3/standard_exts.h
> >    $(OPENSSL_PATH)/crypto/x509v3/v3_admis.h
> > -  $(OPENSSL_PATH)/crypto/objects/obj_dat.h
> > -  $(OPENSSL_PATH)/crypto/objects/obj_lcl.h
> > -  $(OPENSSL_PATH)/crypto/objects/obj_xref.h
> >    $(OPENSSL_PATH)/ssl/bio_ssl.c
> >    $(OPENSSL_PATH)/ssl/d1_lib.c
> >    $(OPENSSL_PATH)/ssl/d1_msg.c
> > @@ -589,13 +589,13 @@
> >    $(OPENSSL_PATH)/ssl/t1_trce.c
> >    $(OPENSSL_PATH)/ssl/tls13_enc.c
> >    $(OPENSSL_PATH)/ssl/tls_srp.c
> > -  $(OPENSSL_PATH)/ssl/statem/statem.h
> > -  $(OPENSSL_PATH)/ssl/statem/statem_locl.h
> >    $(OPENSSL_PATH)/ssl/packet_locl.h
> >    $(OPENSSL_PATH)/ssl/ssl_cert_table.h
> >    $(OPENSSL_PATH)/ssl/ssl_locl.h
> >    $(OPENSSL_PATH)/ssl/record/record.h
> >    $(OPENSSL_PATH)/ssl/record/record_locl.h
> > +  $(OPENSSL_PATH)/ssl/statem/statem.h
> > +  $(OPENSSL_PATH)/ssl/statem/statem_locl.h
> >  # Autogenerated files list ends here
> >    buildinf.h
> >    rand_pool_noise.h
> > diff --git a/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
> b/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
> > index f1f9fbb938..11a9563c49 100644
> > --- a/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
> > +++ b/CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf
> > @@ -494,57 +494,57 @@
> >    $(OPENSSL_PATH)/crypto/x509v3/v3_tlsf.c
> >    $(OPENSSL_PATH)/crypto/x509v3/v3_utl.c
> >    $(OPENSSL_PATH)/crypto/x509v3/v3err.c
> > -  $(OPENSSL_PATH)/crypto/hmac/hmac_lcl.h
> > -  $(OPENSSL_PATH)/crypto/dh/dh_locl.h
> > -  $(OPENSSL_PATH)/crypto/bio/bio_lcl.h
> > -  $(OPENSSL_PATH)/crypto/conf/conf_def.h
> > -  $(OPENSSL_PATH)/crypto/conf/conf_lcl.h
> > -  $(OPENSSL_PATH)/crypto/lhash/lhash_lcl.h
> > -  $(OPENSSL_PATH)/crypto/sha/sha_locl.h
> > -  $(OPENSSL_PATH)/crypto/md5/md5_locl.h
> > -  $(OPENSSL_PATH)/crypto/store/store_locl.h
> > -  $(OPENSSL_PATH)/crypto/dso/dso_locl.h
> > -  $(OPENSSL_PATH)/crypto/pkcs12/p12_lcl.h
> >    $(OPENSSL_PATH)/crypto/arm_arch.h
> >    $(OPENSSL_PATH)/crypto/mips_arch.h
> >    $(OPENSSL_PATH)/crypto/ppc_arch.h
> >    $(OPENSSL_PATH)/crypto/s390x_arch.h
> >    $(OPENSSL_PATH)/crypto/sparc_arch.h
> >    $(OPENSSL_PATH)/crypto/vms_rms.h
> > -  $(OPENSSL_PATH)/crypto/bn/bn_lcl.h
> > -  $(OPENSSL_PATH)/crypto/bn/bn_prime.h
> > -  $(OPENSSL_PATH)/crypto/bn/rsaz_exp.h
> > -  $(OPENSSL_PATH)/crypto/ui/ui_locl.h
> > -  $(OPENSSL_PATH)/crypto/md4/md4_locl.h
> > -  $(OPENSSL_PATH)/crypto/rc4/rc4_locl.h
> > +  $(OPENSSL_PATH)/crypto/aes/aes_locl.h
> >    $(OPENSSL_PATH)/crypto/asn1/asn1_item_list.h
> >    $(OPENSSL_PATH)/crypto/asn1/asn1_locl.h
> >    $(OPENSSL_PATH)/crypto/asn1/charmap.h
> >    $(OPENSSL_PATH)/crypto/asn1/standard_methods.h
> >    $(OPENSSL_PATH)/crypto/asn1/tbl_standard.h
> > -  $(OPENSSL_PATH)/crypto/evp/evp_locl.h
> > -  $(OPENSSL_PATH)/crypto/rand/rand_lcl.h
> > -  $(OPENSSL_PATH)/crypto/ocsp/ocsp_lcl.h
> > -  $(OPENSSL_PATH)/crypto/modes/modes_lcl.h
> > -  $(OPENSSL_PATH)/crypto/comp/comp_lcl.h
> > -  $(OPENSSL_PATH)/crypto/rsa/rsa_locl.h
> > -  $(OPENSSL_PATH)/crypto/x509/x509_lcl.h
> > +  $(OPENSSL_PATH)/crypto/async/async_locl.h
> >    $(OPENSSL_PATH)/crypto/async/arch/async_null.h
> >    $(OPENSSL_PATH)/crypto/async/arch/async_posix.h
> >    $(OPENSSL_PATH)/crypto/async/arch/async_win.h
> > -  $(OPENSSL_PATH)/crypto/sm3/sm3_locl.h
> > +  $(OPENSSL_PATH)/crypto/bio/bio_lcl.h
> > +  $(OPENSSL_PATH)/crypto/bn/bn_lcl.h
> > +  $(OPENSSL_PATH)/crypto/bn/bn_prime.h
> > +  $(OPENSSL_PATH)/crypto/bn/rsaz_exp.h
> > +  $(OPENSSL_PATH)/crypto/comp/comp_lcl.h
> > +  $(OPENSSL_PATH)/crypto/conf/conf_def.h
> > +  $(OPENSSL_PATH)/crypto/conf/conf_lcl.h
> >    $(OPENSSL_PATH)/crypto/des/des_locl.h
> >    $(OPENSSL_PATH)/crypto/des/spr.h
> > +  $(OPENSSL_PATH)/crypto/dh/dh_locl.h
> > +  $(OPENSSL_PATH)/crypto/dso/dso_locl.h
> > +  $(OPENSSL_PATH)/crypto/evp/evp_locl.h
> > +  $(OPENSSL_PATH)/crypto/hmac/hmac_lcl.h
> > +  $(OPENSSL_PATH)/crypto/lhash/lhash_lcl.h
> > +  $(OPENSSL_PATH)/crypto/md4/md4_locl.h
> > +  $(OPENSSL_PATH)/crypto/md5/md5_locl.h
> > +  $(OPENSSL_PATH)/crypto/modes/modes_lcl.h
> > +  $(OPENSSL_PATH)/crypto/objects/obj_dat.h
> > +  $(OPENSSL_PATH)/crypto/objects/obj_lcl.h
> > +  $(OPENSSL_PATH)/crypto/objects/obj_xref.h
> > +  $(OPENSSL_PATH)/crypto/ocsp/ocsp_lcl.h
> > +  $(OPENSSL_PATH)/crypto/pkcs12/p12_lcl.h
> > +  $(OPENSSL_PATH)/crypto/rand/rand_lcl.h
> > +  $(OPENSSL_PATH)/crypto/rc4/rc4_locl.h
> > +  $(OPENSSL_PATH)/crypto/rsa/rsa_locl.h
> > +  $(OPENSSL_PATH)/crypto/sha/sha_locl.h
> >    $(OPENSSL_PATH)/crypto/siphash/siphash_local.h
> > -  $(OPENSSL_PATH)/crypto/aes/aes_locl.h
> > -  $(OPENSSL_PATH)/crypto/async/async_locl.h
> > +  $(OPENSSL_PATH)/crypto/sm3/sm3_locl.h
> > +  $(OPENSSL_PATH)/crypto/store/store_locl.h
> > +  $(OPENSSL_PATH)/crypto/ui/ui_locl.h
> > +  $(OPENSSL_PATH)/crypto/x509/x509_lcl.h
> >    $(OPENSSL_PATH)/crypto/x509v3/ext_dat.h
> >    $(OPENSSL_PATH)/crypto/x509v3/pcy_int.h
> >    $(OPENSSL_PATH)/crypto/x509v3/standard_exts.h
> >    $(OPENSSL_PATH)/crypto/x509v3/v3_admis.h
> > -  $(OPENSSL_PATH)/crypto/objects/obj_dat.h
> > -  $(OPENSSL_PATH)/crypto/objects/obj_lcl.h
> > -  $(OPENSSL_PATH)/crypto/objects/obj_xref.h
> >  # Autogenerated files list ends here
> >    buildinf.h
> >    rand_pool_noise.h
> > diff --git a/CryptoPkg/Library/Include/openssl/opensslconf.h
> b/CryptoPkg/Library/Include/openssl/opensslconf.h
> > index 2b4d538e92..bd34e53ef2 100644
> > --- a/CryptoPkg/Library/Include/openssl/opensslconf.h
> > +++ b/CryptoPkg/Library/Include/openssl/opensslconf.h
> > @@ -109,9 +109,6 @@ extern "C" {
> >  #ifndef OPENSSL_NO_ASYNC
> >  # define OPENSSL_NO_ASYNC
> >  #endif
> > -#ifndef OPENSSL_NO_AUTOALGINIT
> > -# define OPENSSL_NO_AUTOALGINIT
> > -#endif
> >  #ifndef OPENSSL_NO_AUTOERRINIT
> >  # define OPENSSL_NO_AUTOERRINIT
> >  #endif
> > diff --git a/CryptoPkg/Library/OpensslLib/process_files.pl
> b/CryptoPkg/Library/OpensslLib/process_files.pl
> > index bbcfa0d0e7..4ba25da407 100755
> > --- a/CryptoPkg/Library/OpensslLib/process_files.pl
> > +++ b/CryptoPkg/Library/OpensslLib/process_files.pl
> > @@ -51,9 +51,8 @@ BEGIN {
> >                  "no-afalgeng",
> >                  "no-asm",
> >                  "no-async",
> > -                "no-autoalginit",
> >                  "no-autoerrinit",
> > -                "no-autoload-config",
> > +                "no-autoload-config",
> 
> (4) What changed here ("no-autoload-config")?
> 
> Thanks,
> Laszlo
> 
> >                  "no-bf",
> >                  "no-blake2",
> >                  "no-camellia",
> > @@ -157,7 +156,7 @@ foreach my $product ((@{$unified_info{libraries}},
> >  # Update the perl script to generate the missing header files
> >  #
> >  my @dir_list = ();
> > -for (keys %{$unified_info{dirinfo}}){
> > +for (sort keys %{$unified_info{dirinfo}}){
> >    push @dir_list,$_;
> >  }
> >
> >
> 
> 
> 


      reply	other threads:[~2020-02-13 23:39 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-02-12 23:40 [PATCH 0/1] Remove "no-autoalginit" flag from OpenSSL build Zurcher, Christopher J
2020-02-12 23:41 ` [PATCH 1/1] CryptoPkg/OpensslLib: " Zurcher, Christopher J
2020-02-13 23:29   ` [edk2-devel] " Laszlo Ersek
2020-02-13 23:39     ` Zurcher, Christopher J [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=MWHPR11MB201415A2D126CF3DC3517012B31A0@MWHPR11MB2014.namprd11.prod.outlook.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox