Add support for the Terracoin network.
[p2pool.git] / p2pool / networks.py
index d44a803..63d827a 100644 (file)
@@ -18,6 +18,7 @@ nets = dict(
         IDENTIFIER='fc70035c7a81bc6f'.decode('hex'),
         PREFIX='2472ef181efcd37b'.decode('hex'),
         P2P_PORT=9333,
+        MIN_TARGET=0,
         MAX_TARGET=2**256//2**32 - 1,
         PERSIST=True,
         WORKER_PORT=9332,
@@ -35,6 +36,7 @@ nets = dict(
         IDENTIFIER='5fc2be2d4f0d6bfb'.decode('hex'),
         PREFIX='3f6057a15036f441'.decode('hex'),
         P2P_PORT=19333,
+        MIN_TARGET=0,
         MAX_TARGET=2**256//2**32 - 1,
         PERSIST=False,
         WORKER_PORT=19332,
@@ -53,6 +55,7 @@ nets = dict(
         IDENTIFIER='e037d5b8c6923410'.decode('hex'),
         PREFIX='7208c1a53ef629b0'.decode('hex'),
         P2P_PORT=9338,
+        MIN_TARGET=0,
         MAX_TARGET=2**256//2**20 - 1,
         PERSIST=True,
         WORKER_PORT=9327,
@@ -70,13 +73,52 @@ nets = dict(
         IDENTIFIER='cca5e24ec6408b1e'.decode('hex'),
         PREFIX='ad9614f6466a39cf'.decode('hex'),
         P2P_PORT=19338,
-        MAX_TARGET=2**256 - 1,
+        MIN_TARGET=0,
+        MAX_TARGET=2**256//2000 - 1,
         PERSIST=False,
         WORKER_PORT=19327,
         BOOTSTRAP_ADDRS='forre.st vps.forre.st'.split(' '),
         ANNOUNCE_CHANNEL='#p2pool-alt',
         VERSION_CHECK=lambda v: True,
     ),
+
+    terracoin=math.Object(
+        PARENT=networks.nets['terracoin'],
+        SHARE_PERIOD=30, # seconds
+        CHAIN_LENGTH=24*60*60//30, # shares
+        REAL_CHAIN_LENGTH=24*60*60//30, # shares
+        TARGET_LOOKBEHIND=200, # shares
+        SPREAD=3, # blocks
+        IDENTIFIER='a41b2356a1b7d35e'.decode('hex'),
+        PREFIX='5623b62178d2b8a3'.decode('hex'),
+        P2P_PORT=9323,
+        MIN_TARGET=0,
+        MAX_TARGET=2**256//2**32 - 1,
+        PERSIST=True,
+        WORKER_PORT=9322,
+        BOOTSTRAP_ADDRS='seed1.p2pool.terracoin.org seed2.p2pool.terracoin.org forre.st vps.forre.st 74.220.242.6:9334 93.97.192.93 66.90.73.83 67.83.108.0 219.84.64.174 24.167.17.248 109.74.195.142 83.211.86.49 94.23.34.145 168.7.116.243 94.174.40.189:9344 89.79.79.195 portals94.ns01.us'.split(' '),
+        ANNOUNCE_CHANNEL='#p2pool-alt',
+        VERSION_CHECK=lambda v: True,
+    ),
+    terracoin_testnet=math.Object(
+        PARENT=networks.nets['terracoin_testnet'],
+        SHARE_PERIOD=30, # seconds
+        CHAIN_LENGTH=60*60//30, # shares
+        REAL_CHAIN_LENGTH=60*60//30, # shares
+        TARGET_LOOKBEHIND=200, # shares
+        SPREAD=3, # blocks
+        IDENTIFIER='b41b2356a5b7d35d'.decode('hex'),
+        PREFIX='1623b92172d2b8a2'.decode('hex'),
+        P2P_PORT=19323,
+        MIN_TARGET=0,
+        MAX_TARGET=2**256//2**32 - 1,
+        PERSIST=False,
+        WORKER_PORT=19322,
+        BOOTSTRAP_ADDRS='seed1.p2pool.terracoin.org seed2.p2pool.terracoin.org forre.st vps.forre.st'.split(' '),
+        ANNOUNCE_CHANNEL='#p2pool-alt',
+        VERSION_CHECK=lambda v: True,
+    ),
+
 )
 for net_name, net in nets.iteritems():
     net.NAME = net_name