From eeb297416843254b48e402eb6ea72ea64542444f Mon Sep 17 00:00:00 2001 From: gulden Date: Wed, 17 Jan 2018 19:12:23 +0200 Subject: [PATCH] 1.6.4.9 - Minor update release for server builds. Flush sync state to disk a bit more often on initial sync. Apply a small ban to outdated peers to stop them from flooding us with connect attempts. --- configure.ac | 2 +- contrib/gitian-descriptors/gitian-linux.yml | 2 +- contrib/gitian-descriptors/gitian-osx-signer.yml | 2 +- contrib/gitian-descriptors/gitian-osx.yml | 2 +- contrib/gitian-descriptors/gitian-win-signer.yml | 2 +- contrib/gitian-descriptors/gitian-win.yml | 2 +- contrib/macdeploy/background@2x.tiff | Bin src/clientversion.h | 2 +- src/main.cpp | 10 +++++++--- src/net.h | 5 ++++- technical_documentation/Gulden_PoW2.pdf | Bin 11 files changed, 18 insertions(+), 11 deletions(-) mode change 100644 => 100755 contrib/macdeploy/background@2x.tiff mode change 100644 => 100755 technical_documentation/Gulden_PoW2.pdf diff --git a/configure.ac b/configure.ac index bd4cef976b..6c307c7b4c 100644 --- a/configure.ac +++ b/configure.ac @@ -3,7 +3,7 @@ AC_PREREQ([2.60]) define(_CLIENT_VERSION_MAJOR, 1) define(_CLIENT_VERSION_MINOR, 6) define(_CLIENT_VERSION_REVISION, 4) -define(_CLIENT_VERSION_BUILD, 8) +define(_CLIENT_VERSION_BUILD, 9) define(_CLIENT_VERSION_IS_RELEASE, false) define(_COPYRIGHT_YEAR, 2016) define(_COPYRIGHT_HOLDERS,[The %s developers]) diff --git a/contrib/gitian-descriptors/gitian-linux.yml b/contrib/gitian-descriptors/gitian-linux.yml index a6076b4daa..66edefd270 100644 --- a/contrib/gitian-descriptors/gitian-linux.yml +++ b/contrib/gitian-descriptors/gitian-linux.yml @@ -33,7 +33,7 @@ packages: - "bison" - "flex" remotes: -- "url": /home/debian/guldencoin-build-manager/gulden-dev +- "url": https://github.com/Gulden/gulden-official.git "dir": "Gulden" files: [] script: | diff --git a/contrib/gitian-descriptors/gitian-osx-signer.yml b/contrib/gitian-descriptors/gitian-osx-signer.yml index aa3d1c458b..37957d5bf8 100644 --- a/contrib/gitian-descriptors/gitian-osx-signer.yml +++ b/contrib/gitian-descriptors/gitian-osx-signer.yml @@ -7,7 +7,7 @@ architectures: packages: - "faketime" remotes: -- "url": /home/debian/guldencoin-build-manager/gulden-dev +- "url": https://github.com/Gulden/gulden-official.git "dir": "signature" files: - "Gulden-osx-unsigned.tar.gz" diff --git a/contrib/gitian-descriptors/gitian-osx.yml b/contrib/gitian-descriptors/gitian-osx.yml index 8dab7b6dc5..f4ba1e7764 100644 --- a/contrib/gitian-descriptors/gitian-osx.yml +++ b/contrib/gitian-descriptors/gitian-osx.yml @@ -34,7 +34,7 @@ packages: - "flex" - "genisoimage" remotes: -- "url": /home/debian/guldencoin-build-manager/gulden-dev +- "url": https://github.com/Gulden/gulden-official.git "dir": "Gulden" files: - "MacOSX10.11.sdk.tar.gz" diff --git a/contrib/gitian-descriptors/gitian-win-signer.yml b/contrib/gitian-descriptors/gitian-win-signer.yml index c76989ab52..60a69a95c7 100644 --- a/contrib/gitian-descriptors/gitian-win-signer.yml +++ b/contrib/gitian-descriptors/gitian-win-signer.yml @@ -8,7 +8,7 @@ packages: - "libssl-dev" - "autoconf" remotes: -- "url": /home/debian/guldencoin-build-manager/gulden-dev +- "url": https://github.com/Gulden/gulden-official.git "dir": "signature" files: - "osslsigncode-1.7.1.tar.gz" diff --git a/contrib/gitian-descriptors/gitian-win.yml b/contrib/gitian-descriptors/gitian-win.yml index 9a8e391f77..f3198d3f30 100644 --- a/contrib/gitian-descriptors/gitian-win.yml +++ b/contrib/gitian-descriptors/gitian-win.yml @@ -28,7 +28,7 @@ packages: - "flex" - "libssl-dev" remotes: -- "url": /home/debian/guldencoin-build-manager/gulden-dev +- "url": https://github.com/Gulden/gulden-official.git "dir": "Gulden" files: - "osslsigncode-1.4.tar.gz" #Optional (only needed for official builds) diff --git a/contrib/macdeploy/background@2x.tiff b/contrib/macdeploy/background@2x.tiff old mode 100644 new mode 100755 diff --git a/src/clientversion.h b/src/clientversion.h index e3732ce302..13e7ac4cb7 100644 --- a/src/clientversion.h +++ b/src/clientversion.h @@ -17,7 +17,7 @@ #define CLIENT_VERSION_MAJOR 1 #define CLIENT_VERSION_MINOR 6 #define CLIENT_VERSION_REVISION 4 -#define CLIENT_VERSION_BUILD 8 +#define CLIENT_VERSION_BUILD 9 //! Set to true for release, false for prerelease or test build #define CLIENT_VERSION_IS_RELEASE false diff --git a/src/main.cpp b/src/main.cpp index 22b58ec26f..702a96e2a6 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -2483,7 +2483,7 @@ bool static ConnectTip(CValidationState& state, const CChainParams& chainparams, nTimeFlush += nTime4 - nTime3; LogPrint("bench", " - Flush: %.2fms [%.2fs]\n", (nTime4 - nTime3) * 0.001, nTimeFlush * 0.000001); - if (!FlushStateToDisk(state, FLUSH_STATE_IF_NEEDED)) + if (!FlushStateToDisk(state, (pindexNew->nHeight % 30000 == 0) ? FLUSH_STATE_ALWAYS : FLUSH_STATE_IF_NEEDED)) return false; int64_t nTime5 = GetTimeMicros(); nTimeChainState += nTime5 - nTime4; @@ -4488,6 +4488,7 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, pfrom->PushMessage(NetMsgType::REJECT, strCommand, REJECT_OBSOLETE, strprintf("Version must be %d or greater", MIN_PEER_PROTO_VERSION)); pfrom->fDisconnect = true; + CNode::Ban(pfrom->addr, BanReasonOutdatedVersion, 3600 + (rand() % 300)); return false; } @@ -4510,13 +4511,16 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, pfrom->fRelayTxes = true; } - if (pfrom->cleanSubVer == "/Guldencoin:1.3.1/" || pfrom->cleanSubVer == "/Guldencoin:1.4.0/" /* || pfrom->cleanSubVer=="/Guldencoin:1.5.0/"*/) { +#if 0 + if (pfrom->cleanSubVer=="/Guldencoin:1.3.1/" || pfrom->cleanSubVer=="/Guldencoin:1.4.0/"/* || pfrom->cleanSubVer=="/Guldencoin:1.5.0/"*/) + { LogPrintf("peer=%d using obsolete version %i; disconnecting\n", pfrom->id, pfrom->nVersion); - pfrom->PushMessage("reject", strCommand, REJECT_OBSOLETE, strprintf("Client version must be 1.5.1 or greater [%s]", pfrom->cleanSubVer)); + pfrom->PushMessage("reject", strCommand, REJECT_OBSOLETE,strprintf("Client version must be 1.5.1 or greater [%s]", pfrom->cleanSubVer)); pfrom->fDisconnect = true; return false; } +#endif if (nNonce == nLocalHostNonce && nNonce > 1) { LogPrintf("connected to self at %s, disconnecting\n", pfrom->addr.ToString()); diff --git a/src/net.h b/src/net.h index 28ff7a67ff..5043c601a2 100644 --- a/src/net.h +++ b/src/net.h @@ -258,7 +258,8 @@ class CNetMessage { typedef enum BanReason { BanReasonUnknown = 0, BanReasonNodeMisbehaving = 1, - BanReasonManuallyAdded = 2 + BanReasonManuallyAdded = 2, + BanReasonOutdatedVersion = 3 } BanReason; class CBanEntry { @@ -307,6 +308,8 @@ class CBanEntry { return "node misbehaving"; case BanReasonManuallyAdded: return "manually added"; + case BanReasonOutdatedVersion: + return "outdated version"; default: return "unknown"; } diff --git a/technical_documentation/Gulden_PoW2.pdf b/technical_documentation/Gulden_PoW2.pdf old mode 100644 new mode 100755