moved p2pool network definitions to p2pool.networks
authorForrest Voight <forrest@forre.st>
Sun, 4 Dec 2011 00:39:21 +0000 (19:39 -0500)
committerForrest Voight <forrest@forre.st>
Sun, 4 Dec 2011 00:39:21 +0000 (19:39 -0500)
p2pool/data.py
p2pool/main.py
p2pool/networks.py [new file with mode: 0644]

index 05804f5..545b5cb 100644 (file)
@@ -12,7 +12,7 @@ from twisted.python import log
 
 import p2pool
 from p2pool import skiplists
-from p2pool.bitcoin import data as bitcoin_data, script, networks
+from p2pool.bitcoin import data as bitcoin_data, script
 from p2pool.util import memoize, expiring_dict, math, forest
 
 
@@ -514,148 +514,3 @@ class ShareStore(object):
             self.known.pop(filename)
             os.remove(filename)
             print "REMOVED", filename
-
-class BitcoinMainnet(networks.BitcoinMainnet):
-    SHARE_PERIOD = 10 # seconds
-    CHAIN_LENGTH = 24*60*60//10//2 # shares
-    TARGET_LOOKBEHIND = 200 # shares
-    SPREAD = 3 # blocks
-    IDENTIFIER = 'fc70035c7a81bc6f'.decode('hex')
-    PREFIX = '2472ef181efcd37b'.decode('hex')
-    NAME = 'bitcoin'
-    P2P_PORT = 9333
-    MAX_TARGET = 2**256//2**32 - 1
-    PERSIST = True
-    WORKER_PORT = 9332
-
-class BitcoinTestnet(networks.BitcoinTestnet):
-    SHARE_PERIOD = 1 # seconds
-    CHAIN_LENGTH = 24*60*60//10//2 # shares
-    TARGET_LOOKBEHIND = 200 # shares
-    SPREAD = 3 # blocks
-    IDENTIFIER = '5fc2be2d4f0d6bfb'.decode('hex')
-    PREFIX = '3f6057a15036f441'.decode('hex')
-    NAME = 'bitcoin_testnet'
-    P2P_PORT = 19333
-    MAX_TARGET = 2**256//2**32 - 1
-    PERSIST = False
-    WORKER_PORT = 19332
-
-class NamecoinMainnet(networks.NamecoinMainnet):
-    SHARE_PERIOD = 10 # seconds
-    CHAIN_LENGTH = 24*60*60//10 # shares
-    TARGET_LOOKBEHIND = 3600//10 # shares
-    SPREAD = 3 # blocks
-    IDENTIFIER = 'd5b1192062c4c454'.decode('hex')
-    PREFIX = 'b56f3d0fb24fc982'.decode('hex')
-    NAME = 'namecoin'
-    P2P_PORT = 9334
-    MAX_TARGET = 2**256//2**32 - 1
-    PERSIST = True
-    WORKER_PORT = 9331
-
-class NamecoinTestnet(networks.NamecoinTestnet):
-    SHARE_PERIOD = 1 # seconds
-    CHAIN_LENGTH = 24*60*60//5 # shares
-    TARGET_LOOKBEHIND = 200 # shares
-    SPREAD = 3 # blocks
-    IDENTIFIER = '8dd303d014a01a60'.decode('hex')
-    PREFIX = '4d6581d24f51acbf'.decode('hex')
-    NAME = 'namecoin_testnet'
-    P2P_PORT = 19334
-    MAX_TARGET = 2**256//2**20 - 1
-    PERSIST = False
-    WORKER_PORT = 19331
-
-class IxcoinMainnet(networks.IxcoinMainnet):
-    SHARE_PERIOD = 10 # seconds
-    CHAIN_LENGTH = 24*60*60//10 # shares
-    TARGET_LOOKBEHIND = 3600//10 # shares
-    SPREAD = 3 # blocks
-    IDENTIFIER = '27b564116e2a2666'.decode('hex')
-    PREFIX = '9dd6c4a619401f2f'.decode('hex')
-    NAME = 'ixcoin'
-    P2P_PORT = 9335
-    MAX_TARGET = 2**256//2**32 - 1
-    PERSIST = True
-    WORKER_PORT = 9330
-
-class IxcoinTestnet(networks.IxcoinTestnet):
-    SHARE_PERIOD = 1 # seconds
-    CHAIN_LENGTH = 24*60*60//5 # shares
-    TARGET_LOOKBEHIND = 200 # shares
-    SPREAD = 3 # blocks
-    IDENTIFIER = '7430cbeb01249e44'.decode('hex')
-    PREFIX = '7cfffda946709c1f'.decode('hex')
-    NAME = 'ixcoin_testnet'
-    P2P_PORT = 19335
-    MAX_TARGET = 2**256//2**20 - 1
-    PERSIST = False
-    WORKER_PORT = 19330
-
-class I0coinMainnet(networks.I0coinMainnet):
-    SHARE_PERIOD = 10 # seconds
-    CHAIN_LENGTH = 24*60*60//10 # shares
-    TARGET_LOOKBEHIND = 3600//10 # shares
-    SPREAD = 3 # blocks
-    IDENTIFIER = 'b32e3f10c2ff221b'.decode('hex')
-    PREFIX = '6155537ed977a3b5'.decode('hex')
-    NAME = 'i0coin'
-    P2P_PORT = 9336
-    MAX_TARGET = 2**256//2**32 - 1
-    PERSIST = False
-    WORKER_PORT = 9329
-
-class I0coinTestnet(networks.I0coinTestnet):
-    SHARE_PERIOD = 1 # seconds
-    CHAIN_LENGTH = 24*60*60//5 # shares
-    TARGET_LOOKBEHIND = 200 # shares
-    SPREAD = 3 # blocks
-    IDENTIFIER = '7712c1a8181b5f2e'.decode('hex')
-    PREFIX = '792d2e7d770fbe68'.decode('hex')
-    NAME = 'i0coin_testnet'
-    P2P_PORT = 19336
-    MAX_TARGET = 2**256//2**20 - 1
-    PERSIST = False
-    WORKER_PORT = 19329
-
-class SolidcoinMainnet(networks.SolidcoinMainnet):
-    SHARE_PERIOD = 10
-    CHAIN_LENGTH = 24*60*60//10 # shares
-    TARGET_LOOKBEHIND = 3600//10 # shares
-    SPREAD = 3 # blocks
-    IDENTIFIER = '9cc9c421cca258cd'.decode('hex')
-    PREFIX = 'c059125b8070f00a'.decode('hex')
-    NAME = 'solidcoin'
-    P2P_PORT = 9337
-    MAX_TARGET = 2**256//2**32 - 1
-    PERSIST = True
-    WORKER_PORT = 9328
-
-class LitecoinMainnet(networks.LitecoinMainnet):
-    SHARE_PERIOD = 10 # seconds
-    CHAIN_LENGTH = 24*60*60//10//2 # shares
-    TARGET_LOOKBEHIND = 200 # shares
-    SPREAD = 12 # blocks
-    IDENTIFIER = 'e037d5b8c6923410'.decode('hex')
-    PREFIX = '7208c1a53ef629b0'.decode('hex')
-    NAME = 'litecoin'
-    P2P_PORT = 9338
-    MAX_TARGET = 2**256//2**20 - 1
-    PERSIST = True
-    WORKER_PORT = 9327
-
-class LitecoinTestnet(networks.LitecoinTestnet):
-    SHARE_PERIOD = 1 # seconds
-    CHAIN_LENGTH = 24*60*60//5 # shares
-    TARGET_LOOKBEHIND = 200 # shares
-    SPREAD = 12 # blocks
-    IDENTIFIER = 'cca5e24ec6408b1e'.decode('hex')
-    PREFIX = 'ad9614f6466a39cf'.decode('hex')
-    NAME = 'litecoin_testnet'
-    P2P_PORT = 19338
-    MAX_TARGET = 2**256//2**17 - 1
-    PERSIST = False
-    WORKER_PORT = 19327
-
-nets = dict((net.NAME, net) for net in set([BitcoinMainnet, BitcoinTestnet, NamecoinMainnet, NamecoinTestnet, IxcoinMainnet, IxcoinTestnet, I0coinMainnet, I0coinTestnet, SolidcoinMainnet, LitecoinMainnet, LitecoinTestnet]))
index 85489c9..57b9c04 100644 (file)
@@ -23,7 +23,7 @@ from nattraverso import portmapper, ipdiscover
 import bitcoin.p2p as bitcoin_p2p, bitcoin.getwork as bitcoin_getwork, bitcoin.data as bitcoin_data
 from bitcoin import worker_interface
 from util import db, expiring_dict, jsonrpc, variable, deferral, math
-from . import p2p, skiplists
+from . import p2p, skiplists, networks
 import p2pool, p2pool.data as p2pool_data
 
 @deferral.retry('Error getting work from bitcoind:', 3)
@@ -698,7 +698,7 @@ def run():
     parser.add_argument('--version', action='version', version=p2pool.__version__)
     parser.add_argument('--net',
         help='use specified network (default: bitcoin)',
-        action='store', choices=sorted(x for x in p2pool_data.nets if 'testnet' not in x), default='bitcoin', dest='net_name')
+        action='store', choices=sorted(x for x in networks.nets if 'testnet' not in x), default='bitcoin', dest='net_name')
     parser.add_argument('--testnet',
         help='''use the network's testnet''',
         action='store_const', const=True, default=False, dest='testnet')
@@ -763,7 +763,7 @@ def run():
     if args.debug:
         p2pool.DEBUG = True
     
-    net = p2pool_data.nets[args.net_name + ('_testnet' if args.testnet else '')]
+    net = networks.nets[args.net_name + ('_testnet' if args.testnet else '')]
     
     if args.logfile is None:
         args.logfile = os.path.join(os.path.dirname(sys.argv[0]), net.NAME + '.log')
diff --git a/p2pool/networks.py b/p2pool/networks.py
new file mode 100644 (file)
index 0000000..0e9a74e
--- /dev/null
@@ -0,0 +1,146 @@
+from p2pool.bitcoin import networks
+
+class BitcoinMainnet(networks.BitcoinMainnet):
+    SHARE_PERIOD = 10 # seconds
+    CHAIN_LENGTH = 24*60*60//10//2 # shares
+    TARGET_LOOKBEHIND = 200 # shares
+    SPREAD = 3 # blocks
+    IDENTIFIER = 'fc70035c7a81bc6f'.decode('hex')
+    PREFIX = '2472ef181efcd37b'.decode('hex')
+    NAME = 'bitcoin'
+    P2P_PORT = 9333
+    MAX_TARGET = 2**256//2**32 - 1
+    PERSIST = True
+    WORKER_PORT = 9332
+
+class BitcoinTestnet(networks.BitcoinTestnet):
+    SHARE_PERIOD = 1 # seconds
+    CHAIN_LENGTH = 24*60*60//10//2 # shares
+    TARGET_LOOKBEHIND = 200 # shares
+    SPREAD = 3 # blocks
+    IDENTIFIER = '5fc2be2d4f0d6bfb'.decode('hex')
+    PREFIX = '3f6057a15036f441'.decode('hex')
+    NAME = 'bitcoin_testnet'
+    P2P_PORT = 19333
+    MAX_TARGET = 2**256//2**32 - 1
+    PERSIST = False
+    WORKER_PORT = 19332
+
+class NamecoinMainnet(networks.NamecoinMainnet):
+    SHARE_PERIOD = 10 # seconds
+    CHAIN_LENGTH = 24*60*60//10 # shares
+    TARGET_LOOKBEHIND = 3600//10 # shares
+    SPREAD = 3 # blocks
+    IDENTIFIER = 'd5b1192062c4c454'.decode('hex')
+    PREFIX = 'b56f3d0fb24fc982'.decode('hex')
+    NAME = 'namecoin'
+    P2P_PORT = 9334
+    MAX_TARGET = 2**256//2**32 - 1
+    PERSIST = True
+    WORKER_PORT = 9331
+
+class NamecoinTestnet(networks.NamecoinTestnet):
+    SHARE_PERIOD = 1 # seconds
+    CHAIN_LENGTH = 24*60*60//5 # shares
+    TARGET_LOOKBEHIND = 200 # shares
+    SPREAD = 3 # blocks
+    IDENTIFIER = '8dd303d014a01a60'.decode('hex')
+    PREFIX = '4d6581d24f51acbf'.decode('hex')
+    NAME = 'namecoin_testnet'
+    P2P_PORT = 19334
+    MAX_TARGET = 2**256//2**20 - 1
+    PERSIST = False
+    WORKER_PORT = 19331
+
+class IxcoinMainnet(networks.IxcoinMainnet):
+    SHARE_PERIOD = 10 # seconds
+    CHAIN_LENGTH = 24*60*60//10 # shares
+    TARGET_LOOKBEHIND = 3600//10 # shares
+    SPREAD = 3 # blocks
+    IDENTIFIER = '27b564116e2a2666'.decode('hex')
+    PREFIX = '9dd6c4a619401f2f'.decode('hex')
+    NAME = 'ixcoin'
+    P2P_PORT = 9335
+    MAX_TARGET = 2**256//2**32 - 1
+    PERSIST = True
+    WORKER_PORT = 9330
+
+class IxcoinTestnet(networks.IxcoinTestnet):
+    SHARE_PERIOD = 1 # seconds
+    CHAIN_LENGTH = 24*60*60//5 # shares
+    TARGET_LOOKBEHIND = 200 # shares
+    SPREAD = 3 # blocks
+    IDENTIFIER = '7430cbeb01249e44'.decode('hex')
+    PREFIX = '7cfffda946709c1f'.decode('hex')
+    NAME = 'ixcoin_testnet'
+    P2P_PORT = 19335
+    MAX_TARGET = 2**256//2**20 - 1
+    PERSIST = False
+    WORKER_PORT = 19330
+
+class I0coinMainnet(networks.I0coinMainnet):
+    SHARE_PERIOD = 10 # seconds
+    CHAIN_LENGTH = 24*60*60//10 # shares
+    TARGET_LOOKBEHIND = 3600//10 # shares
+    SPREAD = 3 # blocks
+    IDENTIFIER = 'b32e3f10c2ff221b'.decode('hex')
+    PREFIX = '6155537ed977a3b5'.decode('hex')
+    NAME = 'i0coin'
+    P2P_PORT = 9336
+    MAX_TARGET = 2**256//2**32 - 1
+    PERSIST = False
+    WORKER_PORT = 9329
+
+class I0coinTestnet(networks.I0coinTestnet):
+    SHARE_PERIOD = 1 # seconds
+    CHAIN_LENGTH = 24*60*60//5 # shares
+    TARGET_LOOKBEHIND = 200 # shares
+    SPREAD = 3 # blocks
+    IDENTIFIER = '7712c1a8181b5f2e'.decode('hex')
+    PREFIX = '792d2e7d770fbe68'.decode('hex')
+    NAME = 'i0coin_testnet'
+    P2P_PORT = 19336
+    MAX_TARGET = 2**256//2**20 - 1
+    PERSIST = False
+    WORKER_PORT = 19329
+
+class SolidcoinMainnet(networks.SolidcoinMainnet):
+    SHARE_PERIOD = 10
+    CHAIN_LENGTH = 24*60*60//10 # shares
+    TARGET_LOOKBEHIND = 3600//10 # shares
+    SPREAD = 3 # blocks
+    IDENTIFIER = '9cc9c421cca258cd'.decode('hex')
+    PREFIX = 'c059125b8070f00a'.decode('hex')
+    NAME = 'solidcoin'
+    P2P_PORT = 9337
+    MAX_TARGET = 2**256//2**32 - 1
+    PERSIST = True
+    WORKER_PORT = 9328
+
+class LitecoinMainnet(networks.LitecoinMainnet):
+    SHARE_PERIOD = 10 # seconds
+    CHAIN_LENGTH = 24*60*60//10//2 # shares
+    TARGET_LOOKBEHIND = 200 # shares
+    SPREAD = 12 # blocks
+    IDENTIFIER = 'e037d5b8c6923410'.decode('hex')
+    PREFIX = '7208c1a53ef629b0'.decode('hex')
+    NAME = 'litecoin'
+    P2P_PORT = 9338
+    MAX_TARGET = 2**256//2**20 - 1
+    PERSIST = True
+    WORKER_PORT = 9327
+
+class LitecoinTestnet(networks.LitecoinTestnet):
+    SHARE_PERIOD = 1 # seconds
+    CHAIN_LENGTH = 24*60*60//5 # shares
+    TARGET_LOOKBEHIND = 200 # shares
+    SPREAD = 12 # blocks
+    IDENTIFIER = 'cca5e24ec6408b1e'.decode('hex')
+    PREFIX = 'ad9614f6466a39cf'.decode('hex')
+    NAME = 'litecoin_testnet'
+    P2P_PORT = 19338
+    MAX_TARGET = 2**256//2**17 - 1
+    PERSIST = False
+    WORKER_PORT = 19327
+
+nets = dict((net.NAME, net) for net in set([BitcoinMainnet, BitcoinTestnet, NamecoinMainnet, NamecoinTestnet, IxcoinMainnet, IxcoinTestnet, I0coinMainnet, I0coinTestnet, SolidcoinMainnet, LitecoinMainnet, LitecoinTestnet]))