From dc714c5879e87aa5809efdd78294f8d19b2f4ae7 Mon Sep 17 00:00:00 2001
From: guy <guy@c028cbd2-c16b-5b4b-a496-9718f37d4682>
Date: Wed, 2 Jul 2003 09:55:22 +0000
Subject: [PATCH] Patch level         : 2.0 518 Files correlati     :
 authoriz.exe Ricompilazione Demo : [ ] Commento            :

Accettava un utente in meno del massimo previsto sulla chiave di protezione.


git-svn-id: svn://10.65.10.50/trunk@11304 c028cbd2-c16b-5b4b-a496-9718f37d4682
---
 server/authoriz.cpp | 2 +-
 server/dongle.cpp   | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/server/authoriz.cpp b/server/authoriz.cpp
index 1e53feb02..f59d23839 100755
--- a/server/authoriz.cpp
+++ b/server/authoriz.cpp
@@ -729,7 +729,7 @@ void TAuthorizationServer::ProcessUserLogin(wxString cmd, wxSocketBase& sock)
 		}
 		else
 		{
-			if (m_Users.GetCount() >= m_Dongle.MaxUsers())
+      if (m_Users.Find(sock, strUser) == NULL && m_Users.GetCount() >= m_Dongle.MaxUsers())
 	  		num = 0;
 			else
 			{
diff --git a/server/dongle.cpp b/server/dongle.cpp
index 5913918a1..1cac3e66b 100755
--- a/server/dongle.cpp
+++ b/server/dongle.cpp
@@ -299,7 +299,7 @@ unsigned long TEutronFooter::checksum(bool set)
   
   unsigned long cs = 0;
   for (unsigned short i = 0; i < len; i++, ptr++)
-    cs += *ptr | ~(*ptr << 8);
+    cs += *ptr | ~(short(*ptr << 8));
   if (set) _checksum = cs;
   return cs;  
 }
@@ -407,7 +407,7 @@ bool TDongle::already_programmed() const
       
     unsigned long cs = 0;
     for (byte* ptr = (byte*)_eprom; ptr < (byte*)&eh->_checksum; ptr++)
-      cs += *ptr | ~(*ptr << 8);
+      cs += *ptr | ~(short(*ptr << 8));
     if (eh->_checksum != cs)  
       return false;   // Malicious programming!
   }   
@@ -885,7 +885,7 @@ bool TDongle::burn_eutron()
   
   unsigned long cs = 0;
   for (unsigned char* ptr = (unsigned char*)_eprom; ptr < (unsigned char*)&eh->_checksum; ptr++)
-    cs += *ptr | ~(*ptr << 8);
+    cs += *ptr | ~(short(*ptr << 8));
   eh->_checksum = cs;
   
   const unsigned short otb = sizeof(TEutronHeader) / 2;