Files

63 lines
3.0 KiB
Python

import os
import time
import subprocess
from sys import platform
def simplewalletloader(walletname, walletpw, isname):
"""Function to create and/or open wallet in simplewallet rpc mode"""
# Launch simplewallet in rpc mode if wallet file exists
if isname == True:
# os.remove(walletname)
print "***Opening ___" + walletname + "___ wallet file rpc interface***"
if platform == 'win32':
subprocess.Popen(
"start simplewallet.exe --wallet-file {0} --password {1} --rpc-bind-port 19091 --set_log 0\r\nnpause".format(
walletname, walletpw), shell=True)
elif platform == 'linux' or platform == 'linux2' or platform == 'darwin':
subprocess.Popen(
'xterm -bg black -hold -e "./simplewallet --wallet-file {0} --password {1} --rpc-bind-port 19091"'.format(
walletname, walletpw))
# Generate and then launch if wallet file doesn't exist
elif isname == False:
print "Generating wallet file " + walletname
if platform == 'win32':
walletgen = subprocess.Popen(
"simplewallet.exe --generate-new-wallet {0} --password {1} --set_log 0".format(
walletname, walletpw), shell=True, stdin=subprocess.PIPE,
stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
elif platform == 'linux' or platform == 'linux2' or platform == 'darwin':
walletgen = subprocess.Popen(
"./simplewallet --generate-new-wallet {0} --password {1} --set_log 0".format(
walletname, walletpw), shell=True, stdin=subprocess.PIPE,
stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
print "Wallet gen'ed"
time.sleep(5)
#print walletgen.stdout.read()
#print walletgen.communicate('exit')
walletgen.terminate()
if platform == 'win32':
os.system("taskkill /im simplewallet.exe /f")
elif platform == 'linux' or platform == 'linux2' or platform == 'darwin':
p = subprocess.Popen("pgrep simplewallet", shell=True, stdout=subprocess.PIPE,
stderr=subprocess.PIPE)
output, errors = p.communicate()
output = output.split('\n')
for i in output:
os.system("kill -9 {0}".format(i))
# Launch simplewallet in rpc mode now that wallet file exists
print "***Opening ___" + walletname + "___ wallet file rpc interface***"
if platform == 'win32':
subprocess.Popen(
"start simplewallet --wallet-file {0} --password {1} --rpc-bind-port 19091 --set_log 0\r\nnpause".format(
walletname, walletpw), shell=True)
elif platform == 'linux' or platform == 'linux2' or platform == 'linux32':
subprocess.Popen(
'xterm -bg black -hold -e "./simplewallet --wallet-file {0} --password {1} --rpc-bind-port 19091 --set_log 0"'.format(
walletname, walletpw), shell=True)
elif isname == None:
pass