aboutsummaryrefslogtreecommitdiff
path: root/core/include
diff options
context:
space:
mode:
authorWladimir J. van der Laan <laanwj@gmail.com>2011-06-05 19:15:15 +0200
committerWladimir J. van der Laan <laanwj@gmail.com>2011-06-05 20:25:56 +0200
commit822f2e3ddfcc98a7633f71665fa9d7879bc63115 (patch)
treea6970cc8867ecac9e7bd420732cbc4be5e7af052 /core/include
parentb7726d924ef7082b1f1d532ba6f840bc7b267b47 (diff)
downloadbitcoin-822f2e3ddfcc98a7633f71665fa9d7879bc63115.tar.xz
update to newest git bitcoin core
Diffstat (limited to 'core/include')
-rw-r--r--core/include/main.h19
-rw-r--r--core/include/net.h24
-rw-r--r--core/include/serialize.h2
-rw-r--r--core/include/util.h2
4 files changed, 33 insertions, 14 deletions
diff --git a/core/include/main.h b/core/include/main.h
index 92b73fe5ad..8d9b39f718 100644
--- a/core/include/main.h
+++ b/core/include/main.h
@@ -29,7 +29,8 @@ static const unsigned int MAX_BLOCK_SIZE_GEN = MAX_BLOCK_SIZE/2;
static const int MAX_BLOCK_SIGOPS = MAX_BLOCK_SIZE/50;
static const int64 COIN = 100000000;
static const int64 CENT = 1000000;
-static const int64 MIN_TX_FEE = 50000;
+static const int64 MIN_TX_FEE = CENT;
+static const int64 MIN_RELAY_TX_FEE = 50000;
static const int64 MAX_MONEY = 21000000 * COIN;
inline bool MoneyRange(int64 nValue) { return (nValue >= 0 && nValue <= MAX_MONEY); }
static const int COINBASE_MATURITY = 100;
@@ -86,7 +87,7 @@ bool AddKey(const CKey& key);
std::vector<unsigned char> GenerateNewKey();
bool AddToWallet(const CWalletTx& wtxIn);
void WalletUpdateSpent(const COutPoint& prevout);
-int ScanForWalletTransactions(CBlockIndex* pindexStart);
+int ScanForWalletTransactions(CBlockIndex* pindexStart, bool fUpdate = false);
void ReacceptWalletTransactions();
bool LoadBlockIndex(bool fAllowNew=true);
void PrintBlockTree();
@@ -599,12 +600,14 @@ public:
return dPriority > COIN * 144 / 250;
}
- int64 GetMinFee(unsigned int nBlockSize=1, bool fAllowFree=true) const
+ int64 GetMinFee(unsigned int nBlockSize=1, bool fAllowFree=true, bool fForRelay=false) const
{
- // Base fee is 1 cent per kilobyte
+ // Base fee is either MIN_TX_FEE or MIN_RELAY_TX_FEE
+ int64 nBaseFee = fForRelay ? MIN_RELAY_TX_FEE : MIN_TX_FEE;
+
unsigned int nBytes = ::GetSerializeSize(*this, SER_NETWORK);
unsigned int nNewBlockSize = nBlockSize + nBytes;
- int64 nMinFee = (1 + (int64)nBytes / 1000) * MIN_TX_FEE;
+ int64 nMinFee = (1 + (int64)nBytes / 1000) * nBaseFee;
if (fAllowFree)
{
@@ -623,11 +626,11 @@ public:
}
}
- // To limit dust spam, require MIN_TX_FEE if any output is less than 0.01
- if (nMinFee < MIN_TX_FEE)
+ // To limit dust spam, require MIN_TX_FEE/MIN_RELAY_TX_FEE if any output is less than 0.01
+ if (nMinFee < nBaseFee)
BOOST_FOREACH(const CTxOut& txout, vout)
if (txout.nValue < CENT)
- nMinFee = MIN_TX_FEE;
+ nMinFee = nBaseFee;
// Raise the price as the block approaches full
if (nBlockSize != 1 && nNewBlockSize >= MAX_BLOCK_SIZE_GEN/2)
diff --git a/core/include/net.h b/core/include/net.h
index 6bbcd64e42..d1ded87232 100644
--- a/core/include/net.h
+++ b/core/include/net.h
@@ -283,13 +283,29 @@ public:
return (memcmp(pchReserved, pchIPv4, sizeof(pchIPv4)) == 0);
}
+ bool IsRFC1918() const
+ {
+ return IsIPv4() && (GetByte(3) == 10 ||
+ (GetByte(3) == 192 && GetByte(2) == 168) ||
+ (GetByte(3) == 172 &&
+ (GetByte(2) >= 16 && GetByte(2) <= 31)));
+ }
+
+ bool IsRFC3927() const
+ {
+ return IsIPv4() && (GetByte(3) == 169 && GetByte(2) == 254);
+ }
+
+ bool IsLocal() const
+ {
+ return IsIPv4() && (GetByte(3) == 127 ||
+ GetByte(3) == 0);
+ }
+
bool IsRoutable() const
{
return IsValid() &&
- !(GetByte(3) == 10 ||
- (GetByte(3) == 192 && GetByte(2) == 168) ||
- GetByte(3) == 127 ||
- GetByte(3) == 0);
+ !(IsRFC1918() || IsRFC3927() || IsLocal());
}
bool IsValid() const
diff --git a/core/include/serialize.h b/core/include/serialize.h
index 8e7677a2eb..0d66d6a956 100644
--- a/core/include/serialize.h
+++ b/core/include/serialize.h
@@ -33,7 +33,7 @@ class CDataStream;
class CAutoFile;
static const unsigned int MAX_SIZE = 0x02000000;
-static const int VERSION = 32200;
+static const int VERSION = 32300;
static const char* pszSubVer = "";
static const bool VERSION_IS_BETA = true;
diff --git a/core/include/util.h b/core/include/util.h
index eccdbd372d..32a98e6264 100644
--- a/core/include/util.h
+++ b/core/include/util.h
@@ -197,7 +197,7 @@ std::string GetPidFile();
void CreatePidFile(std::string pidFile, pid_t pid);
void ReadConfigFile(std::map<std::string, std::string>& mapSettingsRet, std::map<std::string, std::vector<std::string> >& mapMultiSettingsRet);
#ifdef __WXMSW__
-string MyGetSpecialFolderPath(int nFolder, bool fCreate);
+std::string MyGetSpecialFolderPath(int nFolder, bool fCreate);
#endif
std::string GetDefaultDataDir();
std::string GetDataDir();