Update the FreeRTOS+WolfSSL Win32 demo to use the latest WolfSSL libraries.
diff --git a/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/FreeRTOS_Plus_CyaSSL.sln b/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/FreeRTOS_Plus_WolfSSL.sln
similarity index 100%
rename from FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/FreeRTOS_Plus_CyaSSL.sln
rename to FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/FreeRTOS_Plus_WolfSSL.sln
diff --git a/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/READ_ME.url b/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/READ_ME.url
index c9b8dac..4b773e3 100644
--- a/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/READ_ME.url
+++ b/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/READ_ME.url
@@ -1,5 +1,5 @@
 [InternetShortcut]

-URL=http://www.freertos.org/FreeRTOS-Plus/CyaSSL/FreeRTOS_CyaSSL_Example.shtml

+URL=http://www.freertos.org/FreeRTOS-Plus/WolfSSL/FreeRTOS_WolfSSL_Example.shtml

 IDList=

 [{000214A0-0000-0000-C000-000000000046}]

 Prop3=19,2

diff --git a/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/SecureTCPClientTask.c b/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/SecureTCPClientTask.c
index 01fcdf0..0e29df0 100644
--- a/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/SecureTCPClientTask.c
+++ b/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/SecureTCPClientTask.c
@@ -72,8 +72,8 @@
 /* Win32 includes. */

 #include <WinSock2.h>

 

-/* CyaSSL includes. */

-#include "cyassl/ssl.h"

+/* wolfSSL includes. */

+#include "wolfssl/ssl.h"

 

 /* Standard includes. */

 #include <stdint.h>

@@ -85,8 +85,8 @@
 

 /*-----------------------------------------------------------*/

 

-/* The CyaSSL context for the client. */

-static CYASSL_CTX* xCyaSSL_ClientContext = NULL;

+/* The wolfSSL context for the client. */

+static WOLFSSL_CTX* xWolfSSL_ClientContext = NULL;

 

 /*-----------------------------------------------------------*/

 

@@ -95,7 +95,7 @@
 {

 SOCKET xClientSocket;

 struct sockaddr_in xConnection;

-CYASSL* xCyaSSL_Object;

+WOLFSSL* xWolfSSL_Object;

 WORD wVersionRequested;

 WSADATA xWSAData;

 char cString[ 50 ];

@@ -115,12 +115,12 @@
 	xConnection.sin_addr.s_addr = inet_addr("127.0.0.1");

 	xConnection.sin_port = htons( configTCP_PORT_NUMBER );

 

-    /* Attempt to create a context that uses the TLS V1 server protocol. */

-    xCyaSSL_ClientContext = CyaSSL_CTX_new( CyaTLSv1_client_method() );

-	configASSERT( xCyaSSL_ClientContext );

+    /* Attempt to create a context that uses the TLS 1.2 server protocol. */

+    xWolfSSL_ClientContext = wolfSSL_CTX_new( wolfTLSv1_2_client_method() );

+	configASSERT( xWolfSSL_ClientContext );

 

     /* Load the CA certificate. */

-    lReturned = CyaSSL_CTX_load_verify_locations( xCyaSSL_ClientContext, "ca-cert.pem", 0 );

+    lReturned = wolfSSL_CTX_load_verify_locations( xWolfSSL_ClientContext, "ca-cert.pem", 0 );

 	configASSERT( lReturned == SSL_SUCCESS );

 

 	for( ;; )

@@ -132,15 +132,15 @@
 		/* Connect to the secure server. */

 		if( connect( xClientSocket, ( SOCKADDR * ) &xConnection, sizeof( xConnection ) ) == 0 )

 		{

-			/* The connect was successful.  Create a CyaSSL object to associate

+			/* The connect was successful.  Create a wolfSSL object to associate

 			with this connection. */

-			xCyaSSL_Object = CyaSSL_new( xCyaSSL_ClientContext );

+			xWolfSSL_Object = wolfSSL_new( xWolfSSL_ClientContext );

 

-			if( xCyaSSL_Object != NULL )

+			if( xWolfSSL_Object != NULL )

 			{

-				/* Associate the created CyaSSL object with the connected

+				/* Associate the created wolfSSL object with the connected

 				socket. */

-				lReturned = CyaSSL_set_fd( xCyaSSL_Object, xClientSocket );

+				lReturned = wolfSSL_set_fd( xWolfSSL_Object, xClientSocket );

 				configASSERT( lReturned == SSL_SUCCESS );

 

 				/* The count is used to differentiate between messages sent to

@@ -155,7 +155,7 @@
 					/* The next line is the secure equivalent of the standard

 					sockets call:

 					lReturned = send( xClientSocket, cString, strlen( cString ) + 1, 0 ); */

-					lReturned = CyaSSL_write( xCyaSSL_Object, cString, strlen( cString ) + 1 );

+					lReturned = wolfSSL_write( xWolfSSL_Object, cString, strlen( cString ) + 1 );

 

 

 					/* Short delay to prevent the messages streaming up the

@@ -166,7 +166,7 @@
 				} while( ( lReturned != SOCKET_ERROR ) && ( ulCount < 10UL ) );

 			}

 

-			CyaSSL_free( xCyaSSL_Object );

+			wolfSSL_free( xWolfSSL_Object );

 			closesocket( xClientSocket );

 

 			/* Delay for a short time before starting over. */

diff --git a/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/SecureTCPServerTask.c b/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/SecureTCPServerTask.c
index af97f02..12a80fc 100644
--- a/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/SecureTCPServerTask.c
+++ b/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/SecureTCPServerTask.c
@@ -72,8 +72,8 @@
 /* Win32 includes. */

 #include <WinSock2.h>

 

-/* CyaSSL includes. */

-#include "cyassl/ssl.h"

+/* wolfSSL includes. */

+#include "wolfssl/ssl.h"

 

 /* Standard includes. */

 #include <stdint.h>

@@ -101,10 +101,10 @@
  */

 static SOCKET prvOpenServerSocket( void );

 

-/* 

- * Prepare the CyaSSL library for use.

+/*

+ * Prepare the wolfSSL library for use.

  */

-static void prvInitialiseCyaSSL( void );

+static void prvInitialiseWolfSSL( void );

 

 /*

  * The task that implements the client side of the connection.

@@ -113,8 +113,8 @@
 

 /*-----------------------------------------------------------*/

 

-/* The CyaSSL context for the server. */

-static CYASSL_CTX* xCyaSSL_ServerContext = NULL;

+/* The wolfSSL context for the server. */

+static WOLFSSL_CTX* xWolfSSL_ServerContext = NULL;

 

 /*-----------------------------------------------------------*/

 

@@ -127,19 +127,19 @@
 struct sockaddr_in xClient;

 int xClientAddressLength = sizeof( struct sockaddr_in );

 SOCKET xListeningSocket, xConnectedSocket;

-CYASSL* xCyaSSL_Object; /* Only one connection is accepted at a time, so only one object is needed at a time. */

+WOLFSSL* xWolfSSL_Object; /* Only one connection is accepted at a time, so only one object is needed at a time. */

 

 	/* Just to prevent compiler warnings. */

 	( void ) pvParameters;

 

-	/* Perform the initialisation necessary before CyaSSL can be used. */

-	prvInitialiseCyaSSL();

-	configASSERT( xCyaSSL_ServerContext );

+	/* Perform the initialisation necessary before wolfSSL can be used. */

+	prvInitialiseWolfSSL();

+	configASSERT( xWolfSSL_ServerContext );

 

 	/* Attempt to open the socket. */

 	xListeningSocket = prvOpenServerSocket();

 

-	/* Now the server socket has been created and the CyaSSL library has been

+	/* Now the server socket has been created and the wolfSSL library has been

 	initialised, the task that implements the client side can be created. */

 	xTaskCreate( vSecureTCPClientTask, "Client", configMINIMAL_STACK_SIZE, NULL, sstSECURE_CLIENT_TASK_PRIORITY, NULL );

 

@@ -155,25 +155,25 @@
 			{

 				printf( "Connection established\r\n" );

 

-				/* A connection has been accepted by the server.  Create a 

-				CyaSSL object for use with the newly connected socket. */

-				xCyaSSL_Object = NULL;

-				xCyaSSL_Object = CyaSSL_new( xCyaSSL_ServerContext );

-    

-				if( xCyaSSL_Object != NULL )

+				/* A connection has been accepted by the server.  Create a

+				wolfSSL object for use with the newly connected socket. */

+				xWolfSSL_Object = NULL;

+				xWolfSSL_Object = wolfSSL_new( xWolfSSL_ServerContext );

+

+				if( xWolfSSL_Object != NULL )

 				{

-					/* Associate the created CyaSSL object with the connected 

+					/* Associate the created wolfSSL object with the connected

 					socket. */

-					xReturned = CyaSSL_set_fd( xCyaSSL_Object, xConnectedSocket );

+					xReturned = wolfSSL_set_fd( xWolfSSL_Object, xConnectedSocket );

 					configASSERT( xReturned == SSL_SUCCESS );

 

 					do

 					{

-						/* The next line is the secure equivalent to the 

+						/* The next line is the secure equivalent to the

 						standard sockets call:

 						lBytes = recv( xConnectedSocket, cReceivedString, 50, 0 ); */

-						lBytes = CyaSSL_read( xCyaSSL_Object, cReceivedString, sizeof( cReceivedString ) );

-						

+						lBytes = wolfSSL_read( xWolfSSL_Object, cReceivedString, sizeof( cReceivedString ) );

+

 						/* Print the received characters. */

 						if( lBytes > 0 )

 						{

@@ -183,13 +183,13 @@
 					} while ( lBytes > 0 );

 

 					/* The connection was closed, close the socket and free the

-					CyaSSL object. */

-					closesocket( xConnectedSocket );					

-					CyaSSL_free( xCyaSSL_Object );

+					wolfSSL object. */

+					closesocket( xConnectedSocket );

+					wolfSSL_free( xWolfSSL_Object );

 					printf( "Connection closed, back to start\r\n\r\n" );

-				}								

+				}

 			}

-		} 

+		}

 	}

 	else

 	{

@@ -252,37 +252,36 @@
 }

 /*-----------------------------------------------------------*/

 

-static void prvInitialiseCyaSSL( void )

+static void prvInitialiseWolfSSL( void )

 {

 int32_t iReturn;

 

-	#ifdef DEBUG_CYASSL

+	#ifdef DEBUG_WOLFSSL

 	{

-		CyaSSL_Debugging_ON();

+		wolfSSL_Debugging_ON();

 	}

 	#endif

 

-    /* Initialise CyaSSL.  This must be done before any other CyaSSL functions

+    /* Initialise wolfSSL.  This must be done before any other wolfSSL functions

     are called. */

-    CyaSSL_Init();

+    wolfSSL_Init();

 

-    /* Attempt to create a context that uses the TLS V1 server protocol. */

-    xCyaSSL_ServerContext = CyaSSL_CTX_new( CyaTLSv1_server_method() );

+    /* Attempt to create a context that uses the TLS 1.2 server protocol. */

+    xWolfSSL_ServerContext = wolfSSL_CTX_new( wolfTLSv1_2_server_method() );

 

-    if( xCyaSSL_ServerContext != NULL )

+    if( xWolfSSL_ServerContext != NULL )

     {

         /* Load the CA certificate.  Real applications should ensure that

-        CyaSSL_CTX_load_verify_locations() returns SSL_SUCCESS before 

+        wolfSSL_CTX_load_verify_locations() returns SSL_SUCCESS before

 		proceeding. */

-        iReturn = CyaSSL_CTX_load_verify_locations( xCyaSSL_ServerContext, "ca-cert.pem", 0 );

+        iReturn = wolfSSL_CTX_load_verify_locations( xWolfSSL_ServerContext, "ca-cert.pem", 0 );

 		configASSERT( iReturn == SSL_SUCCESS );

 

-		iReturn = CyaSSL_CTX_use_certificate_file( xCyaSSL_ServerContext, "server-cert.pem", SSL_FILETYPE_PEM );

+		iReturn = wolfSSL_CTX_use_certificate_file( xWolfSSL_ServerContext, "server-cert.pem", SSL_FILETYPE_PEM );

 		configASSERT( iReturn == SSL_SUCCESS );

 

-		iReturn = CyaSSL_CTX_use_PrivateKey_file( xCyaSSL_ServerContext, "server-key.pem", SSL_FILETYPE_PEM );

+		iReturn = wolfSSL_CTX_use_PrivateKey_file( xWolfSSL_ServerContext, "server-key.pem", SSL_FILETYPE_PEM );

 		configASSERT( iReturn == SSL_SUCCESS );

     }

 }

 

-

diff --git a/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/WIN32.vcxproj b/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/WIN32.vcxproj
index 373e390..09a0648 100644
--- a/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/WIN32.vcxproj
+++ b/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/WIN32.vcxproj
@@ -54,7 +54,7 @@
     </Midl>

     <ClCompile>

       <Optimization>Disabled</Optimization>

-      <AdditionalIncludeDirectories>..\..\Source\CyaSSL;..\..\..\FreeRTOS\Source\include;..\..\..\FreeRTOS\Source\portable\MSVC-MingW;.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

+      <AdditionalIncludeDirectories>..\..\Source\wolfSSL;..\..\..\FreeRTOS\Source\include;..\..\..\FreeRTOS\Source\portable\MSVC-MingW;.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT=0x0500;WINVER=0x400;_CRT_SECURE_NO_WARNINGS;SIZEOF_LONG_LONG=8;%(PreprocessorDefinitions)</PreprocessorDefinitions>

       <MinimalRebuild>true</MinimalRebuild>

       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>

@@ -67,6 +67,7 @@
       <SuppressStartupBanner>true</SuppressStartupBanner>

       <DisableLanguageExtensions>false</DisableLanguageExtensions>

       <DebugInformationFormat>EditAndContinue</DebugInformationFormat>

+      <DisableSpecificWarnings>4206;4214;%(DisableSpecificWarnings)</DisableSpecificWarnings>

     </ClCompile>

     <ResourceCompile>

       <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>

@@ -128,34 +129,54 @@
     </Bscmake>

   </ItemDefinitionGroup>

   <ItemGroup>

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\aes.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\arc4.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\asn.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\coding.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\des3.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\dh.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\dsa.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\error.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\hc128.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\hmac.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\integer.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\logging.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\md4.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\md5.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\memory.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\misc.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\pwdbased.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\rabbit.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\random.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\rsa.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\sha.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\sha256.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\wc_port.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\src\internal.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\src\io.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\src\keys.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\src\ssl.c" />

-    <ClCompile Include="..\..\Source\CyaSSL\src\tls.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\aes.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\arc4.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\asn.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\blake2b.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\camellia.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\chacha.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\chacha20_poly1305.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\coding.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\compress.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\curve25519.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\des3.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\dh.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\dsa.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\ecc.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\ecc_fp.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\ed25519.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\error.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\fe_low_mem.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\fe_operations.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\ge_low_mem.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\ge_operations.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\hash.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\hc128.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\hmac.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\integer.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\logging.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\md2.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\md4.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\md5.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\memory.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\misc.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\pkcs7.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\poly1305.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\pwdbased.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\rabbit.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\random.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\ripemd.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\rsa.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\sha.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\sha256.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\sha512.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\tfm.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\wc_port.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\src\internal.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\src\io.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\src\keys.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\src\ssl.c" />

+    <ClCompile Include="..\..\Source\wolfSSL\src\tls.c" />

     <ClCompile Include="..\..\..\FreeRTOS\Source\list.c" />

     <ClCompile Include="..\..\..\FreeRTOS\Source\portable\MemMang\heap_3.c" />

     <ClCompile Include="..\..\..\FreeRTOS\Source\portable\MSVC-MingW\port.c" />

diff --git a/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/WIN32.vcxproj.filters b/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/WIN32.vcxproj.filters
index c1376b8..de5048f 100644
--- a/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/WIN32.vcxproj.filters
+++ b/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/WIN32.vcxproj.filters
@@ -22,10 +22,10 @@
     <Filter Include="FreeRTOS+">

       <UniqueIdentifier>{e5ad4ec7-23dc-4295-8add-2acaee488f5a}</UniqueIdentifier>

     </Filter>

-    <Filter Include="FreeRTOS+\CyaSSL">

+    <Filter Include="FreeRTOS+\wolfSSL">

       <UniqueIdentifier>{8b481200-a9e5-48a4-98ad-49d2783cd652}</UniqueIdentifier>

     </Filter>

-    <Filter Include="FreeRTOS+\CyaSSL\ctaocrypt">

+    <Filter Include="FreeRTOS+\wolfSSL\wolfcrypt">

       <UniqueIdentifier>{738eaad9-4e49-4309-9074-c3d9e102fb4a}</UniqueIdentifier>

     </Filter>

   </ItemGroup>

@@ -51,83 +51,143 @@
     <ClCompile Include="..\..\..\FreeRTOS\Source\tasks.c">

       <Filter>FreeRTOS\Source</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\src\internal.c">

-      <Filter>FreeRTOS+\CyaSSL</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\src\internal.c">

+      <Filter>FreeRTOS+\wolfSSL</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\src\io.c">

-      <Filter>FreeRTOS+\CyaSSL</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\src\io.c">

+      <Filter>FreeRTOS+\wolfSSL</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\src\keys.c">

-      <Filter>FreeRTOS+\CyaSSL</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\src\keys.c">

+      <Filter>FreeRTOS+\wolfSSL</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\src\ssl.c">

-      <Filter>FreeRTOS+\CyaSSL</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\src\ssl.c">

+      <Filter>FreeRTOS+\wolfSSL</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\src\tls.c">

-      <Filter>FreeRTOS+\CyaSSL</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\src\tls.c">

+      <Filter>FreeRTOS+\wolfSSL</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\aes.c">

-      <Filter>FreeRTOS+\CyaSSL\ctaocrypt</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\aes.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\arc4.c">

-      <Filter>FreeRTOS+\CyaSSL\ctaocrypt</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\arc4.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\asn.c">

-      <Filter>FreeRTOS+\CyaSSL\ctaocrypt</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\asn.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\coding.c">

-      <Filter>FreeRTOS+\CyaSSL\ctaocrypt</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\blake2b.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\des3.c">

-      <Filter>FreeRTOS+\CyaSSL\ctaocrypt</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\camellia.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\dh.c">

-      <Filter>FreeRTOS+\CyaSSL\ctaocrypt</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\chacha.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\dsa.c">

-      <Filter>FreeRTOS+\CyaSSL\ctaocrypt</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\chacha20_poly1305.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\hc128.c">

-      <Filter>FreeRTOS+\CyaSSL\ctaocrypt</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\coding.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\hmac.c">

-      <Filter>FreeRTOS+\CyaSSL\ctaocrypt</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\compress.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\integer.c">

-      <Filter>FreeRTOS+\CyaSSL\ctaocrypt</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\curve25519.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\logging.c">

-      <Filter>FreeRTOS+\CyaSSL\ctaocrypt</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\des3.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\md4.c">

-      <Filter>FreeRTOS+\CyaSSL\ctaocrypt</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\dh.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\md5.c">

-      <Filter>FreeRTOS+\CyaSSL\ctaocrypt</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\dsa.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\memory.c">

-      <Filter>FreeRTOS+\CyaSSL\ctaocrypt</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\ecc.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\misc.c">

-      <Filter>FreeRTOS+\CyaSSL\ctaocrypt</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\ecc_fp.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\pwdbased.c">

-      <Filter>FreeRTOS+\CyaSSL\ctaocrypt</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\ed25519.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\rabbit.c">

-      <Filter>FreeRTOS+\CyaSSL\ctaocrypt</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\fe_low_mem.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\random.c">

-      <Filter>FreeRTOS+\CyaSSL\ctaocrypt</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\fe_operations.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\rsa.c">

-      <Filter>FreeRTOS+\CyaSSL\ctaocrypt</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\ge_low_mem.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\sha256.c">

-      <Filter>FreeRTOS+\CyaSSL\ctaocrypt</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\ge_operations.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\sha.c">

-      <Filter>FreeRTOS+\CyaSSL\ctaocrypt</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\hash.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

+    </ClCompile>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\hc128.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

+    </ClCompile>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\hmac.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

+    </ClCompile>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\integer.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

+    </ClCompile>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\logging.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

+    </ClCompile>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\md2.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

+    </ClCompile>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\md4.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

+    </ClCompile>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\md5.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

+    </ClCompile>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\memory.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

+    </ClCompile>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\misc.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

+    </ClCompile>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\pkcs7.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

+    </ClCompile>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\poly1305.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

+    </ClCompile>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\pwdbased.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

+    </ClCompile>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\rabbit.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

+    </ClCompile>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\random.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

+    </ClCompile>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\ripemd.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

+    </ClCompile>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\rsa.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

+    </ClCompile>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\sha.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

+    </ClCompile>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\sha256.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

+    </ClCompile>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\sha512.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

+    </ClCompile>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\tfm.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

     </ClCompile>

     <ClCompile Include="SecureTCPServerTask.c">

       <Filter>Demo App Source</Filter>

@@ -135,11 +195,11 @@
     <ClCompile Include="SecureTCPClientTask.c">

       <Filter>Demo App Source</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\wc_port.c">

-      <Filter>FreeRTOS+\CyaSSL\ctaocrypt</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\wc_port.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

     </ClCompile>

-    <ClCompile Include="..\..\Source\CyaSSL\ctaocrypt\src\error.c">

-      <Filter>FreeRTOS+\CyaSSL\ctaocrypt</Filter>

+    <ClCompile Include="..\..\Source\wolfSSL\wolfcrypt\src\error.c">

+      <Filter>FreeRTOS+\wolfSSL\wolfcrypt</Filter>

     </ClCompile>

   </ItemGroup>

   <ItemGroup>

@@ -147,4 +207,4 @@
       <Filter>Demo App Source</Filter>

     </ClInclude>

   </ItemGroup>

-</Project>
\ No newline at end of file
+</Project>

diff --git a/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/ca-cert.pem b/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/ca-cert.pem
index 7e64eb4..6eacbeb 100644
--- a/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/ca-cert.pem
+++ b/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/ca-cert.pem
@@ -1,40 +1,12 @@
------BEGIN CERTIFICATE-----
-MIIEqjCCA5KgAwIBAgIJAJpBR82hFGKMMA0GCSqGSIb3DQEBBQUAMIGUMQswCQYD
-VQQGEwJVUzEQMA4GA1UECAwHTW9udGFuYTEQMA4GA1UEBwwHQm96ZW1hbjERMA8G
-A1UECgwIU2F3dG9vdGgxEzARBgNVBAsMCkNvbnN1bHRpbmcxGDAWBgNVBAMMD3d3
-dy53b2xmc3NsLmNvbTEfMB0GCSqGSIb3DQEJARYQaW5mb0B3b2xmc3NsLmNvbTAe
-Fw0xNDA3MTEwMzIwMDhaFw0xNzA0MDYwMzIwMDhaMIGUMQswCQYDVQQGEwJVUzEQ
-MA4GA1UECAwHTW9udGFuYTEQMA4GA1UEBwwHQm96ZW1hbjERMA8GA1UECgwIU2F3
-dG9vdGgxEzARBgNVBAsMCkNvbnN1bHRpbmcxGDAWBgNVBAMMD3d3dy53b2xmc3Ns
-LmNvbTEfMB0GCSqGSIb3DQEJARYQaW5mb0B3b2xmc3NsLmNvbTCCASIwDQYJKoZI
-hvcNAQEBBQADggEPADCCAQoCggEBAL8Myi0Ush6EQlvNOB9K8k11EPG2NZ/fyn0D
-mNOs3gNm7irx2LB9bgdUCxCYIU2AyxIg58xP3kV9yXJ3MurKkLtpUhADL6jzlcXx
-i2JWG+9nb6QQQZWtCpvjpcCw0nB2UDBbqOgILHztp6J6jTgpHKzH7fJ8lbCVgn1J
-XDjNdyXvvYB1U5Q8PcpjW58VtdMdEy8Z0TzbdjrMuH3J5cLX2kBv2CHccxtCLVOc
-/hr8fat6Nj+Y3oR8BWfOahQ4h6nxjLVoy2h/cSAr9aBj9VYvoybSt2+xWhfXOJkI
-/pNYb/7DE0kIFgunTWcAUjFnI06Y7VFFHbkE2Qvs2CizS73tNnkCAwEAAaOB/DCB
-+TAdBgNVHQ4EFgQUJ45nEXTDJh0/7TNjs6TYHTDl6NUwgckGA1UdIwSBwTCBvoAU
-J45nEXTDJh0/7TNjs6TYHTDl6NWhgZqkgZcwgZQxCzAJBgNVBAYTAlVTMRAwDgYD
-VQQIDAdNb250YW5hMRAwDgYDVQQHDAdCb3plbWFuMREwDwYDVQQKDAhTYXd0b290
-aDETMBEGA1UECwwKQ29uc3VsdGluZzEYMBYGA1UEAwwPd3d3LndvbGZzc2wuY29t
-MR8wHQYJKoZIhvcNAQkBFhBpbmZvQHdvbGZzc2wuY29tggkAmkFHzaEUYowwDAYD
-VR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAeXgMbXmIkfw6FZz5J2IW8CEf
-+n0/oqgyHvfyEal0FnRe3BjK8AAq1QMGJjDxR4P9Mm787apPfQxjYDEvfAy/mWaH
-7ScIhi3EM+iYIxz+o9uaSU78WkLvccM/rdxKqNKjHQmsMwR7hvNtAFmjyNvRPHP2
-DpDWXkngvzZjCHulsI81O1aMETVJBBzQ57pWxQ0KkY3Wt2IZNBJSTNJtfMU9DxiB
-VMv2POWE0tZxFewaNAvwoCF0Q8ijsN/ZZ9rirZNI+KCHvXkU4GIK3/cxLjF70TIq
-Cv5dFO/ZZFDkg5G8cA3XiI3ZvIQOxRqzv2QCTlGRpKKFFYOv8FubKElfsrMD2A==
------END CERTIFICATE-----
 Certificate:
     Data:
         Version: 3 (0x2)
-        Serial Number:
-            9a:41:47:cd:a1:14:62:8c
-    Signature Algorithm: sha1WithRSAEncryption
+        Serial Number: 15672591315981621815 (0xd9803ac3d2f4da37)
+    Signature Algorithm: sha256WithRSAEncryption
         Issuer: C=US, ST=Montana, L=Bozeman, O=Sawtooth, OU=Consulting, CN=www.wolfssl.com/emailAddress=info@wolfssl.com
         Validity
-            Not Before: Jul 11 03:20:08 2014 GMT
-            Not After : Apr  6 03:20:08 2017 GMT
+            Not Before: May  7 18:21:01 2015 GMT
+            Not After : Jan 31 18:21:01 2018 GMT
         Subject: C=US, ST=Montana, L=Bozeman, O=Sawtooth, OU=Consulting, CN=www.wolfssl.com/emailAddress=info@wolfssl.com
         Subject Public Key Info:
             Public Key Algorithm: rsaEncryption
@@ -65,23 +37,50 @@
             X509v3 Authority Key Identifier: 
                 keyid:27:8E:67:11:74:C3:26:1D:3F:ED:33:63:B3:A4:D8:1D:30:E5:E8:D5
                 DirName:/C=US/ST=Montana/L=Bozeman/O=Sawtooth/OU=Consulting/CN=www.wolfssl.com/emailAddress=info@wolfssl.com
-                serial:9A:41:47:CD:A1:14:62:8C
+                serial:D9:80:3A:C3:D2:F4:DA:37
 
             X509v3 Basic Constraints: 
                 CA:TRUE
-    Signature Algorithm: sha1WithRSAEncryption
-         79:78:0c:6d:79:88:91:fc:3a:15:9c:f9:27:62:16:f0:21:1f:
-         fa:7d:3f:a2:a8:32:1e:f7:f2:11:a9:74:16:74:5e:dc:18:ca:
-         f0:00:2a:d5:03:06:26:30:f1:47:83:fd:32:6e:fc:ed:aa:4f:
-         7d:0c:63:60:31:2f:7c:0c:bf:99:66:87:ed:27:08:86:2d:c4:
-         33:e8:98:23:1c:fe:a3:db:9a:49:4e:fc:5a:42:ef:71:c3:3f:
-         ad:dc:4a:a8:d2:a3:1d:09:ac:33:04:7b:86:f3:6d:00:59:a3:
-         c8:db:d1:3c:73:f6:0e:90:d6:5e:49:e0:bf:36:63:08:7b:a5:
-         b0:8f:35:3b:56:8c:11:35:49:04:1c:d0:e7:ba:56:c5:0d:0a:
-         91:8d:d6:b7:62:19:34:12:52:4c:d2:6d:7c:c5:3d:0f:18:81:
-         54:cb:f6:3c:e5:84:d2:d6:71:15:ec:1a:34:0b:f0:a0:21:74:
-         43:c8:a3:b0:df:d9:67:da:e2:ad:93:48:f8:a0:87:bd:79:14:
-         e0:62:0a:df:f7:31:2e:31:7b:d1:32:2a:0a:fe:5d:14:ef:d9:
-         64:50:e4:83:91:bc:70:0d:d7:88:8d:d9:bc:84:0e:c5:1a:b3:
-         bf:64:02:4e:51:91:a4:a2:85:15:83:af:f0:5b:9b:28:49:5f:
-         b2:b3:03:d8
+    Signature Algorithm: sha256WithRSAEncryption
+         7a:af:44:3b:aa:6f:53:42:b2:33:aa:43:5f:56:30:d3:b9:96:
+         0b:9a:55:5a:39:2a:0b:4e:e4:2e:f1:95:66:c9:86:36:82:8d:
+         63:7c:4d:a2:ee:48:ba:03:c7:90:d7:a7:c6:74:60:48:5f:31:
+         a2:f9:5e:3e:c3:82:e1:e5:2f:41:81:83:29:25:79:d1:53:00:
+         69:3c:ed:0a:30:3b:41:1d:92:a1:2c:a8:9d:2c:e3:23:87:79:
+         e0:55:6e:91:a8:50:da:46:2f:c2:20:50:3e:2b:47:97:14:b0:
+         7d:04:ba:45:51:d0:6e:e1:5a:a2:4b:84:9c:4d:cd:85:04:f9:
+         28:31:82:93:bc:c7:59:49:91:03:e8:df:6a:e4:56:ad:6a:cb:
+         1f:0d:37:e4:5e:bd:e7:9f:d5:ec:9d:3c:18:25:9b:f1:2f:50:
+         7d:eb:31:cb:f1:63:22:9d:57:fc:f3:84:20:1a:c6:07:87:92:
+         26:9e:15:18:59:33:06:dc:fb:b0:b6:76:5d:f1:c1:2f:c8:2f:
+         62:9c:c0:d6:de:eb:65:77:f3:5c:a6:c3:88:27:96:75:b4:f4:
+         54:cd:ff:2d:21:2e:96:f0:07:73:4b:e9:93:92:90:de:62:d9:
+         a3:3b:ac:6e:24:5f:27:4a:b3:94:70:ff:30:17:e7:7e:32:8f:
+         65:b7:75:58
+-----BEGIN CERTIFICATE-----
+MIIEqjCCA5KgAwIBAgIJANmAOsPS9No3MA0GCSqGSIb3DQEBCwUAMIGUMQswCQYD
+VQQGEwJVUzEQMA4GA1UECAwHTW9udGFuYTEQMA4GA1UEBwwHQm96ZW1hbjERMA8G
+A1UECgwIU2F3dG9vdGgxEzARBgNVBAsMCkNvbnN1bHRpbmcxGDAWBgNVBAMMD3d3
+dy53b2xmc3NsLmNvbTEfMB0GCSqGSIb3DQEJARYQaW5mb0B3b2xmc3NsLmNvbTAe
+Fw0xNTA1MDcxODIxMDFaFw0xODAxMzExODIxMDFaMIGUMQswCQYDVQQGEwJVUzEQ
+MA4GA1UECAwHTW9udGFuYTEQMA4GA1UEBwwHQm96ZW1hbjERMA8GA1UECgwIU2F3
+dG9vdGgxEzARBgNVBAsMCkNvbnN1bHRpbmcxGDAWBgNVBAMMD3d3dy53b2xmc3Ns
+LmNvbTEfMB0GCSqGSIb3DQEJARYQaW5mb0B3b2xmc3NsLmNvbTCCASIwDQYJKoZI
+hvcNAQEBBQADggEPADCCAQoCggEBAL8Myi0Ush6EQlvNOB9K8k11EPG2NZ/fyn0D
+mNOs3gNm7irx2LB9bgdUCxCYIU2AyxIg58xP3kV9yXJ3MurKkLtpUhADL6jzlcXx
+i2JWG+9nb6QQQZWtCpvjpcCw0nB2UDBbqOgILHztp6J6jTgpHKzH7fJ8lbCVgn1J
+XDjNdyXvvYB1U5Q8PcpjW58VtdMdEy8Z0TzbdjrMuH3J5cLX2kBv2CHccxtCLVOc
+/hr8fat6Nj+Y3oR8BWfOahQ4h6nxjLVoy2h/cSAr9aBj9VYvoybSt2+xWhfXOJkI
+/pNYb/7DE0kIFgunTWcAUjFnI06Y7VFFHbkE2Qvs2CizS73tNnkCAwEAAaOB/DCB
++TAdBgNVHQ4EFgQUJ45nEXTDJh0/7TNjs6TYHTDl6NUwgckGA1UdIwSBwTCBvoAU
+J45nEXTDJh0/7TNjs6TYHTDl6NWhgZqkgZcwgZQxCzAJBgNVBAYTAlVTMRAwDgYD
+VQQIDAdNb250YW5hMRAwDgYDVQQHDAdCb3plbWFuMREwDwYDVQQKDAhTYXd0b290
+aDETMBEGA1UECwwKQ29uc3VsdGluZzEYMBYGA1UEAwwPd3d3LndvbGZzc2wuY29t
+MR8wHQYJKoZIhvcNAQkBFhBpbmZvQHdvbGZzc2wuY29tggkA2YA6w9L02jcwDAYD
+VR0TBAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEAeq9EO6pvU0KyM6pDX1Yw07mW
+C5pVWjkqC07kLvGVZsmGNoKNY3xNou5IugPHkNenxnRgSF8xovlePsOC4eUvQYGD
+KSV50VMAaTztCjA7QR2SoSyonSzjI4d54FVukahQ2kYvwiBQPitHlxSwfQS6RVHQ
+buFaokuEnE3NhQT5KDGCk7zHWUmRA+jfauRWrWrLHw035F6955/V7J08GCWb8S9Q
+fesxy/FjIp1X/POEIBrGB4eSJp4VGFkzBtz7sLZ2XfHBL8gvYpzA1t7rZXfzXKbD
+iCeWdbT0VM3/LSEulvAHc0vpk5KQ3mLZozusbiRfJ0qzlHD/MBfnfjKPZbd1WA==
+-----END CERTIFICATE-----
diff --git a/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/main.c b/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/main.c
index db2bb1e..0639299 100644
--- a/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/main.c
+++ b/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/main.c
@@ -101,7 +101,7 @@
 const uint32_t ulLongTime_ms = 250UL;

 

 	/* Create the TCP server task.  This will itself create the client task

-	once it has completed the CyaSSL initialisation. */

+	once it has completed the wolfSSL initialisation. */

 	xTaskCreate( vSecureTCPServerTask, "Server", configMINIMAL_STACK_SIZE, NULL, mainSECURE_SERVER_TASK_PRIORITY, NULL );

 

 	/* Start the task running. */

diff --git a/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/server-cert.pem b/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/server-cert.pem
index f56cba9..95df724 100644
--- a/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/server-cert.pem
+++ b/FreeRTOS-Plus/Demo/FreeRTOS_Plus_WolfSSL_Windows_Simulator/server-cert.pem
@@ -2,11 +2,11 @@
     Data:
         Version: 3 (0x2)
         Serial Number: 1 (0x1)
-    Signature Algorithm: sha1WithRSAEncryption
+    Signature Algorithm: sha256WithRSAEncryption
         Issuer: C=US, ST=Montana, L=Bozeman, O=Sawtooth, OU=Consulting, CN=www.wolfssl.com/emailAddress=info@wolfssl.com
         Validity
-            Not Before: Jul 11 17:20:14 2014 GMT
-            Not After : Apr  6 17:20:14 2017 GMT
+            Not Before: May  7 18:21:01 2015 GMT
+            Not After : Jan 31 18:21:01 2018 GMT
         Subject: C=US, ST=Montana, L=Bozeman, O=wolfSSL, OU=Support, CN=www.wolfssl.com/emailAddress=info@wolfssl.com
         Subject Public Key Info:
             Public Key Algorithm: rsaEncryption
@@ -37,32 +37,32 @@
             X509v3 Authority Key Identifier: 
                 keyid:27:8E:67:11:74:C3:26:1D:3F:ED:33:63:B3:A4:D8:1D:30:E5:E8:D5
                 DirName:/C=US/ST=Montana/L=Bozeman/O=Sawtooth/OU=Consulting/CN=www.wolfssl.com/emailAddress=info@wolfssl.com
-                serial:9A:41:47:CD:A1:14:62:8C
+                serial:D9:80:3A:C3:D2:F4:DA:37
 
             X509v3 Basic Constraints: 
                 CA:TRUE
-    Signature Algorithm: sha1WithRSAEncryption
-         3d:8c:70:05:5b:62:4b:bf:6c:b6:48:61:01:10:1d:5e:05:ba:
-         55:94:2c:ae:59:6f:97:80:5d:6c:86:ec:9a:eb:15:45:44:e4:
-         56:f8:75:ca:8a:45:32:f4:c7:e1:fa:f2:98:1c:91:d3:3f:e8:
-         0e:c9:1b:fa:e1:79:99:67:0e:0d:6b:8a:ec:1a:2c:59:c4:34:
-         04:8d:39:77:cd:b5:e9:60:5b:82:bf:34:ce:ed:c6:4f:3f:b4:
-         5c:4d:8a:b4:f4:0a:04:12:a0:56:c1:e1:33:37:a1:54:87:48:
-         e9:81:c2:0f:8f:6f:d3:52:4c:4c:32:4c:6b:9f:3a:04:8f:77:
-         5d:ad:dc:3d:2b:f2:c9:df:3c:60:5d:d8:fc:86:72:7c:3d:d0:
-         84:4b:8c:df:26:43:fe:c0:cc:5b:e1:36:b3:3d:32:28:a3:ef:
-         0c:20:d6:b1:50:39:d6:67:a9:8b:84:bc:92:34:eb:19:23:e8:
-         10:8f:ea:bd:18:8c:93:27:3c:74:75:8e:58:04:fa:2a:74:44:
-         7d:fc:4d:39:df:54:17:ba:78:e1:5d:6a:70:d3:7c:a2:80:81:
-         e6:19:51:91:c3:44:51:ec:bb:88:a9:53:e1:d7:a9:8c:28:f4:
-         21:1c:42:51:09:b4:12:6d:a0:d6:25:09:85:c6:2a:0c:af:a7:
-         58:e6:52:8b
+    Signature Algorithm: sha256WithRSAEncryption
+         67:c0:2c:a9:43:47:e7:11:14:77:ae:cc:d8:e0:6b:23:82:91:
+         63:e8:a8:0d:21:c5:c8:47:97:2f:d5:f3:86:fb:6c:ce:25:f9:
+         7c:78:c8:3a:22:68:f2:16:1e:d2:d2:3f:24:04:87:f2:b7:c1:
+         62:63:ba:c5:fa:ae:d2:20:81:1a:d2:0c:ae:26:6b:1b:2b:10:
+         d3:e1:9a:4e:64:6c:97:db:36:a8:8f:f8:05:63:bf:ba:0d:88:
+         0b:87:46:c9:e4:64:e3:d7:bd:b8:2d:d5:c1:c3:c4:db:55:68:
+         dc:a3:7a:40:b9:a9:f6:04:4a:22:cf:98:76:1c:e4:a3:ff:79:
+         19:96:57:63:07:6f:f6:32:77:16:50:9b:e3:34:18:d4:eb:be:
+         fd:b6:6f:e3:c7:f6:85:bf:ac:32:ad:98:57:be:13:92:44:10:
+         a5:f3:ae:e2:66:da:44:a9:94:71:3f:d0:2f:20:59:87:e4:5a:
+         40:ee:d2:e4:0c:ce:25:94:dc:0f:fe:38:e0:41:52:34:5c:bb:
+         c3:db:c1:5f:76:c3:5d:0e:32:69:2b:9d:01:ed:50:1b:4f:77:
+         a9:a9:d8:71:30:cb:2e:2c:70:00:ab:78:4b:d7:15:d9:17:f8:
+         64:b2:f7:3a:da:e1:0b:8b:0a:e1:4e:b1:03:46:14:ca:94:e3:
+         44:77:d7:59
 -----BEGIN CERTIFICATE-----
-MIIEnjCCA4agAwIBAgIBATANBgkqhkiG9w0BAQUFADCBlDELMAkGA1UEBhMCVVMx
+MIIEnjCCA4agAwIBAgIBATANBgkqhkiG9w0BAQsFADCBlDELMAkGA1UEBhMCVVMx
 EDAOBgNVBAgMB01vbnRhbmExEDAOBgNVBAcMB0JvemVtYW4xETAPBgNVBAoMCFNh
 d3Rvb3RoMRMwEQYDVQQLDApDb25zdWx0aW5nMRgwFgYDVQQDDA93d3cud29sZnNz
-bC5jb20xHzAdBgkqhkiG9w0BCQEWEGluZm9Ad29sZnNzbC5jb20wHhcNMTQwNzEx
-MTcyMDE0WhcNMTcwNDA2MTcyMDE0WjCBkDELMAkGA1UEBhMCVVMxEDAOBgNVBAgM
+bC5jb20xHzAdBgkqhkiG9w0BCQEWEGluZm9Ad29sZnNzbC5jb20wHhcNMTUwNTA3
+MTgyMTAxWhcNMTgwMTMxMTgyMTAxWjCBkDELMAkGA1UEBhMCVVMxEDAOBgNVBAgM
 B01vbnRhbmExEDAOBgNVBAcMB0JvemVtYW4xEDAOBgNVBAoMB3dvbGZTU0wxEDAO
 BgNVBAsMB1N1cHBvcnQxGDAWBgNVBAMMD3d3dy53b2xmc3NsLmNvbTEfMB0GCSqG
 SIb3DQEJARYQaW5mb0B3b2xmc3NsLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEP
@@ -76,24 +76,23 @@
 s6TYHTDl6NWhgZqkgZcwgZQxCzAJBgNVBAYTAlVTMRAwDgYDVQQIDAdNb250YW5h
 MRAwDgYDVQQHDAdCb3plbWFuMREwDwYDVQQKDAhTYXd0b290aDETMBEGA1UECwwK
 Q29uc3VsdGluZzEYMBYGA1UEAwwPd3d3LndvbGZzc2wuY29tMR8wHQYJKoZIhvcN
-AQkBFhBpbmZvQHdvbGZzc2wuY29tggkAmkFHzaEUYowwDAYDVR0TBAUwAwEB/zAN
-BgkqhkiG9w0BAQUFAAOCAQEAPYxwBVtiS79stkhhARAdXgW6VZQsrllvl4BdbIbs
-musVRUTkVvh1yopFMvTH4frymByR0z/oDskb+uF5mWcODWuK7BosWcQ0BI05d821
-6WBbgr80zu3GTz+0XE2KtPQKBBKgVsHhMzehVIdI6YHCD49v01JMTDJMa586BI93
-Xa3cPSvyyd88YF3Y/IZyfD3QhEuM3yZD/sDMW+E2sz0yKKPvDCDWsVA51mepi4S8
-kjTrGSPoEI/qvRiMkyc8dHWOWAT6KnREffxNOd9UF7p44V1qcNN8ooCB5hlRkcNE
-Uey7iKlT4depjCj0IRxCUQm0Em2g1iUJhcYqDK+nWOZSiw==
+AQkBFhBpbmZvQHdvbGZzc2wuY29tggkA2YA6w9L02jcwDAYDVR0TBAUwAwEB/zAN
+BgkqhkiG9w0BAQsFAAOCAQEAZ8AsqUNH5xEUd67M2OBrI4KRY+ioDSHFyEeXL9Xz
+hvtsziX5fHjIOiJo8hYe0tI/JASH8rfBYmO6xfqu0iCBGtIMriZrGysQ0+GaTmRs
+l9s2qI/4BWO/ug2IC4dGyeRk49e9uC3VwcPE21Vo3KN6QLmp9gRKIs+Ydhzko/95
+GZZXYwdv9jJ3FlCb4zQY1Ou+/bZv48f2hb+sMq2YV74TkkQQpfOu4mbaRKmUcT/Q
+LyBZh+RaQO7S5AzOJZTcD/444EFSNFy7w9vBX3bDXQ4yaSudAe1QG093qanYcTDL
+LixwAKt4S9cV2Rf4ZLL3OtrhC4sK4U6xA0YUypTjRHfXWQ==
 -----END CERTIFICATE-----
 Certificate:
     Data:
         Version: 3 (0x2)
-        Serial Number:
-            9a:41:47:cd:a1:14:62:8c
-    Signature Algorithm: sha1WithRSAEncryption
+        Serial Number: 15672591315981621815 (0xd9803ac3d2f4da37)
+    Signature Algorithm: sha256WithRSAEncryption
         Issuer: C=US, ST=Montana, L=Bozeman, O=Sawtooth, OU=Consulting, CN=www.wolfssl.com/emailAddress=info@wolfssl.com
         Validity
-            Not Before: Jul 11 03:20:08 2014 GMT
-            Not After : Apr  6 03:20:08 2017 GMT
+            Not Before: May  7 18:21:01 2015 GMT
+            Not After : Jan 31 18:21:01 2018 GMT
         Subject: C=US, ST=Montana, L=Bozeman, O=Sawtooth, OU=Consulting, CN=www.wolfssl.com/emailAddress=info@wolfssl.com
         Subject Public Key Info:
             Public Key Algorithm: rsaEncryption
@@ -124,32 +123,32 @@
             X509v3 Authority Key Identifier: 
                 keyid:27:8E:67:11:74:C3:26:1D:3F:ED:33:63:B3:A4:D8:1D:30:E5:E8:D5
                 DirName:/C=US/ST=Montana/L=Bozeman/O=Sawtooth/OU=Consulting/CN=www.wolfssl.com/emailAddress=info@wolfssl.com
-                serial:9A:41:47:CD:A1:14:62:8C
+                serial:D9:80:3A:C3:D2:F4:DA:37
 
             X509v3 Basic Constraints: 
                 CA:TRUE
-    Signature Algorithm: sha1WithRSAEncryption
-         79:78:0c:6d:79:88:91:fc:3a:15:9c:f9:27:62:16:f0:21:1f:
-         fa:7d:3f:a2:a8:32:1e:f7:f2:11:a9:74:16:74:5e:dc:18:ca:
-         f0:00:2a:d5:03:06:26:30:f1:47:83:fd:32:6e:fc:ed:aa:4f:
-         7d:0c:63:60:31:2f:7c:0c:bf:99:66:87:ed:27:08:86:2d:c4:
-         33:e8:98:23:1c:fe:a3:db:9a:49:4e:fc:5a:42:ef:71:c3:3f:
-         ad:dc:4a:a8:d2:a3:1d:09:ac:33:04:7b:86:f3:6d:00:59:a3:
-         c8:db:d1:3c:73:f6:0e:90:d6:5e:49:e0:bf:36:63:08:7b:a5:
-         b0:8f:35:3b:56:8c:11:35:49:04:1c:d0:e7:ba:56:c5:0d:0a:
-         91:8d:d6:b7:62:19:34:12:52:4c:d2:6d:7c:c5:3d:0f:18:81:
-         54:cb:f6:3c:e5:84:d2:d6:71:15:ec:1a:34:0b:f0:a0:21:74:
-         43:c8:a3:b0:df:d9:67:da:e2:ad:93:48:f8:a0:87:bd:79:14:
-         e0:62:0a:df:f7:31:2e:31:7b:d1:32:2a:0a:fe:5d:14:ef:d9:
-         64:50:e4:83:91:bc:70:0d:d7:88:8d:d9:bc:84:0e:c5:1a:b3:
-         bf:64:02:4e:51:91:a4:a2:85:15:83:af:f0:5b:9b:28:49:5f:
-         b2:b3:03:d8
+    Signature Algorithm: sha256WithRSAEncryption
+         7a:af:44:3b:aa:6f:53:42:b2:33:aa:43:5f:56:30:d3:b9:96:
+         0b:9a:55:5a:39:2a:0b:4e:e4:2e:f1:95:66:c9:86:36:82:8d:
+         63:7c:4d:a2:ee:48:ba:03:c7:90:d7:a7:c6:74:60:48:5f:31:
+         a2:f9:5e:3e:c3:82:e1:e5:2f:41:81:83:29:25:79:d1:53:00:
+         69:3c:ed:0a:30:3b:41:1d:92:a1:2c:a8:9d:2c:e3:23:87:79:
+         e0:55:6e:91:a8:50:da:46:2f:c2:20:50:3e:2b:47:97:14:b0:
+         7d:04:ba:45:51:d0:6e:e1:5a:a2:4b:84:9c:4d:cd:85:04:f9:
+         28:31:82:93:bc:c7:59:49:91:03:e8:df:6a:e4:56:ad:6a:cb:
+         1f:0d:37:e4:5e:bd:e7:9f:d5:ec:9d:3c:18:25:9b:f1:2f:50:
+         7d:eb:31:cb:f1:63:22:9d:57:fc:f3:84:20:1a:c6:07:87:92:
+         26:9e:15:18:59:33:06:dc:fb:b0:b6:76:5d:f1:c1:2f:c8:2f:
+         62:9c:c0:d6:de:eb:65:77:f3:5c:a6:c3:88:27:96:75:b4:f4:
+         54:cd:ff:2d:21:2e:96:f0:07:73:4b:e9:93:92:90:de:62:d9:
+         a3:3b:ac:6e:24:5f:27:4a:b3:94:70:ff:30:17:e7:7e:32:8f:
+         65:b7:75:58
 -----BEGIN CERTIFICATE-----
-MIIEqjCCA5KgAwIBAgIJAJpBR82hFGKMMA0GCSqGSIb3DQEBBQUAMIGUMQswCQYD
+MIIEqjCCA5KgAwIBAgIJANmAOsPS9No3MA0GCSqGSIb3DQEBCwUAMIGUMQswCQYD
 VQQGEwJVUzEQMA4GA1UECAwHTW9udGFuYTEQMA4GA1UEBwwHQm96ZW1hbjERMA8G
 A1UECgwIU2F3dG9vdGgxEzARBgNVBAsMCkNvbnN1bHRpbmcxGDAWBgNVBAMMD3d3
 dy53b2xmc3NsLmNvbTEfMB0GCSqGSIb3DQEJARYQaW5mb0B3b2xmc3NsLmNvbTAe
-Fw0xNDA3MTEwMzIwMDhaFw0xNzA0MDYwMzIwMDhaMIGUMQswCQYDVQQGEwJVUzEQ
+Fw0xNTA1MDcxODIxMDFaFw0xODAxMzExODIxMDFaMIGUMQswCQYDVQQGEwJVUzEQ
 MA4GA1UECAwHTW9udGFuYTEQMA4GA1UEBwwHQm96ZW1hbjERMA8GA1UECgwIU2F3
 dG9vdGgxEzARBgNVBAsMCkNvbnN1bHRpbmcxGDAWBgNVBAMMD3d3dy53b2xmc3Ns
 LmNvbTEfMB0GCSqGSIb3DQEJARYQaW5mb0B3b2xmc3NsLmNvbTCCASIwDQYJKoZI
@@ -163,11 +162,11 @@
 J45nEXTDJh0/7TNjs6TYHTDl6NWhgZqkgZcwgZQxCzAJBgNVBAYTAlVTMRAwDgYD
 VQQIDAdNb250YW5hMRAwDgYDVQQHDAdCb3plbWFuMREwDwYDVQQKDAhTYXd0b290
 aDETMBEGA1UECwwKQ29uc3VsdGluZzEYMBYGA1UEAwwPd3d3LndvbGZzc2wuY29t
-MR8wHQYJKoZIhvcNAQkBFhBpbmZvQHdvbGZzc2wuY29tggkAmkFHzaEUYowwDAYD
-VR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAeXgMbXmIkfw6FZz5J2IW8CEf
-+n0/oqgyHvfyEal0FnRe3BjK8AAq1QMGJjDxR4P9Mm787apPfQxjYDEvfAy/mWaH
-7ScIhi3EM+iYIxz+o9uaSU78WkLvccM/rdxKqNKjHQmsMwR7hvNtAFmjyNvRPHP2
-DpDWXkngvzZjCHulsI81O1aMETVJBBzQ57pWxQ0KkY3Wt2IZNBJSTNJtfMU9DxiB
-VMv2POWE0tZxFewaNAvwoCF0Q8ijsN/ZZ9rirZNI+KCHvXkU4GIK3/cxLjF70TIq
-Cv5dFO/ZZFDkg5G8cA3XiI3ZvIQOxRqzv2QCTlGRpKKFFYOv8FubKElfsrMD2A==
+MR8wHQYJKoZIhvcNAQkBFhBpbmZvQHdvbGZzc2wuY29tggkA2YA6w9L02jcwDAYD
+VR0TBAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEAeq9EO6pvU0KyM6pDX1Yw07mW
+C5pVWjkqC07kLvGVZsmGNoKNY3xNou5IugPHkNenxnRgSF8xovlePsOC4eUvQYGD
+KSV50VMAaTztCjA7QR2SoSyonSzjI4d54FVukahQ2kYvwiBQPitHlxSwfQS6RVHQ
+buFaokuEnE3NhQT5KDGCk7zHWUmRA+jfauRWrWrLHw035F6955/V7J08GCWb8S9Q
+fesxy/FjIp1X/POEIBrGB4eSJp4VGFkzBtz7sLZ2XfHBL8gvYpzA1t7rZXfzXKbD
+iCeWdbT0VM3/LSEulvAHc0vpk5KQ3mLZozusbiRfJ0qzlHD/MBfnfjKPZbd1WA==
 -----END CERTIFICATE-----