From a34e0cd59e114cc60f737f3a754f3caab7cc3b26 Mon Sep 17 00:00:00 2001
From: mikhail4021 <mikhail.smal@gmail.com>
Date: Fri, 10 Jan 2014 01:29:06 +0400
Subject: [PATCH] update
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

устранены ошибки компиляции
---
 Identity.cpp      | 14 +++++++++++---
 LeaseSet.cpp      |  1 +
 NetDb.cpp         |  2 +-
 TunnelGateway.cpp |  2 +-
 4 files changed, 14 insertions(+), 5 deletions(-)

diff --git a/Identity.cpp b/Identity.cpp
index f57ab97b..fd5c0b74 100644
--- a/Identity.cpp
+++ b/Identity.cpp
@@ -52,9 +52,17 @@ namespace data
 		memcpy (buf, (const uint8_t *)ident, 32);
 		time_t t = time (nullptr);
 		struct tm tm;
-		gmtime_r (&t, &tm);
-		sprintf ((char *)(buf + 32),"%4i%2i%2i", tm.tm_year, tm.tm_mon, tm.tm_mday);
-		
+		// WARNING!!! check if it is correct
+#ifdef _WIN32
+		gmtime_s(&tm, &t);
+		// ��� ������������ �����-�� �������� sprintf'��. ����� ����� ��� ���������?
+		// http://msdn.microsoft.com/en-us/library/ce3zzk1k.aspx
+		sprintf_s((char *)(buf + 32), 9, "%4i%2i%2i", tm.tm_year, tm.tm_mon, tm.tm_mday);
+#else
+		gmtime_r(&t, &tm);
+		// ��� ������������ �����-�� �������� sprintf'��. ����� ����� ��� ���������?
+		sprintf((char *)(buf + 32), "%4i%2i%2i", tm.tm_year, tm.tm_mon, tm.tm_mday);
+#endif		
 		RoutingKey key;
 		CryptoPP::SHA256().CalculateDigest(key.hash, buf, 40);
 		return key;
diff --git a/LeaseSet.cpp b/LeaseSet.cpp
index d7939d2d..c948c343 100644
--- a/LeaseSet.cpp
+++ b/LeaseSet.cpp
@@ -2,6 +2,7 @@
 #include "CryptoConst.h"
 #include "Log.h"
 #include "LeaseSet.h"
+#include "I2PEndian.h"
 
 namespace i2p
 {
diff --git a/NetDb.cpp b/NetDb.cpp
index 7aaa7f42..dc27708a 100644
--- a/NetDb.cpp
+++ b/NetDb.cpp
@@ -169,7 +169,7 @@ namespace data
 				{
 					for (boost::filesystem::directory_iterator it1 (it->path ()); it1 != end; ++it1)
 					{
-						RouterInfo * r = new RouterInfo (it1->path ().c_str ()); // FIXME!!! path::value_type != char in boost 1_55 on Windows. How to solve?
+						RouterInfo * r = new RouterInfo (it1->path().string().c_str ());
 						m_RouterInfos[r->GetIdentHash ()] = r;
 						numRouters++;
 					}	
diff --git a/TunnelGateway.cpp b/TunnelGateway.cpp
index f19084b7..55d78326 100644
--- a/TunnelGateway.cpp
+++ b/TunnelGateway.cpp
@@ -143,7 +143,7 @@ namespace tunnel
 		CryptoPP::SHA256().CalculateDigest (hash, payload, size+16);
 		memcpy (buf+20, hash, 4); // checksum		
 		payload[-1] = 0; // zero	
-		ssize_t paddingSize = payload - buf - 25; // 25  = 24 + 1 
+		ptrdiff_t paddingSize = payload - buf - 25; // 25  = 24 + 1 
 		if (paddingSize > 0)
 			memset (buf + 24, 1, paddingSize); // padding TODO: fill with random data