]> git.proxmox.com Git - mirror_edk2.git/commitdiff
CryptoPkg: Enable ssl build in OpensslLib directly
authorJiaxin Wu <jiaxin.wu@intel.com>
Wed, 14 Dec 2016 02:30:32 +0000 (10:30 +0800)
committerJiaxin Wu <jiaxin.wu@intel.com>
Thu, 22 Dec 2016 12:33:15 +0000 (20:33 +0800)
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>
CryptoPkg/Include/OpenSslSupport.h
CryptoPkg/Library/BaseCryptLib/SysCall/CrtWrapper.c
CryptoPkg/Library/OpensslLib/Install.cmd
CryptoPkg/Library/OpensslLib/Install.sh
CryptoPkg/Library/OpensslLib/OpensslLib.inf
CryptoPkg/Library/OpensslLib/process_files.sh

index dad40e4b6b83304ab753f0b3fd662e2f16992469..600578e780fd272b03ff2d767db6098e3f7f08e1 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   Root include file to support building OpenSSL Crypto Library.\r
 \r
-Copyright (c) 2010 - 2015, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2010 - 2016, Intel Corporation. All rights reserved.<BR>\r
 This program and the accompanying materials\r
 are licensed and made available under the terms and conditions of the BSD License\r
 which accompanies this distribution.  The full text of the license may be found at\r
@@ -118,6 +118,8 @@ typedef UINT16         nlink_t;
 typedef int            pid_t;\r
 typedef void           *DIR;\r
 typedef void           __sighandler_t (int);\r
+typedef UINT8          __uint8_t;\r
+typedef UINT8          sa_family_t;\r
 \r
 //\r
 // Structures from EFI Application Toolkit required to build Open SSL\r
@@ -172,6 +174,12 @@ struct stat {
   INT64    st_qspare[2];\r
 };\r
 \r
+struct sockaddr {\r
+  __uint8_t sa_len;         /* total length */\r
+  sa_family_t sa_family;    /* address family */\r
+  char    sa_data[14];      /* actually longer; address value */\r
+};\r
+\r
 //\r
 // Externs from EFI Application Toolkit required to build Open SSL\r
 //\r
@@ -273,5 +281,6 @@ extern FILE  *stdout;
 #define localtime(timer)                  NULL\r
 #define gmtime_r(timer,result)            (result = NULL)\r
 #define atoi(nptr)                        AsciiStrDecimalToUintn(nptr)\r
+#define gettimeofday(tvp,tz)              do { (tvp)->tv_sec = time(NULL); (tvp)->tv_usec = 0; } while (0)\r
 \r
 #endif\r
index c0ccc0e79e6d5b2a80861acf72d87f411ebdc08f..a2386bc0730c26ad4c0a78d3a39b8900c8e67dc5 100644 (file)
@@ -384,6 +384,11 @@ size_t fread (void *b, size_t c, size_t i, FILE *f)
   return 0;\r
 }\r
 \r
+int fputs (const char *s, FILE *f)\r
+{\r
+  return 0;\r
+}\r
+\r
 int fprintf (FILE *f, const char *s, ...)\r
 {\r
   return 0;\r
@@ -448,3 +453,8 @@ ssize_t write (int f, const void *b, size_t l)
 {\r
   return 0;\r
 }\r
+\r
+int printf (char const *fmt, ...)\r
+{\r
+  return 0;\r
+}\r
index 3d86bc78d06aafcb7055b895e12b6107ca80c355..093414d4b8a0539b0308373bf4b9ba65710aff03 100755 (executable)
@@ -8,6 +8,7 @@ copy crypto\opensslconf.h       include\openssl
 copy crypto\ebcdic.h            include\openssl\r
 copy crypto\symhacks.h          include\openssl\r
 copy crypto\ossl_typ.h          include\openssl\r
+copy crypto\o_dir.h             include\r
 copy crypto\objects\objects.h   include\openssl\r
 copy crypto\objects\obj_mac.h   include\openssl\r
 copy crypto\md4\md4.h           include\openssl\r
index e6703d1b7848acad63193eb1acb6ac764182fbd2..7bd55f6ae352952c83b299540668393e5edabe30 100755 (executable)
@@ -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
index 8121e8347c86c6e73c9a629f2fe095350ed1f8c5..c14e36d341f738772441ee0f063ab46972d6da1e 100644 (file)
   $(OPENSSL_PATH)/crypto/ocsp/ocsp_vfy.c\r
   $(OPENSSL_PATH)/crypto/ocsp/ocsp_err.c\r
   $(OPENSSL_PATH)/crypto/krb5/krb5_asn.c\r
+  $(OPENSSL_PATH)/crypto/pqueue/pqueue.c\r
   $(OPENSSL_PATH)/crypto/cmac/cmac.c\r
   $(OPENSSL_PATH)/crypto/cmac/cm_ameth.c\r
   $(OPENSSL_PATH)/crypto/cmac/cm_pmeth.c\r
+  $(OPENSSL_PATH)/ssl/s2_meth.c\r
+  $(OPENSSL_PATH)/ssl/s2_srvr.c\r
+  $(OPENSSL_PATH)/ssl/s2_clnt.c\r
+  $(OPENSSL_PATH)/ssl/s2_lib.c\r
+  $(OPENSSL_PATH)/ssl/s2_enc.c\r
+  $(OPENSSL_PATH)/ssl/s2_pkt.c\r
+  $(OPENSSL_PATH)/ssl/s3_meth.c\r
+  $(OPENSSL_PATH)/ssl/s3_srvr.c\r
+  $(OPENSSL_PATH)/ssl/s3_clnt.c\r
+  $(OPENSSL_PATH)/ssl/s3_lib.c\r
+  $(OPENSSL_PATH)/ssl/s3_enc.c\r
+  $(OPENSSL_PATH)/ssl/s3_pkt.c\r
+  $(OPENSSL_PATH)/ssl/s3_both.c\r
+  $(OPENSSL_PATH)/ssl/s3_cbc.c\r
+  $(OPENSSL_PATH)/ssl/s23_meth.c\r
+  $(OPENSSL_PATH)/ssl/s23_srvr.c\r
+  $(OPENSSL_PATH)/ssl/s23_clnt.c\r
+  $(OPENSSL_PATH)/ssl/s23_lib.c\r
+  $(OPENSSL_PATH)/ssl/s23_pkt.c\r
+  $(OPENSSL_PATH)/ssl/t1_meth.c\r
+  $(OPENSSL_PATH)/ssl/t1_srvr.c\r
+  $(OPENSSL_PATH)/ssl/t1_clnt.c\r
+  $(OPENSSL_PATH)/ssl/t1_lib.c\r
+  $(OPENSSL_PATH)/ssl/t1_enc.c\r
+  $(OPENSSL_PATH)/ssl/t1_ext.c\r
+  $(OPENSSL_PATH)/ssl/d1_meth.c\r
+  $(OPENSSL_PATH)/ssl/d1_srvr.c\r
+  $(OPENSSL_PATH)/ssl/d1_clnt.c\r
+  $(OPENSSL_PATH)/ssl/d1_lib.c\r
+  $(OPENSSL_PATH)/ssl/d1_pkt.c\r
+  $(OPENSSL_PATH)/ssl/d1_both.c\r
+  $(OPENSSL_PATH)/ssl/d1_srtp.c\r
+  $(OPENSSL_PATH)/ssl/ssl_lib.c\r
+  $(OPENSSL_PATH)/ssl/ssl_err2.c\r
+  $(OPENSSL_PATH)/ssl/ssl_cert.c\r
+  $(OPENSSL_PATH)/ssl/ssl_sess.c\r
+  $(OPENSSL_PATH)/ssl/ssl_ciph.c\r
+  $(OPENSSL_PATH)/ssl/ssl_stat.c\r
+  $(OPENSSL_PATH)/ssl/ssl_rsa.c\r
+  $(OPENSSL_PATH)/ssl/ssl_asn1.c\r
+  $(OPENSSL_PATH)/ssl/ssl_txt.c\r
+  $(OPENSSL_PATH)/ssl/ssl_algs.c\r
+  $(OPENSSL_PATH)/ssl/bio_ssl.c\r
+  $(OPENSSL_PATH)/ssl/ssl_err.c\r
+  $(OPENSSL_PATH)/ssl/kssl.c\r
+  $(OPENSSL_PATH)/ssl/t1_reneg.c\r
+  $(OPENSSL_PATH)/ssl/tls_srp.c\r
+  $(OPENSSL_PATH)/ssl/t1_trce.c\r
+  $(OPENSSL_PATH)/ssl/ssl_utst.c\r
 \r
 # Autogenerated files list ends here\r
 \r
   # C4702: Potentially uninitialized local variable name used\r
   # C4311: pointer truncation from 'type' to 'type'\r
   #\r
-  MSFT:*_*_IA32_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4244 /wd4701 /wd4702 /wd4706\r
+  MSFT:*_*_IA32_CC_FLAGS    = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4244 /wd4245 /wd4701 /wd4702 /wd4706\r
   MSFT:*_*_X64_CC_FLAGS     = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4133 /wd4244 /wd4245 /wd4267 /wd4701 /wd4305 /wd4306 /wd4702 /wd4706 /wd4311\r
   MSFT:*_*_IPF_CC_FLAGS     = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4133 /wd4244 /wd4245 /wd4267 /wd4701 /wd4305 /wd4306 /wd4702 /wd4706\r
 \r
index 885adf3a2f7f226f8f44fd5de9413bea82ee0d24..6f069ce264ac07a1095e75987aaae8808546d534 100755 (executable)
@@ -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