aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authormydesktop <dev.mc2@gmail.com>2014-06-26 16:42:24 -0400
committermydesktop <dev.mc2@gmail.com>2014-06-26 16:42:24 -0400
commiteba62452c007623bf559e836cbe7e9f2f66a35e9 (patch)
tree51802c04a0379a29747d4fb660f9643dfc753ab6 /src
parentfix function typo (diff)
downloadmonero-eba62452c007623bf559e836cbe7e9f2f66a35e9.tar.xz
set max block size for gbt
Diffstat (limited to 'src')
-rw-r--r--src/cryptonote_config.h1
-rw-r--r--src/cryptonote_core/tx_pool.cpp8
2 files changed, 9 insertions, 0 deletions
diff --git a/src/cryptonote_config.h b/src/cryptonote_config.h
index 295f59e51..d271d2e4a 100644
--- a/src/cryptonote_config.h
+++ b/src/cryptonote_config.h
@@ -6,6 +6,7 @@
#define CRYPTONOTE_MAX_BLOCK_NUMBER 500000000
#define CRYPTONOTE_MAX_BLOCK_SIZE 500000000 // block header blob limit, never used!
+#define CRYPTONOTE_GETBLOCKTEMPLATE_MAX_BLOCK_SIZE 196608 //size of block (bytes) that is the maximum that miners will produce
#define CRYPTONOTE_MAX_TX_SIZE 1000000000
#define CRYPTONOTE_PUBLIC_ADDRESS_TEXTBLOB_VER 0
#define CRYPTONOTE_PUBLIC_ADDRESS_BASE58_PREFIX 18 // addresses start with "4"
diff --git a/src/cryptonote_core/tx_pool.cpp b/src/cryptonote_core/tx_pool.cpp
index 1778c590a..bf932404a 100644
--- a/src/cryptonote_core/tx_pool.cpp
+++ b/src/cryptonote_core/tx_pool.cpp
@@ -425,6 +425,14 @@ namespace cryptonote
continue;
// If adding this tx will make the block size
+ // greater than CRYPTONOTE_GETBLOCKTEMPLATE_MAX
+ // _BLOCK_SIZE bytes, reject the tx; this will
+ // keep block sizes from becoming too unwieldly
+ // to propagate at 60s block times.
+ if ( (total_size + tx.second.blob_size) > CRYPTONOTE_GETBLOCKTEMPLATE_MAX_BLOCK_SIZE )
+ continue;
+
+ // If adding this tx will make the block size
// greater than 130% of the median, reject the
// tx; this will keep down largely punitive tx
// from being included