public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Zurcher, Christopher J" <christopher.j.zurcher@intel.com>
To: "Wang, Jian J" <jian.j.wang@intel.com>,
	"devel@edk2.groups.io" <devel@edk2.groups.io>
Cc: "Lu, XiaoyuX" <xiaoyux.lu@intel.com>
Subject: Re: [PATCH v2 1/1] CryptoPkg/OpensslLib: Remove "no-autoalginit" flag from OpenSSL build
Date: Thu, 13 Feb 2020 21:12:25 +0000	[thread overview]
Message-ID: <MWHPR11MB2014FD6C5301AC291347E3E0B31A0@MWHPR11MB2014.namprd11.prod.outlook.com> (raw)
In-Reply-To: <D827630B58408649ACB04F44C510003625A0DE75@SHSMSX107.ccr.corp.intel.com>

> -----Original Message-----
> From: Wang, Jian J <jian.j.wang@intel.com>
> Sent: Thursday, February 13, 2020 07:19
> To: Zurcher, Christopher J <christopher.j.zurcher@intel.com>;
> devel@edk2.groups.io
> Cc: Lu, XiaoyuX <xiaoyux.lu@intel.com>
> Subject: RE: [PATCH v2 1/1] CryptoPkg/OpensslLib: Remove "no-autoalginit"
> flag from OpenSSL build
> 
> Thanks for the patch. Two comments below.
> 
> 
> > -----Original Message-----
> > From: Zurcher, Christopher J <christopher.j.zurcher@intel.com>
> > Sent: Thursday, February 13, 2020 11:34 AM
> > To: devel@edk2.groups.io
> > Cc: Wang, Jian J <jian.j.wang@intel.com>; Lu, XiaoyuX
> <xiaoyux.lu@intel.com>
> > Subject: [PATCH v2 1/1] CryptoPkg/OpensslLib: Remove "no-autoalginit"
> flag
> > from OpenSSL build
> >
> > This is required for interfaces such as EVP to retrieve algorithms
> > by name.
> >
> > 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.
> >
> > Cc: Jian J Wang <jian.j.wang@intel.com>
> > Cc: Xiaoyu Lu <xiaoyux.lu@intel.com>
> > Signed-off-by: Christopher J Zurcher <christopher.j.zurcher@intel.com>
> > ---
> >  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",
> 
> Not quite sure the impact. Did you do any tests for it?

Negligible increase in build size, no noticeable change in performance.

> 
> >                  "no-autoerrinit",
> > -                "no-autoload-config",
> > +                "no-autoload-config",
> 
> I don't see difference here. Why there's one here? Please double check.

This was just deleting some trailing whitespace.

Thanks,
Christopher Zurcher

> 
> Regards,
> Jian
> >                  "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,$_;
> >  }
> >
> > --
> > 2.16.2.windows.1
> 


      reply	other threads:[~2020-02-13 21:12 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-02-13  3:33 [PATCH v2 0/1] Remove "no-autoalginit" flag from OpenSSL build Zurcher, Christopher J
2020-02-13  3:33 ` [PATCH v2 1/1] CryptoPkg/OpensslLib: " Zurcher, Christopher J
2020-02-13 15:19   ` Wang, Jian J
2020-02-13 21:12     ` 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=MWHPR11MB2014FD6C5301AC291347E3E0B31A0@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