]> git.stg.codes - stg.git/commitdiff
Искуственные "падения" через разименование нулевого указателя заменены
authorMaxim Mamontov <faust@gts.dp.ua>
Wed, 8 Dec 2010 13:37:13 +0000 (15:37 +0200)
committerMaxim Mamontov <faust@gts.dp.ua>
Wed, 8 Dec 2010 13:37:13 +0000 (15:37 +0200)
на проверочные утверждения в библиотеке поддержки протокола авторизатора

stglibs/ia_auth_c.lib/ia_auth_c.cpp

index d97692ea87187bbcf85e0de5dc0cd1114072b6de..a76206923d900de09c18160f7ec3cb40bac38f67 100644 (file)
 
 //---------------------------------------------------------------------------
 
 
 //---------------------------------------------------------------------------
 
-#include <stdio.h>
-#include <stdlib.h>
-
-#include <string.h>
+#include <cstdio>
+#include <cstdlib>
+#include <cstring>
+#include <cassert>
 
 #ifdef WIN32
     #include <winsock2.h>
 
 #ifdef WIN32
     #include <winsock2.h>
@@ -719,15 +719,9 @@ connSyn8 = (CONN_SYN_8*)buffer;
 SwapBytes(connSyn8->len);
 #endif
 
 SwapBytes(connSyn8->len);
 #endif
 
-connSyn8->len = sizeof(CONN_SYN_8);
-#ifdef IA_DEBUGPROTO
-if (sizeof(CONN_SYN_8) != Min8(sizeof(CONN_SYN_8)))
-    {
-    int * a = NULL;
-    *a = 0;
-    }
-#endif
+assert(sizeof(CONN_SYN_8) == Min8(sizeof(CONN_SYN_8)) && "CONN_SYN_8 is not aligned to 8 bytes");
 
 
+connSyn8->len = sizeof(CONN_SYN_8);
 strncpy((char*)connSyn8->type, "CONN_SYN", IA_MAX_TYPE_LEN);
 strncpy((char*)connSyn8->login, login.c_str(), IA_LOGIN_LEN);
 connSyn8->dirs = 0;
 strncpy((char*)connSyn8->type, "CONN_SYN", IA_MAX_TYPE_LEN);
 strncpy((char*)connSyn8->login, login.c_str(), IA_LOGIN_LEN);
 connSyn8->dirs = 0;
@@ -747,13 +741,7 @@ SwapBytes(connAck8->len);
 SwapBytes(connAck8->rnd);
 #endif
 
 SwapBytes(connAck8->rnd);
 #endif
 
-#ifdef IA_DEBUGPROTO
-if (sizeof(CONN_ACK_8) != Min8(sizeof(CONN_ACK_8)))
-    {
-    int * a = NULL;
-    *a = 0;
-    }
-#endif
+assert(sizeof(CONN_ACK_8) == Min8(sizeof(CONN_ACK_8)) && "CONN_ACK_8 is not aligned to 8 bytes");
 
 connAck8->len = sizeof(CONN_ACK_8);
 strncpy((char*)connAck8->loginS, login.c_str(), IA_LOGIN_LEN);
 
 connAck8->len = sizeof(CONN_ACK_8);
 strncpy((char*)connAck8->loginS, login.c_str(), IA_LOGIN_LEN);
@@ -773,13 +761,7 @@ SwapBytes(aliveAck8->len);
 SwapBytes(aliveAck8->rnd);
 #endif
 
 SwapBytes(aliveAck8->rnd);
 #endif
 
-#ifdef IA_DEBUGPROTO
-if (Min8(sizeof(ALIVE_ACK_8)) != sizeof(ALIVE_ACK_8))
-    {
-    int * a = NULL;
-    *a = 0;
-    }
-#endif
+assert(Min8(sizeof(ALIVE_ACK_8)) == sizeof(ALIVE_ACK_8) && "ALIVE_ACK_8 is not aligned to 8 bytes");
 
 aliveAck8 = (ALIVE_ACK_8*)buffer;
 aliveAck8->len = sizeof(ALIVE_ACK_8);
 
 aliveAck8 = (ALIVE_ACK_8*)buffer;
 aliveAck8->len = sizeof(ALIVE_ACK_8);
@@ -797,13 +779,7 @@ disconnSyn8 = (DISCONN_SYN_8*)buffer;
 SwapBytes(disconnSyn8->len);
 #endif
 
 SwapBytes(disconnSyn8->len);
 #endif
 
-#ifdef IA_DEBUGPROTO
-if (Min8(sizeof(DISCONN_SYN_8)) != sizeof(DISCONN_SYN_8))
-    {
-    int * a = NULL;
-    *a = 0;
-    }
-#endif
+assert(Min8(sizeof(DISCONN_SYN_8)) == sizeof(DISCONN_SYN_8) && "DISCONN_SYN_8 is not aligned to 8 bytes");
 
 disconnSyn8->len = sizeof(DISCONN_SYN_8);
 strncpy((char*)disconnSyn8->loginS, login.c_str(), IA_LOGIN_LEN);
 
 disconnSyn8->len = sizeof(DISCONN_SYN_8);
 strncpy((char*)disconnSyn8->loginS, login.c_str(), IA_LOGIN_LEN);
@@ -821,13 +797,7 @@ SwapBytes(disconnAck8->len);
 SwapBytes(disconnAck8->rnd);
 #endif
 
 SwapBytes(disconnAck8->rnd);
 #endif
 
-#ifdef IA_DEBUGPROTO
-if (Min8(sizeof(DISCONN_ACK_8)) != sizeof(DISCONN_ACK_8))
-    {
-    int * a = NULL;
-    *a = 0;
-    }
-#endif
+assert(Min8(sizeof(DISCONN_ACK_8)) == sizeof(DISCONN_ACK_8) && "DISCONN_ACK_8 is not aligned to 8 bytes");
 
 disconnAck8->len = Min8(sizeof(DISCONN_ACK_8));
 disconnAck8->rnd = rnd + 1;
 
 disconnAck8->len = Min8(sizeof(DISCONN_ACK_8));
 disconnAck8->rnd = rnd + 1;