summaryrefslogtreecommitdiffstats
path: root/CryptoPkg
diff options
context:
space:
mode:
authorJiaxin Wu <jiaxin.wu@intel.com>2016-12-14 10:30:32 +0800
committerJiaxin Wu <jiaxin.wu@intel.com>2016-12-22 20:33:15 +0800
commit32387e0081db5ec9cda2b58f72e2ccb04e3ff48e (patch)
tree8c4f19d6b358a8e5a27007a3014bec48d33a7cca /CryptoPkg
parent885ccf972fee1bb8e12ca37221475feb6550c1de (diff)
downloaddevice_linaro_bootloader_edk2-32387e0081db5ec9cda2b58f72e2ccb04e3ff48e.tar.gz
device_linaro_bootloader_edk2-32387e0081db5ec9cda2b58f72e2ccb04e3ff48e.tar.bz2
device_linaro_bootloader_edk2-32387e0081db5ec9cda2b58f72e2ccb04e3ff48e.zip
CryptoPkg: Enable ssl build in OpensslLib directly
This patch is used to enable ssl build in OpensslLib module directly. Cc: Wu Jiaxin <jiaxin.wu@intel.com> Cc: Ye Ting <ting.ye@intel.com> Cc: Long Qin <qin.long@intel.com> Cc: Fu Siyuan <siyuan.fu@intel.com> Cc: Zhang Lubo <lubo.zhang@intel.com> Cc: Thomas Palmer <thomas.palmer@hpe.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Long Qin <qin.long@intel.com> Reviewed-by: Wu Jiaxin <jiaxin.wu@intel.com> Reviewed-by: Ye Ting <ting.ye@intel.com> Tested-by: Wu Jiaxin <jiaxin.wu@intel.com>
Diffstat (limited to 'CryptoPkg')
-rw-r--r--CryptoPkg/Include/OpenSslSupport.h11
-rw-r--r--CryptoPkg/Library/BaseCryptLib/SysCall/CrtWrapper.c10
-rwxr-xr-xCryptoPkg/Library/OpensslLib/Install.cmd1
-rwxr-xr-xCryptoPkg/Library/OpensslLib/Install.sh1
-rw-r--r--CryptoPkg/Library/OpensslLib/OpensslLib.inf52
-rwxr-xr-xCryptoPkg/Library/OpensslLib/process_files.sh7
6 files changed, 75 insertions, 7 deletions
diff --git a/CryptoPkg/Include/OpenSslSupport.h b/CryptoPkg/Include/OpenSslSupport.h
index dad40e4b6..600578e78 100644
--- a/CryptoPkg/Include/OpenSslSupport.h
+++ b/CryptoPkg/Include/OpenSslSupport.h
@@ -1,7 +1,7 @@
/** @file
Root include file to support building OpenSSL Crypto Library.
-Copyright (c) 2010 - 2015, Intel Corporation. All rights reserved.<BR>
+Copyright (c) 2010 - 2016, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at
@@ -118,6 +118,8 @@ typedef UINT16 nlink_t;
typedef int pid_t;
typedef void *DIR;
typedef void __sighandler_t (int);
+typedef UINT8 __uint8_t;
+typedef UINT8 sa_family_t;
//
// Structures from EFI Application Toolkit required to build Open SSL
@@ -172,6 +174,12 @@ struct stat {
INT64 st_qspare[2];
};
+struct sockaddr {
+ __uint8_t sa_len; /* total length */
+ sa_family_t sa_family; /* address family */
+ char sa_data[14]; /* actually longer; address value */
+};
+
//
// Externs from EFI Application Toolkit required to build Open SSL
//
@@ -273,5 +281,6 @@ extern FILE *stdout;
#define localtime(timer) NULL
#define gmtime_r(timer,result) (result = NULL)
#define atoi(nptr) AsciiStrDecimalToUintn(nptr)
+#define gettimeofday(tvp,tz) do { (tvp)->tv_sec = time(NULL); (tvp)->tv_usec = 0; } while (0)
#endif
diff --git a/CryptoPkg/Library/BaseCryptLib/SysCall/CrtWrapper.c b/CryptoPkg/Library/BaseCryptLib/SysCall/CrtWrapper.c
index c0ccc0e79..a2386bc07 100644
--- a/CryptoPkg/Library/BaseCryptLib/SysCall/CrtWrapper.c
+++ b/CryptoPkg/Library/BaseCryptLib/SysCall/CrtWrapper.c
@@ -384,6 +384,11 @@ size_t fread (void *b, size_t c, size_t i, FILE *f)
return 0;
}
+int fputs (const char *s, FILE *f)
+{
+ return 0;
+}
+
int fprintf (FILE *f, const char *s, ...)
{
return 0;
@@ -448,3 +453,8 @@ ssize_t write (int f, const void *b, size_t l)
{
return 0;
}
+
+int printf (char const *fmt, ...)
+{
+ return 0;
+}
diff --git a/CryptoPkg/Library/OpensslLib/Install.cmd b/CryptoPkg/Library/OpensslLib/Install.cmd
index 3d86bc78d..093414d4b 100755
--- a/CryptoPkg/Library/OpensslLib/Install.cmd
+++ b/CryptoPkg/Library/OpensslLib/Install.cmd
@@ -8,6 +8,7 @@ copy crypto\opensslconf.h include\openssl
copy crypto\ebcdic.h include\openssl
copy crypto\symhacks.h include\openssl
copy crypto\ossl_typ.h include\openssl
+copy crypto\o_dir.h include
copy crypto\objects\objects.h include\openssl
copy crypto\objects\obj_mac.h include\openssl
copy crypto\md4\md4.h include\openssl
diff --git a/CryptoPkg/Library/OpensslLib/Install.sh b/CryptoPkg/Library/OpensslLib/Install.sh
index e6703d1b7..7bd55f6ae 100755
--- a/CryptoPkg/Library/OpensslLib/Install.sh
+++ b/CryptoPkg/Library/OpensslLib/Install.sh
@@ -10,6 +10,7 @@ cp crypto/opensslconf.h include/openssl
cp crypto/ebcdic.h include/openssl
cp crypto/symhacks.h include/openssl
cp crypto/ossl_typ.h include/openssl
+cp crypto/o_dir.h include
cp crypto/objects/objects.h include/openssl
cp crypto/objects/obj_mac.h include/openssl
cp crypto/md4/md4.h include/openssl
diff --git a/CryptoPkg/Library/OpensslLib/OpensslLib.inf b/CryptoPkg/Library/OpensslLib/OpensslLib.inf
index 8121e8347..c14e36d34 100644
--- a/CryptoPkg/Library/OpensslLib/OpensslLib.inf
+++ b/CryptoPkg/Library/OpensslLib/OpensslLib.inf
@@ -470,9 +470,59 @@
$(OPENSSL_PATH)/crypto/ocsp/ocsp_vfy.c
$(OPENSSL_PATH)/crypto/ocsp/ocsp_err.c
$(OPENSSL_PATH)/crypto/krb5/krb5_asn.c
+ $(OPENSSL_PATH)/crypto/pqueue/pqueue.c
$(OPENSSL_PATH)/crypto/cmac/cmac.c
$(OPENSSL_PATH)/crypto/cmac/cm_ameth.c
$(OPENSSL_PATH)/crypto/cmac/cm_pmeth.c
+ $(OPENSSL_PATH)/ssl/s2_meth.c
+ $(OPENSSL_PATH)/ssl/s2_srvr.c
+ $(OPENSSL_PATH)/ssl/s2_clnt.c
+ $(OPENSSL_PATH)/ssl/s2_lib.c
+ $(OPENSSL_PATH)/ssl/s2_enc.c
+ $(OPENSSL_PATH)/ssl/s2_pkt.c
+ $(OPENSSL_PATH)/ssl/s3_meth.c
+ $(OPENSSL_PATH)/ssl/s3_srvr.c
+ $(OPENSSL_PATH)/ssl/s3_clnt.c
+ $(OPENSSL_PATH)/ssl/s3_lib.c
+ $(OPENSSL_PATH)/ssl/s3_enc.c
+ $(OPENSSL_PATH)/ssl/s3_pkt.c
+ $(OPENSSL_PATH)/ssl/s3_both.c
+ $(OPENSSL_PATH)/ssl/s3_cbc.c
+ $(OPENSSL_PATH)/ssl/s23_meth.c
+ $(OPENSSL_PATH)/ssl/s23_srvr.c
+ $(OPENSSL_PATH)/ssl/s23_clnt.c
+ $(OPENSSL_PATH)/ssl/s23_lib.c
+ $(OPENSSL_PATH)/ssl/s23_pkt.c
+ $(OPENSSL_PATH)/ssl/t1_meth.c
+ $(OPENSSL_PATH)/ssl/t1_srvr.c
+ $(OPENSSL_PATH)/ssl/t1_clnt.c
+ $(OPENSSL_PATH)/ssl/t1_lib.c
+ $(OPENSSL_PATH)/ssl/t1_enc.c
+ $(OPENSSL_PATH)/ssl/t1_ext.c
+ $(OPENSSL_PATH)/ssl/d1_meth.c
+ $(OPENSSL_PATH)/ssl/d1_srvr.c
+ $(OPENSSL_PATH)/ssl/d1_clnt.c
+ $(OPENSSL_PATH)/ssl/d1_lib.c
+ $(OPENSSL_PATH)/ssl/d1_pkt.c
+ $(OPENSSL_PATH)/ssl/d1_both.c
+ $(OPENSSL_PATH)/ssl/d1_srtp.c
+ $(OPENSSL_PATH)/ssl/ssl_lib.c
+ $(OPENSSL_PATH)/ssl/ssl_err2.c
+ $(OPENSSL_PATH)/ssl/ssl_cert.c
+ $(OPENSSL_PATH)/ssl/ssl_sess.c
+ $(OPENSSL_PATH)/ssl/ssl_ciph.c
+ $(OPENSSL_PATH)/ssl/ssl_stat.c
+ $(OPENSSL_PATH)/ssl/ssl_rsa.c
+ $(OPENSSL_PATH)/ssl/ssl_asn1.c
+ $(OPENSSL_PATH)/ssl/ssl_txt.c
+ $(OPENSSL_PATH)/ssl/ssl_algs.c
+ $(OPENSSL_PATH)/ssl/bio_ssl.c
+ $(OPENSSL_PATH)/ssl/ssl_err.c
+ $(OPENSSL_PATH)/ssl/kssl.c
+ $(OPENSSL_PATH)/ssl/t1_reneg.c
+ $(OPENSSL_PATH)/ssl/tls_srp.c
+ $(OPENSSL_PATH)/ssl/t1_trce.c
+ $(OPENSSL_PATH)/ssl/ssl_utst.c
# Autogenerated files list ends here
@@ -500,7 +550,7 @@
# C4702: Potentially uninitialized local variable name used
# C4311: pointer truncation from 'type' to 'type'
#
- MSFT:*_*_IA32_CC_FLAGS = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4244 /wd4701 /wd4702 /wd4706
+ MSFT:*_*_IA32_CC_FLAGS = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4244 /wd4245 /wd4701 /wd4702 /wd4706
MSFT:*_*_X64_CC_FLAGS = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4133 /wd4244 /wd4245 /wd4267 /wd4701 /wd4305 /wd4306 /wd4702 /wd4706 /wd4311
MSFT:*_*_IPF_CC_FLAGS = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4133 /wd4244 /wd4245 /wd4267 /wd4701 /wd4305 /wd4306 /wd4702 /wd4706
diff --git a/CryptoPkg/Library/OpensslLib/process_files.sh b/CryptoPkg/Library/OpensslLib/process_files.sh
index 885adf3a2..6f069ce26 100755
--- a/CryptoPkg/Library/OpensslLib/process_files.sh
+++ b/CryptoPkg/Library/OpensslLib/process_files.sh
@@ -42,7 +42,6 @@ fi
no-locking \
no-mdc2 \
no-posix-io \
- no-pqueue \
no-rc2 \
no-rcs \
no-rfc3779 \
@@ -77,13 +76,11 @@ function filelist ()
;;
LIBSRC=*)
LIBSRC=$(echo "$LINE" | sed s/^LIBSRC=//)
- if [ "$RELATIVE_DIRECTORY" != "ssl" ]; then
- for FILE in $LIBSRC; do
+ for FILE in $LIBSRC; do
if [ "$FILE" != "b_print.c" ]; then
echo -e ' $(OPENSSL_PATH)/'$RELATIVE_DIRECTORY/$FILE\\r\\
fi
- done
- fi
+ done
;;
esac
done