2012-11-19 20:45:05 +01:00
|
|
|
import pickle
|
|
|
|
import socket
|
|
|
|
from struct import *
|
|
|
|
import time
|
|
|
|
import random
|
|
|
|
import sys
|
|
|
|
from time import strftime, localtime
|
|
|
|
|
|
|
|
def createDefaultKnownNodes(appdata):
|
|
|
|
############## Stream 1 ################
|
|
|
|
stream1 = {}
|
|
|
|
|
2013-03-28 22:56:20 +01:00
|
|
|
stream1['80.69.173.220'] = (443,int(time.time()))
|
|
|
|
stream1['109.95.105.15'] = (8443,int(time.time()))
|
2013-02-26 23:20:43 +01:00
|
|
|
stream1['66.65.120.151'] = (8080,int(time.time()))
|
|
|
|
stream1['76.180.233.38'] = (8444,int(time.time()))
|
|
|
|
stream1['84.48.88.42'] = (8444,int(time.time()))
|
|
|
|
stream1['74.132.73.137'] = (8444,int(time.time()))
|
2013-02-04 22:49:02 +01:00
|
|
|
stream1['60.242.109.18'] = (8444,int(time.time()))
|
2012-11-19 20:45:05 +01:00
|
|
|
|
|
|
|
############# Stream 2 #################
|
|
|
|
stream2 = {}
|
|
|
|
# None yet
|
|
|
|
|
|
|
|
############# Stream 3 #################
|
|
|
|
stream3 = {}
|
|
|
|
# None yet
|
|
|
|
|
|
|
|
allKnownNodes = {}
|
|
|
|
allKnownNodes[1] = stream1
|
|
|
|
allKnownNodes[2] = stream2
|
|
|
|
allKnownNodes[3] = stream3
|
|
|
|
|
|
|
|
#print stream1
|
|
|
|
#print allKnownNodes
|
|
|
|
|
|
|
|
output = open(appdata + 'knownnodes.dat', 'wb')
|
|
|
|
|
|
|
|
# Pickle dictionary using protocol 0.
|
|
|
|
pickle.dump(allKnownNodes, output)
|
|
|
|
|
|
|
|
output.close()
|
|
|
|
return allKnownNodes
|
|
|
|
|
|
|
|
def readDefaultKnownNodes(appdata):
|
|
|
|
pickleFile = open(appdata + 'knownnodes.dat', 'rb')
|
|
|
|
knownNodes = pickle.load(pickleFile)
|
|
|
|
pickleFile.close()
|
|
|
|
knownNodes
|
|
|
|
for stream, storedValue in knownNodes.items():
|
|
|
|
for host,value in storedValue.items():
|
|
|
|
port, storedtime = storedValue[host]
|
2013-03-27 09:31:03 +01:00
|
|
|
print host, '\t', port, '\t', unicode(strftime('%a, %d %b %Y %I:%M %p',localtime(storedtime)))
|
2012-11-19 20:45:05 +01:00
|
|
|
|
|
|
|
if __name__ == "__main__":
|
|
|
|
|
|
|
|
APPNAME = "PyBitmessage"
|
|
|
|
from os import path, environ
|
|
|
|
if sys.platform == 'darwin':
|
|
|
|
from AppKit import NSSearchPathForDirectoriesInDomains
|
|
|
|
# http://developer.apple.com/DOCUMENTATION/Cocoa/Reference/Foundation/Miscellaneous/Foundation_Functions/Reference/reference.html#//apple_ref/c/func/NSSearchPathForDirectoriesInDomains
|
|
|
|
# NSApplicationSupportDirectory = 14
|
|
|
|
# NSUserDomainMask = 1
|
|
|
|
# True for expanding the tilde into a fully qualified path
|
|
|
|
appdata = path.join(NSSearchPathForDirectoriesInDomains(14, 1, True)[0], APPNAME) + '/'
|
|
|
|
elif 'win' in sys.platform:
|
|
|
|
appdata = path.join(environ['APPDATA'], APPNAME) + '\\'
|
|
|
|
else:
|
|
|
|
appdata = path.expanduser(path.join("~", "." + APPNAME + "/"))
|
|
|
|
|
|
|
|
|
2012-11-23 09:22:56 +01:00
|
|
|
print 'New list of all known nodes:', createDefaultKnownNodes(appdata)
|
2012-11-19 20:45:05 +01:00
|
|
|
readDefaultKnownNodes(appdata)
|
|
|
|
|
|
|
|
|