X-Git-Url: https://git.novaco.in/?p=novacoin.git;a=blobdiff_plain;f=src%2Fprotocol.h;h=fcc8c9e06f650a97c6305e2d06597e401aafddbf;hp=c4861e679e90d40eef5cbbc8610a1c34cb530f52;hb=415da519893e8fef7a10007fc82934385addd03d;hpb=6b0e5bf1425e8d96732cc7133aee048c2a35d17c diff --git a/src/protocol.h b/src/protocol.h index c4861e6..fcc8c9e 100644 --- a/src/protocol.h +++ b/src/protocol.h @@ -13,22 +13,18 @@ #include "serialize.h" #include "netbase.h" #include +#include #include "uint256.h" -#define PPCOIN_PORT 9901 -#define RPC_PORT 9902 -#define TESTNET_PORT 9903 - extern bool fTestNet; - -void GetMessageStart(unsigned char pchMessageStart[], bool fPersistent = false); - -static inline unsigned short GetDefaultPort(const bool testnet = fTestNet) +inline unsigned short GetDefaultPort() { - return testnet ? TESTNET_PORT : PPCOIN_PORT; + return static_cast(fTestNet ? 17777 : 7777); } +extern unsigned char pchMessageStart[4]; + /** Message header. * (4) message start. * (12) command. @@ -54,8 +50,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; @@ -64,7 +68,7 @@ class CMessageHeader /** nServices flags */ enum { - NODE_NETWORK = (1 << 0), + NODE_NETWORK = (1 << 0) }; /** A CService with information about it as peer */ @@ -72,9 +76,7 @@ class CAddress : public CService { public: CAddress(); - explicit CAddress(CService ipIn, uint64 nServicesIn=NODE_NETWORK); - - void Init(); + explicit CAddress(CService ipIn, uint64_t nServicesIn=NODE_NETWORK); IMPLEMENT_SERIALIZE ( @@ -91,17 +93,15 @@ class CAddress : public CService READWRITE(*pip); ) - void print() const; - // TODO: make private (improves encapsulation) public: - uint64 nServices; + uint64_t nServices; // disk and network only unsigned int nTime; // memory only - int64 nLastTry; + int64_t nLastTry; }; /** inv message data */ @@ -123,7 +123,6 @@ class CInv bool IsKnownType() const; const char* GetCommand() const; std::string ToString() const; - void print() const; // TODO: make private (improves encapsulation) public: