summaryrefslogtreecommitdiff
path: root/thirdparty/openssl/winrt_fix.patch
blob: caf180a75bb5e6436bfea5997815a7031e7e1c80 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
diff --git a/drivers/builtin_openssl2/crypto/rand/rand_win.c b/drivers/builtin_openssl2/crypto/rand/rand_win.c
index 06670ae..70fd52a 100644
--- a/drivers/builtin_openssl2/crypto/rand/rand_win.c
+++ b/drivers/builtin_openssl2/crypto/rand/rand_win.c
@@ -118,8 +118,10 @@
 # ifndef _WIN32_WINNT
 #  define _WIN32_WINNT 0x0400
 # endif
+#ifndef WINRT_ENABLED
 # include <wincrypt.h>
 # include <tlhelp32.h>
+#endif
 
 /*
  * Limit the time spent walking through the heap, processes, threads and
@@ -161,7 +163,7 @@ typedef struct tagCURSORINFO {
 #  define CURSOR_SHOWING     0x00000001
 # endif                         /* CURSOR_SHOWING */
 
-# if !defined(OPENSSL_SYS_WINCE)
+# if !defined(OPENSSL_SYS_WINCE) && !defined(WINRT_ENABLED)
 typedef BOOL(WINAPI *CRYPTACQUIRECONTEXTW) (HCRYPTPROV *, LPCWSTR, LPCWSTR,
                                             DWORD, DWORD);
 typedef BOOL(WINAPI *CRYPTGENRANDOM) (HCRYPTPROV, DWORD, BYTE *);
@@ -196,6 +198,7 @@ typedef NET_API_STATUS(NET_API_FUNCTION *NETFREE) (LPBYTE);
 #  endif                        /* 1 */
 # endif                         /* !OPENSSL_SYS_WINCE */
 
+#if !defined(WINRT_ENABLED)
 int RAND_poll(void)
 {
     MEMORYSTATUS m;
@@ -580,6 +583,8 @@ int RAND_poll(void)
     return (1);
 }
 
+#endif // WINRT_ENABLED
+
 int RAND_event(UINT iMsg, WPARAM wParam, LPARAM lParam)
 {
     double add_entropy = 0;
@@ -682,7 +687,7 @@ static void readtimer(void)
 
 static void readscreen(void)
 {
-# if !defined(OPENSSL_SYS_WINCE) && !defined(OPENSSL_SYS_WIN32_CYGWIN)
+# if !defined(OPENSSL_SYS_WINCE) && !defined(OPENSSL_SYS_WIN32_CYGWIN) && !defined(WINRT_ENABLED)
     HDC hScrDC;                 /* screen DC */
     HBITMAP hBitmap;            /* handle for our bitmap */
     BITMAP bm;                  /* bitmap properties */
diff --git a/drivers/builtin_openssl2/openssl/dtls1.h b/drivers/builtin_openssl2/openssl/dtls1.h
index 64ad3c8..a58aca2 100644
--- a/drivers/builtin_openssl2/openssl/dtls1.h
+++ b/drivers/builtin_openssl2/openssl/dtls1.h
@@ -81,6 +81,9 @@
 #   include <sys/time.h>
 #  endif
 # endif
+#ifdef WINRT_ENABLED
+#include <winsock2.h>
+#endif
 
 #ifdef  __cplusplus
 extern "C" {