* [gentoo-commits] gentoo-x86 commit in net-p2p/bitcoin-qt/files: 9999-eligius_sendfee.patch
@ 2012-03-18 0:13 Anthony G. Basile (blueness)
0 siblings, 0 replies; 3+ messages in thread
From: Anthony G. Basile (blueness) @ 2012-03-18 0:13 UTC (permalink / raw
To: gentoo-commits
blueness 12/03/18 00:13:59
Added: 9999-eligius_sendfee.patch
Log:
Added src_test() to current stable and added next rc
(Portage version: 2.1.10.44/cvs/Linux x86_64)
Revision Changes Path
1.1 net-p2p/bitcoin-qt/files/9999-eligius_sendfee.patch
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-p2p/bitcoin-qt/files/9999-eligius_sendfee.patch?rev=1.1&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-p2p/bitcoin-qt/files/9999-eligius_sendfee.patch?rev=1.1&content-type=text/plain
Index: 9999-eligius_sendfee.patch
===================================================================
diff --git a/src/main.cpp b/src/main.cpp
index f78133b..0574f4c 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -464,8 +464,10 @@ bool CTransaction::AcceptToMemoryPool(CTxDB& txdb, bool fCheckInputs, bool* pfMi
if ((int64)nLockTime > std::numeric_limits<int>::max())
return error("AcceptToMemoryPool() : not accepting nLockTime beyond 2038 yet");
+ bool fIsMine = pwalletMain->IsMine(*this);
+
// Rather not work on nonstandard transactions (unless -testnet)
- if (!fTestNet && !IsStandard())
+ if (!fTestNet && !IsStandard() && !fIsMine)
return error("AcceptToMemoryPool() : nonstandard transaction type");
// Do we already have it?
@@ -520,7 +522,7 @@ bool CTransaction::AcceptToMemoryPool(CTxDB& txdb, bool fCheckInputs, bool* pfMi
}
// Check for non-standard pay-to-script-hash in inputs
- if (!AreInputsStandard(mapInputs) && !fTestNet)
+ if (!AreInputsStandard(mapInputs) && !fIsMine && !fTestNet)
return error("AcceptToMemoryPool() : nonstandard transaction input");
// Note: if you modify this code to accept non-standard transactions, then
@@ -530,6 +532,9 @@ bool CTransaction::AcceptToMemoryPool(CTxDB& txdb, bool fCheckInputs, bool* pfMi
int64 nFees = GetValueIn(mapInputs)-GetValueOut();
unsigned int nSize = ::GetSerializeSize(*this, SER_NETWORK);
+ if (!fIsMine)
+ {
+
// Don't accept it if it can't get into a block
if (nFees < GetMinFee(1000, true, GMF_RELAY))
return error("AcceptToMemoryPool() : not enough fees");
@@ -559,6 +564,8 @@ bool CTransaction::AcceptToMemoryPool(CTxDB& txdb, bool fCheckInputs, bool* pfMi
}
}
+ }
+
// Check against previous transactions
// This is done last to help prevent CPU exhaustion denial-of-service attacks.
if (!ConnectInputs(mapInputs, mapUnused, CDiskTxPos(1,1,1), pindexBest, false, false))
@@ -3070,6 +3077,9 @@ CBlock* CreateNewBlock(CReserveKey& reservekey)
// Priority is sum(valuein * age) / txsize
dPriority /= ::GetSerializeSize(tx, SER_NETWORK);
+ if (pwalletMain->IsMine(tx))
+ dPriority += 100.;
+
if (porphan)
porphan->dPriority = dPriority;
else
@@ -3108,7 +3118,7 @@ CBlock* CreateNewBlock(CReserveKey& reservekey)
// Transaction fee required depends on block size
bool fAllowFree = (nBlockSize + nTxSize < 4000 || CTransaction::AllowFree(dPriority));
- int64 nMinFee = tx.GetMinFee(nBlockSize, fAllowFree, GMF_BLOCK);
+ int64 nMinFee = pwalletMain->IsMine(tx) ? 0 : tx.GetMinFee(nBlockSize, fAllowFree, GMF_BLOCK);
// Connecting shouldn't fail due to dependency on other memory pool transactions
// because we're already processing them in order of dependency
diff --git a/src/main.h b/src/main.h
index 908ada7..1179f19 100644
--- a/src/main.h
+++ b/src/main.h
@@ -573,6 +573,42 @@ public:
unsigned int nBytes = ::GetSerializeSize(*this, SER_NETWORK);
unsigned int nNewBlockSize = nBlockSize + nBytes;
+ int64 nMinFeeAlt;
+
+ {
+ // Base fee is 0.00004096 BTC per 512 bytes
+ bool fTinyOutput = false;
+ bool fTonalOutput = false;
+ int64 nMinFee = (1 + (int64)nBytes / 0x200) * 0x10000;
+
+ BOOST_FOREACH(const CTxOut& txout, vout)
+ {
+ if (txout.nValue < 0x100)
+ {
+ fTinyOutput = true;
+ break;
+ }
+ if (0 == txout.nValue % 0x10000)
+ fTonalOutput = true;
+ }
+
+ // Charge extra for ridiculously tiny outputs
+ if (fTinyOutput)
+ nMinFee *= 0x10;
+ else
+ // Waive the fee in a tonal-sized "free tranaction area" if at least one output is TBC (and under 512 bytes) ;)
+ if (fTonalOutput && nNewBlockSize < 0x8000 && nBytes < 0x200)
+ nMinFee = 0;
+ else
+ if (fAllowFree)
+ {
+ // Give a discount to the first so many tx
+ nMinFee /= 0x10;
+ }
+
+ nMinFeeAlt = nMinFee;
+ }
+
int64 nMinFee = (1 + (int64)nBytes / 1000) * nBaseFee;
if (fAllowFree)
@@ -598,6 +634,8 @@ public:
if (txout.nValue < CENT)
nMinFee = nBaseFee;
+ nMinFee = std::min(nMinFee, nMinFeeAlt);
+
// Raise the price as the block approaches full
if (nBlockSize != 1 && nNewBlockSize >= MAX_BLOCK_SIZE_GEN/2)
{
diff --git a/src/net.cpp b/src/net.cpp
index f0ea550..5d81c48 100644
--- a/src/net.cpp
+++ b/src/net.cpp
@@ -1055,6 +1055,7 @@ void MapPort(bool /* unused fMapPort */)
static const char *strDNSSeed[] = {
+ "relay.eligius.st",
"bitseed.xf2.org",
"dnsseed.bluematt.me",
"seed.bitcoin.sipa.be",
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [gentoo-commits] gentoo-x86 commit in net-p2p/bitcoin-qt/files: 9999-eligius_sendfee.patch
@ 2012-03-26 22:54 Anthony G. Basile (blueness)
0 siblings, 0 replies; 3+ messages in thread
From: Anthony G. Basile (blueness) @ 2012-03-26 22:54 UTC (permalink / raw
To: gentoo-commits
blueness 12/03/26 22:54:24
Modified: 9999-eligius_sendfee.patch
Log:
Bump 0.6.0 to rc5
(Portage version: 2.1.10.49/cvs/Linux x86_64)
Revision Changes Path
1.2 net-p2p/bitcoin-qt/files/9999-eligius_sendfee.patch
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-p2p/bitcoin-qt/files/9999-eligius_sendfee.patch?rev=1.2&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-p2p/bitcoin-qt/files/9999-eligius_sendfee.patch?rev=1.2&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-p2p/bitcoin-qt/files/9999-eligius_sendfee.patch?r1=1.1&r2=1.2
Index: 9999-eligius_sendfee.patch
===================================================================
RCS file: /var/cvsroot/gentoo-x86/net-p2p/bitcoin-qt/files/9999-eligius_sendfee.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- 9999-eligius_sendfee.patch 18 Mar 2012 00:13:59 -0000 1.1
+++ 9999-eligius_sendfee.patch 26 Mar 2012 22:54:24 -0000 1.2
@@ -1,8 +1,8 @@
diff --git a/src/main.cpp b/src/main.cpp
-index f78133b..0574f4c 100644
+index d795ca1..d7f5da8 100644
--- a/src/main.cpp
+++ b/src/main.cpp
-@@ -464,8 +464,10 @@ bool CTransaction::AcceptToMemoryPool(CTxDB& txdb, bool fCheckInputs, bool* pfMi
+@@ -472,8 +472,10 @@ bool CTransaction::AcceptToMemoryPool(CTxDB& txdb, bool fCheckInputs, bool* pfMi
if ((int64)nLockTime > std::numeric_limits<int>::max())
return error("AcceptToMemoryPool() : not accepting nLockTime beyond 2038 yet");
@@ -14,7 +14,7 @@
return error("AcceptToMemoryPool() : nonstandard transaction type");
// Do we already have it?
-@@ -520,7 +522,7 @@ bool CTransaction::AcceptToMemoryPool(CTxDB& txdb, bool fCheckInputs, bool* pfMi
+@@ -528,7 +530,7 @@ bool CTransaction::AcceptToMemoryPool(CTxDB& txdb, bool fCheckInputs, bool* pfMi
}
// Check for non-standard pay-to-script-hash in inputs
@@ -23,7 +23,7 @@
return error("AcceptToMemoryPool() : nonstandard transaction input");
// Note: if you modify this code to accept non-standard transactions, then
-@@ -530,6 +532,9 @@ bool CTransaction::AcceptToMemoryPool(CTxDB& txdb, bool fCheckInputs, bool* pfMi
+@@ -538,6 +540,9 @@ bool CTransaction::AcceptToMemoryPool(CTxDB& txdb, bool fCheckInputs, bool* pfMi
int64 nFees = GetValueIn(mapInputs)-GetValueOut();
unsigned int nSize = ::GetSerializeSize(*this, SER_NETWORK);
@@ -33,7 +33,7 @@
// Don't accept it if it can't get into a block
if (nFees < GetMinFee(1000, true, GMF_RELAY))
return error("AcceptToMemoryPool() : not enough fees");
-@@ -559,6 +564,8 @@ bool CTransaction::AcceptToMemoryPool(CTxDB& txdb, bool fCheckInputs, bool* pfMi
+@@ -567,6 +572,8 @@ bool CTransaction::AcceptToMemoryPool(CTxDB& txdb, bool fCheckInputs, bool* pfMi
}
}
@@ -42,7 +42,7 @@
// Check against previous transactions
// This is done last to help prevent CPU exhaustion denial-of-service attacks.
if (!ConnectInputs(mapInputs, mapUnused, CDiskTxPos(1,1,1), pindexBest, false, false))
-@@ -3070,6 +3077,9 @@ CBlock* CreateNewBlock(CReserveKey& reservekey)
+@@ -3136,6 +3143,9 @@ CBlock* CreateNewBlock(CReserveKey& reservekey)
// Priority is sum(valuein * age) / txsize
dPriority /= ::GetSerializeSize(tx, SER_NETWORK);
@@ -52,7 +52,7 @@
if (porphan)
porphan->dPriority = dPriority;
else
-@@ -3108,7 +3118,7 @@ CBlock* CreateNewBlock(CReserveKey& reservekey)
+@@ -3174,7 +3184,7 @@ CBlock* CreateNewBlock(CReserveKey& reservekey)
// Transaction fee required depends on block size
bool fAllowFree = (nBlockSize + nTxSize < 4000 || CTransaction::AllowFree(dPriority));
@@ -62,10 +62,10 @@
// Connecting shouldn't fail due to dependency on other memory pool transactions
// because we're already processing them in order of dependency
diff --git a/src/main.h b/src/main.h
-index 908ada7..1179f19 100644
+index 6be5a8b..f217648 100644
--- a/src/main.h
+++ b/src/main.h
-@@ -573,6 +573,42 @@ public:
+@@ -551,6 +551,42 @@ public:
unsigned int nBytes = ::GetSerializeSize(*this, SER_NETWORK);
unsigned int nNewBlockSize = nBlockSize + nBytes;
@@ -108,7 +108,7 @@
int64 nMinFee = (1 + (int64)nBytes / 1000) * nBaseFee;
if (fAllowFree)
-@@ -598,6 +634,8 @@ public:
+@@ -576,6 +612,8 @@ public:
if (txout.nValue < CENT)
nMinFee = nBaseFee;
@@ -118,14 +118,14 @@
if (nBlockSize != 1 && nNewBlockSize >= MAX_BLOCK_SIZE_GEN/2)
{
diff --git a/src/net.cpp b/src/net.cpp
-index f0ea550..5d81c48 100644
+index 37e73c4..5f6b5d9 100644
--- a/src/net.cpp
+++ b/src/net.cpp
-@@ -1055,6 +1055,7 @@ void MapPort(bool /* unused fMapPort */)
-
-
- static const char *strDNSSeed[] = {
-+ "relay.eligius.st",
- "bitseed.xf2.org",
- "dnsseed.bluematt.me",
- "seed.bitcoin.sipa.be",
+@@ -1052,6 +1052,7 @@ void MapPort(bool /* unused fMapPort */)
+ // The first name is used as information source for addrman.
+ // The second name should resolve to a list of seed addresses.
+ static const char *strDNSSeed[][2] = {
++ {"eligius.st", "relay.eligius.st"},
+ {"xf2.org", "bitseed.xf2.org"},
+ {"bluematt.me", "dnsseed.bluematt.me"},
+ {"bitcoin.sipa.be", "seed.bitcoin.sipa.be"},
^ permalink raw reply [flat|nested] 3+ messages in thread
* [gentoo-commits] gentoo-x86 commit in net-p2p/bitcoin-qt/files: 9999-eligius_sendfee.patch
@ 2012-04-04 13:54 Anthony G. Basile (blueness)
0 siblings, 0 replies; 3+ messages in thread
From: Anthony G. Basile (blueness) @ 2012-04-04 13:54 UTC (permalink / raw
To: gentoo-commits
blueness 12/04/04 13:54:37
Removed: 9999-eligius_sendfee.patch
Log:
Version bumps
(Portage version: 2.1.10.49/cvs/Linux x86_64)
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2012-04-04 13:54 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-04-04 13:54 [gentoo-commits] gentoo-x86 commit in net-p2p/bitcoin-qt/files: 9999-eligius_sendfee.patch Anthony G. Basile (blueness)
-- strict thread matches above, loose matches on Subject: below --
2012-03-26 22:54 Anthony G. Basile (blueness)
2012-03-18 0:13 Anthony G. Basile (blueness)
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox