Merge pull request #4 in MM/mpin-sdk-core from mony_fix-time-permit-date to master

* commit '010630e29b519b0801e8f452979fb1a288602b7a':
  Fix time permit date issue.
diff --git a/src/mpin_crypto.h b/src/mpin_crypto.h
index dc1db84..85bc610 100644
--- a/src/mpin_crypto.h
+++ b/src/mpin_crypto.h
@@ -42,7 +42,7 @@
     virtual Status OpenSession() = 0;
     virtual void CloseSession() = 0;
     virtual Status Register(IN UserPtr user, const String& pin, IN std::vector<String>& clientSecretShares) = 0;
-    virtual Status AuthenticatePass1(IN UserPtr user, const String& pin, IN std::vector<String>& timePermitShares, OUT String& commitmentU, OUT String& commitmentUT) = 0;
+    virtual Status AuthenticatePass1(IN UserPtr user, const String& pin, int date, IN std::vector<String>& timePermitShares, OUT String& commitmentU, OUT String& commitmentUT) = 0;
     virtual Status AuthenticatePass2(IN UserPtr user, const String& challenge, OUT String& validator) = 0;
     virtual void DeleteToken(const String& mpinId) = 0;
     
diff --git a/src/mpin_crypto_non_tee.cpp b/src/mpin_crypto_non_tee.cpp
index 23e2e07..cd6848a 100644
--- a/src/mpin_crypto_non_tee.cpp
+++ b/src/mpin_crypto_non_tee.cpp
@@ -192,7 +192,7 @@
     return Status(Status::OK);
 }
 
-Status MPinCryptoNonTee::AuthenticatePass1(UserPtr user, const String& pin, std::vector<String>& timePermitShares, String& commitmentU, String& commitmentUT)
+Status MPinCryptoNonTee::AuthenticatePass1(UserPtr user, const String& pin, int date, std::vector<String>& timePermitShares, String& commitmentU, String& commitmentUT)
 {
     const String& mpinId = user->GetMPinId();
 
@@ -230,7 +230,6 @@
     }
 
     // Gather the parameters for Authentication pass 1
-    int date = today();
 
     Octet cid(mpinId);
 
diff --git a/src/mpin_crypto_non_tee.h b/src/mpin_crypto_non_tee.h
index 402e92f..d487b0d 100644
--- a/src/mpin_crypto_non_tee.h
+++ b/src/mpin_crypto_non_tee.h
@@ -46,7 +46,7 @@
     virtual Status OpenSession();
     virtual void CloseSession();
     virtual Status Register(IN UserPtr user, const String& pin, IN std::vector<String>& clientSecretShares);
-    virtual Status AuthenticatePass1(IN UserPtr user, const String& pin, IN std::vector<String>& timePermitShares, OUT String& commitmentU, OUT String& commitmentUT);
+    virtual Status AuthenticatePass1(IN UserPtr user, const String& pin, int date, IN std::vector<String>& timePermitShares, OUT String& commitmentU, OUT String& commitmentUT);
     virtual Status AuthenticatePass2(IN UserPtr user, const String& challenge, OUT String& validator);
     virtual void DeleteToken(const String& mpinId);
 
diff --git a/src/mpin_sdk.cpp b/src/mpin_sdk.cpp
index 3652767..3c76dd3 100644
--- a/src/mpin_sdk.cpp
+++ b/src/mpin_sdk.cpp
@@ -1091,9 +1091,11 @@
     timePermitShares.push_back(user->m_timePermitShare1);
     timePermitShares.push_back(user->m_timePermitShare2);
 
+	int date =  user->GetTimePermitCache().GetDate();
+	
     // Authentication pass 1
     String u, ut;
-    s = m_crypto->AuthenticatePass1(user, pin, timePermitShares, u, ut);
+    s = m_crypto->AuthenticatePass1(user, pin, date, timePermitShares, u, ut);
     if(s != Status::OK)
     {
         m_crypto->CloseSession();
diff --git a/tests/linux/MPinClient/HttpRequest.cpp b/tests/linux/MPinClient/HttpRequest.cpp
index b80ef91..789f157 100644
--- a/tests/linux/MPinClient/HttpRequest.cpp
+++ b/tests/linux/MPinClient/HttpRequest.cpp
@@ -93,7 +93,7 @@
 		fullUrl.TrimRight("&");
 	}
 	
-	printf( "--> %s %s [%s]\n", strMethod.c_str(), fullUrl.c_str(), m_requestData.c_str() );
+	//printf( "--> %s %s [%s]\n", strMethod.c_str(), fullUrl.c_str(), m_requestData.c_str() );
 
 	m_request.SetMethod( cvHttpMethod );
 	m_request.SetUrl( fullUrl );
@@ -114,7 +114,7 @@
 
 	m_responseData = m_request.GetResponse();
 	
-	printf( "<-- %ld [%s]\n", m_request.GetResponseCode(), m_responseData.c_str() );
+	//printf( "<-- %ld [%s]\n", m_request.GetResponseCode(), m_responseData.c_str() );
 
 	return true;
 }