update to 0.4 preview
[novacoin.git] / src / protocol.h
index ed2ca59..d771406 100644 (file)
 #include <string>
 #include "uint256.h"
 
-#define PPCOIN_PORT  7777
-#define RPC_PORT     8344
-#define TESTNET_PORT 17777
-
 extern bool fTestNet;
-
-void GetMessageStart(unsigned char pchMessageStart[], bool fPersistent = false);
-
 static inline unsigned short GetDefaultPort(const bool testnet = fTestNet)
 {
-    return testnet ? TESTNET_PORT : PPCOIN_PORT;
+    return testnet ? 17777 : 7777;
 }
 
 
+extern unsigned char pchMessageStart[4];
+
 /** Message header.
  * (4) message start.
  * (12) command.
@@ -54,8 +49,16 @@ class CMessageHeader
 
     // TODO: make private (improves encapsulation)
     public:
-        enum { COMMAND_SIZE=12 };
-        unsigned char pchMessageStart[4];
+        enum {
+            MESSAGE_START_SIZE=sizeof(::pchMessageStart),
+            COMMAND_SIZE=12,
+            MESSAGE_SIZE_SIZE=sizeof(int),
+            CHECKSUM_SIZE=sizeof(int),
+
+            MESSAGE_SIZE_OFFSET=MESSAGE_START_SIZE+COMMAND_SIZE,
+            CHECKSUM_OFFSET=MESSAGE_SIZE_OFFSET+MESSAGE_SIZE_SIZE
+        };
+        char pchMessageStart[MESSAGE_START_SIZE];
         char pchCommand[COMMAND_SIZE];
         unsigned int nMessageSize;
         unsigned int nChecksum;