public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [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-03-18  0:13 [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-04-04 13:54 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