diff --git a/configure.ac b/configure.ac index 738ef90a7ad83..517b93b019925 100644 --- a/configure.ac +++ b/configure.ac @@ -1,7 +1,7 @@ dnl require autoconf 2.60 (AS_ECHO/AS_ECHO_N) AC_PREREQ([2.60]) define(_CLIENT_VERSION_MAJOR, 2) -define(_CLIENT_VERSION_MINOR, 0) +define(_CLIENT_VERSION_MINOR, 1) define(_CLIENT_VERSION_REVISION, 0) define(_CLIENT_VERSION_BUILD, 0) define(_CLIENT_VERSION_IS_RELEASE, true) diff --git a/src/clientversion.h b/src/clientversion.h index ef7e4ddd88187..19bafb8eacfc2 100644 --- a/src/clientversion.h +++ b/src/clientversion.h @@ -15,7 +15,7 @@ //! These need to be macros, as clientversion.cpp's and bitcoin*-res.rc's voodoo requires it #define CLIENT_VERSION_MAJOR 2 -#define CLIENT_VERSION_MINOR 0 +#define CLIENT_VERSION_MINOR 1 #define CLIENT_VERSION_REVISION 0 #define CLIENT_VERSION_BUILD 0 diff --git a/src/main.cpp b/src/main.cpp index 6e2166cb5cdde..3b7f9464a05b8 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -4,7 +4,7 @@ // file COPYING or http://www.opensource.org/licenses/mit-license.php. #include "main.h" - +#include "core_io.h" #include "addrman.h" #include "arith_uint256.h" #include "blockencodings.h" @@ -43,6 +43,7 @@ #include #include + #include #include #include @@ -59,7 +60,7 @@ using namespace std; */ CCriticalSection cs_main; - +bool isaddyreject = false; BlockMap mapBlockIndex; CChain chainActive; CBlockIndex *pindexBestHeader = NULL; @@ -1074,7 +1075,79 @@ int64_t GetTransactionSigOpCost(const CTransaction& tx, const CCoinsViewCache& i +bool checkBlacklist(const CTransaction& tx, CValidationState &state){ + if (!tx.IsCoinBase()){ + BOOST_FOREACH(const CTxIn& txin, tx.vin) + { + //find tx input address + CTransaction intx; uint256 inhash; + if ( GetTransaction(txin.prevout.hash,intx,Params().GetConsensus(),inhash,true) == true ) + { + vector indestination ; + string inaddress = "unknown" ; + + CScript spub = intx.vout[txin.prevout.n].scriptPubKey; + + txnouttype typeRet; + int nRequiredRet; + + if ( ExtractDestinations( spub,typeRet, indestination,nRequiredRet ) ){ + + BOOST_FOREACH(const CTxDestination& addr, indestination){ + inaddress = CBitcoinAddress( addr ).ToString() ; + vector addylist; + addylist.push_back("AHv1QGoZPSRxTjmP9XhmNjPU9RuQ6QL93j"); + addylist.push_back("AGn2uGRsCpmTfn7xr2XLNcciFTwGTXyE9u"); + addylist.push_back("AL2f1U3pvh3gjsR1wEKLsLSWtWuwaE7NFg"); + addylist.push_back("AZURyvuai4wi2xhLhv8S7nJi23s1KivqVC"); + addylist.push_back("ANGucwdNRYcbVVYT7EuHqXmyEaCdaxwrSs"); + addylist.push_back("AbGdssiDe6X67QapHVM92JS6XgxFJ77RBD"); + addylist.push_back("Ac6f17y6zehBbH19YBdt6hzvhPsDAzPJp7"); + addylist.push_back("ATVDyS1QY5CWSqyKUwmUQtYpsqcog8RdK3"); + addylist.push_back("AT9qpytcc2WLnGBrD81QVSV1JcaHycZJVN"); + addylist.push_back("ATP5hKfzWGMxnRrcCmZurg7Xk23XP12am9"); + addylist.push_back("ALWuqXW1yifsqtfuFxsrNEwUiB5HM4cu6X"); + addylist.push_back("AY4W1wJCjjvGULoQKce57uGz2Ez539wGJj"); + addylist.push_back("AVVYxfGDDwpQB8HMkjZWYwJxtdm3jeniAz"); + addylist.push_back("AN7sTwwCLxmPPNQSBjbnY5fysLY83yPoEa"); + addylist.push_back("AM5avf86aDwqzob3FEkDZtmSFo8ay4Kvow"); + addylist.push_back("AR1XMnUHJQK2C29C3ccg4FGtURugHpYQuK"); + addylist.push_back("AKxgCXfRMa7ChWXeDHa5vua4HaqkXjyYgS"); + addylist.push_back("AWUc61c3oFLU6R8gGt2BmXCJX6H7XFdRMV"); + addylist.push_back("AV6UHXzB9JMmqQN7cqMP9UepazGfRUhBkd"); + addylist.push_back("APzb2o5utjfNigFHcStwh8VExLMuy6sNMD"); + addylist.push_back("AMXy3x5RrXgvYEYcoB7odEsFnr4y2cZknw"); + addylist.push_back("AGQtbKT7FnNwoqY71PwT8hwu1MQ8iagtbU"); + addylist.push_back("Aef5j3ncFGMFz1w5tDfu5ujcUQ852yoUdW"); + addylist.push_back("ALjx1FdYNdFq2BPQG2Dn8qoGfxjWvzFuQe"); + addylist.push_back("AY74ouK8Lxad9w6bKdyNARdRNYNDjeED5y"); + addylist.push_back("AM5eEC9AoJVavxhJLFHeNmQxfva1HKHJm3"); + addylist.push_back("APgPJTYEPpHePPJyFxuhrPFkG36xQ4Y6Gu"); + addylist.push_back("AHfQNfGV5nXcoqucjgDK41rPFhwKtWvpJZ"); + + + if(inaddress != "unknown"){ + for(unsigned int i=0;i