Changed the remaining src path to pybitmessage path
This commit is contained in:
parent
c7700507e1
commit
6bbe8ef22a
6
setup.py
6
setup.py
|
@ -7,7 +7,7 @@ import sys
|
||||||
from setuptools import setup, Extension
|
from setuptools import setup, Extension
|
||||||
from setuptools.command.install import install
|
from setuptools.command.install import install
|
||||||
|
|
||||||
from src.version import softwareVersion
|
from pybitmessage.version import softwareVersion
|
||||||
|
|
||||||
EXTRAS_REQUIRE = {
|
EXTRAS_REQUIRE = {
|
||||||
'gir': ['pygobject'],
|
'gir': ['pygobject'],
|
||||||
|
@ -18,7 +18,7 @@ EXTRAS_REQUIRE = {
|
||||||
'sound;platform_system=="Windows"': ['winsound'],
|
'sound;platform_system=="Windows"': ['winsound'],
|
||||||
'tor': ['stem'],
|
'tor': ['stem'],
|
||||||
'docs': ['sphinx', 'sphinxcontrib-apidoc', 'm2r'],
|
'docs': ['sphinx', 'sphinxcontrib-apidoc', 'm2r'],
|
||||||
'qrcode':['qrcode']
|
# 'qrcode':['qrcode']
|
||||||
}
|
}
|
||||||
|
|
||||||
if sys.version_info[0] == 2:
|
if sys.version_info[0] == 2:
|
||||||
|
@ -113,7 +113,7 @@ if __name__ == "__main__":
|
||||||
classifiers=[
|
classifiers=[
|
||||||
"License :: OSI Approved :: MIT License"
|
"License :: OSI Approved :: MIT License"
|
||||||
"Operating System :: OS Independent",
|
"Operating System :: OS Independent",
|
||||||
"Programming Language :: Python :: 2.7 :: Only",
|
"Programming Language :: Python :: 3.7 :: Only",
|
||||||
"Topic :: Internet",
|
"Topic :: Internet",
|
||||||
"Topic :: Security :: Cryptography",
|
"Topic :: Security :: Cryptography",
|
||||||
"Topic :: Software Development :: Libraries :: Python Modules",
|
"Topic :: Software Development :: Libraries :: Python Modules",
|
||||||
|
|
|
@ -8,7 +8,7 @@ from struct import pack, unpack
|
||||||
try:
|
try:
|
||||||
from debug import logger
|
from debug import logger
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from .debug import logger
|
from pybitmessage.debug import logger
|
||||||
|
|
||||||
ALPHABET = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"
|
ALPHABET = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"
|
||||||
|
|
||||||
|
|
29
src/api.py
29
src/api.py
|
@ -124,50 +124,59 @@ class singleAPI(StoppableThread):
|
||||||
errno.WSAEADDRINUSE = errno.EADDRINUSE
|
errno.WSAEADDRINUSE = errno.EADDRINUSE
|
||||||
for attempt in range(50):
|
for attempt in range(50):
|
||||||
try:
|
try:
|
||||||
|
print('+++++++++++++++++++++++127+++++++++++++++')
|
||||||
if attempt > 0:
|
if attempt > 0:
|
||||||
|
print('+++++++++++++++++++++++128+++++++++++++++')
|
||||||
logger.warning(
|
logger.warning(
|
||||||
'Failed to start API listener on port %s', port)
|
'Failed to start API listener on port %s', port)
|
||||||
port = random.randint(32767, 65535)
|
port = random.randint(32767, 65535)
|
||||||
print('pppppppppppppppppppppppppppppp')
|
print('+++++++++++++++++++++++133+++++++++++++++')
|
||||||
print('port-{}'.format(port))
|
print('+++++++++++++++++++++++133+++++++++++++++')
|
||||||
print('pppppppppppppppppppppppppppppp')
|
|
||||||
print('!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!')
|
|
||||||
print('bbbbbbbbbbbbbbbbbbbbbbbbbbbbb')
|
|
||||||
print(BMConfigParser().get('bitmessagesettings', 'apiinterface'))
|
|
||||||
print('bbbbbbbbbbbbbbbbbbbbbbbbbbbbb')
|
|
||||||
se = StoppableXMLRPCServer(
|
se = StoppableXMLRPCServer(
|
||||||
(BMConfigParser().get(
|
(BMConfigParser().get(
|
||||||
'bitmessagesettings', 'apiinterface'),
|
'bitmessagesettings', 'apiinterface'),
|
||||||
port),
|
port),
|
||||||
MySimpleXMLRPCRequestHandler, True, True)
|
MySimpleXMLRPCRequestHandler, True, True)
|
||||||
|
print('+++++++++++++++++++++++140+++++++++++++++')
|
||||||
except socket.error as e:
|
except socket.error as e:
|
||||||
|
print('+++++++++++++++++++++++142+++++++++++++++')
|
||||||
if e.errno in (errno.EADDRINUSE, errno.WSAEADDRINUSE):
|
if e.errno in (errno.EADDRINUSE, errno.WSAEADDRINUSE):
|
||||||
|
print('+++++++++++++++++++++++144+++++++++++++++')
|
||||||
continue
|
continue
|
||||||
else:
|
else:
|
||||||
if attempt > 0:
|
if attempt > 0:
|
||||||
|
print('+++++++++++++++++++++++148+++++++++++++++')
|
||||||
logger.warning('Setting apiport to %s', port)
|
logger.warning('Setting apiport to %s', port)
|
||||||
BMConfigParser().set(
|
BMConfigParser().set(
|
||||||
'bitmessagesettings', 'apiport', str(port))
|
'bitmessagesettings', 'apiport', str(port))
|
||||||
BMConfigParser().save()
|
BMConfigParser().save()
|
||||||
|
print('+++++++++++++++++++++++153+++++++++++++++')
|
||||||
break
|
break
|
||||||
|
|
||||||
|
print('+++++++++++++++++++++++156+++++++++++++++')
|
||||||
se.register_introspection_functions()
|
se.register_introspection_functions()
|
||||||
|
print('+++++++++++++++++++++++158+++++++++++++++')
|
||||||
apiNotifyPath = BMConfigParser().safeGet(
|
apiNotifyPath = BMConfigParser().safeGet(
|
||||||
'bitmessagesettings', 'apinotifypath')
|
'bitmessagesettings', 'apinotifypath')
|
||||||
|
print('------------161-------------------')
|
||||||
if apiNotifyPath:
|
if apiNotifyPath:
|
||||||
|
print('------------162-------------------')
|
||||||
logger.info('Trying to call %s', apiNotifyPath)
|
logger.info('Trying to call %s', apiNotifyPath)
|
||||||
|
print('------------165-------------------')
|
||||||
try:
|
try:
|
||||||
|
print('------------167-------------------')
|
||||||
subprocess.call([apiNotifyPath, "startingUp"])
|
subprocess.call([apiNotifyPath, "startingUp"])
|
||||||
except OSError:
|
except OSError:
|
||||||
|
print('------------170-------------------')
|
||||||
logger.warning(
|
logger.warning(
|
||||||
'Failed to call %s, removing apinotifypath setting',
|
'Failed to call %s, removing apinotifypath setting',
|
||||||
apiNotifyPath)
|
apiNotifyPath)
|
||||||
BMConfigParser().remove_option(
|
BMConfigParser().remove_option(
|
||||||
'bitmessagesettings', 'apinotifypath')
|
'bitmessagesettings', 'apinotifypath')
|
||||||
|
print('------------176-------------------')
|
||||||
se.serve_forever()
|
se.serve_forever()
|
||||||
|
print('---------178------------------------')
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
class MySimpleXMLRPCRequestHandler(SimpleXMLRPCRequestHandler):
|
class MySimpleXMLRPCRequestHandler(SimpleXMLRPCRequestHandler):
|
||||||
|
|
|
@ -26,7 +26,7 @@ import xmlrpc.client as xmlrpclib
|
||||||
try:
|
try:
|
||||||
from bmconfigparser import BMConfigParser
|
from bmconfigparser import BMConfigParser
|
||||||
except:
|
except:
|
||||||
from .bmconfigparser import BMConfigParser
|
from pybitmessage.bmconfigparser import BMConfigParser
|
||||||
|
|
||||||
api = ''
|
api = ''
|
||||||
keysName = 'keys.dat'
|
keysName = 'keys.dat'
|
||||||
|
|
|
@ -11,8 +11,8 @@ try:
|
||||||
import state
|
import state
|
||||||
from singleton import Singleton
|
from singleton import Singleton
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from . import state
|
from pybitmessage import state
|
||||||
from .singleton import Singleton
|
from pybitmessage.singleton import Singleton
|
||||||
|
|
||||||
|
|
||||||
BMConfigDefaults = {
|
BMConfigDefaults = {
|
||||||
|
|
|
@ -18,18 +18,18 @@ try:
|
||||||
from pyelliptic.openssl import OpenSSL
|
from pyelliptic.openssl import OpenSSL
|
||||||
from network.threads import StoppableThread
|
from network.threads import StoppableThread
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from . import defaults
|
from pybitmessage import defaults
|
||||||
from .import highlevelcrypto
|
from pybitmessage import highlevelcrypto
|
||||||
from . import queues
|
from pybitmessage import queues
|
||||||
from . import shared
|
from pybitmessage import shared
|
||||||
from . import state
|
from pybitmessage import state
|
||||||
from . import tr
|
from pybitmessage import tr
|
||||||
from .addresses import decodeAddress, encodeAddress, encodeVarint
|
from pybitmessage.addresses import decodeAddress, encodeAddress, encodeVarint
|
||||||
from .bmconfigparser import BMConfigParser
|
from pybitmessage.bmconfigparser import BMConfigParser
|
||||||
from .fallback import RIPEMD160Hash
|
from pybitmessage.fallback import RIPEMD160Hash
|
||||||
from .pyelliptic import arithmetic
|
from pybitmessage.pyelliptic import arithmetic
|
||||||
from .pyelliptic.openssl import OpenSSL
|
from pybitmessage.pyelliptic.openssl import OpenSSL
|
||||||
from .network.threads import StoppableThread
|
from pybitmessage.network.threads import StoppableThread
|
||||||
|
|
||||||
class addressGenerator(StoppableThread):
|
class addressGenerator(StoppableThread):
|
||||||
"""A thread for creating addresses"""
|
"""A thread for creating addresses"""
|
||||||
|
|
|
@ -36,28 +36,28 @@ try:
|
||||||
from network import bmproto
|
from network import bmproto
|
||||||
from network.node import Peer
|
from network.node import Peer
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from . import helper_bitcoin
|
from pybitmessage import helper_bitcoin
|
||||||
from . import helper_inbox
|
from pybitmessage import helper_inbox
|
||||||
from . import helper_msgcoding
|
from pybitmessage import helper_msgcoding
|
||||||
from . import helper_sent
|
from pybitmessage import helper_sent
|
||||||
from . import highlevelcrypto
|
from pybitmessage import highlevelcrypto
|
||||||
from . import knownnodes
|
from pybitmessage import knownnodes
|
||||||
from . import l10n
|
from pybitmessage import l10n
|
||||||
from . import protocol
|
from pybitmessage import protocol
|
||||||
from . import queues
|
from pybitmessage import queues
|
||||||
from . import shared
|
from pybitmessage import shared
|
||||||
from . import state
|
from pybitmessage import state
|
||||||
from . import tr
|
from pybitmessage import tr
|
||||||
from .addresses import (
|
from pybitmessage.addresses import (
|
||||||
calculateInventoryHash, decodeAddress, decodeVarint,
|
calculateInventoryHash, decodeAddress, decodeVarint,
|
||||||
encodeAddress, encodeVarint, varintDecodeError
|
encodeAddress, encodeVarint, varintDecodeError
|
||||||
)
|
)
|
||||||
from .bmconfigparser import BMConfigParser
|
from pybitmessage.bmconfigparser import BMConfigParser
|
||||||
from .fallback import RIPEMD160Hash
|
from pybitmessage.fallback import RIPEMD160Hash
|
||||||
from .helper_ackPayload import genAckPayload
|
from pybitmessage.helper_ackPayload import genAckPayload
|
||||||
from .helper_sql import SqlBulkExecute, sqlExecute, sqlQuery
|
from pybitmessage.helper_sql import SqlBulkExecute, sqlExecute, sqlQuery
|
||||||
from .network import bmproto
|
from pybitmessage.network import bmproto
|
||||||
from .network.node import Peer
|
from pybitmessage.network.node import Peer
|
||||||
# pylint: disable=too-many-locals, too-many-return-statements, too-many-branches, too-many-statements
|
# pylint: disable=too-many-locals, too-many-return-statements, too-many-branches, too-many-statements
|
||||||
|
|
||||||
logger = logging.getLogger('default')
|
logger = logging.getLogger('default')
|
||||||
|
|
|
@ -37,16 +37,16 @@ try:
|
||||||
from network.threads import StoppableThread
|
from network.threads import StoppableThread
|
||||||
|
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from . import shared
|
from pybitmessage import shared
|
||||||
from . import knownnodes
|
from pybitmessage import knownnodes
|
||||||
from . import queues
|
from pybitmessage import queues
|
||||||
from . import state
|
from pybitmessage import state
|
||||||
from . import tr
|
from pybitmessage import tr
|
||||||
from .bmconfigparser import BMConfigParser
|
from pybitmessage.bmconfigparser import BMConfigParser
|
||||||
from .helper_sql import sqlExecute, sqlQuery
|
from pybitmessage.helper_sql import sqlExecute, sqlQuery
|
||||||
from .inventory import Inventory
|
from pybitmessage.inventory import Inventory
|
||||||
from .network.connectionpool import BMConnectionPool
|
from pybitmessage.network.connectionpool import BMConnectionPool
|
||||||
from .network.threads import StoppableThread
|
from pybitmessage.network.threads import StoppableThread
|
||||||
|
|
||||||
#: Equals 4 weeks. You could make this longer if you want
|
#: Equals 4 weeks. You could make this longer if you want
|
||||||
#: but making it shorter would not be advisable because
|
#: but making it shorter would not be advisable because
|
||||||
|
|
|
@ -35,26 +35,26 @@ try:
|
||||||
from inventory import Inventory
|
from inventory import Inventory
|
||||||
from network.threads import StoppableThread
|
from network.threads import StoppableThread
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from . import defaults
|
from pybitmessage import defaults
|
||||||
from . import helper_inbox
|
from pybitmessage import helper_inbox
|
||||||
from . import helper_msgcoding
|
from pybitmessage import helper_msgcoding
|
||||||
from . import helper_random
|
from pybitmessage import helper_random
|
||||||
from . import highlevelcrypto
|
from pybitmessage import highlevelcrypto
|
||||||
from . import l10n
|
from pybitmessage import l10n
|
||||||
from . import proofofwork
|
from pybitmessage import proofofwork
|
||||||
from . import protocol
|
from pybitmessage import protocol
|
||||||
from . import queues
|
from pybitmessage import queues
|
||||||
from . import shared
|
from pybitmessage import shared
|
||||||
from . import state
|
from pybitmessage import state
|
||||||
from . import tr
|
from pybitmessage import tr
|
||||||
from .addresses import (
|
from pybitmessage.addresses import (
|
||||||
calculateInventoryHash, decodeAddress, decodeVarint, encodeVarint
|
calculateInventoryHash, decodeAddress, decodeVarint, encodeVarint
|
||||||
)
|
)
|
||||||
|
|
||||||
from .bmconfigparser import BMConfigParser
|
from pybitmessage.bmconfigparser import BMConfigParser
|
||||||
from .helper_sql import sqlExecute, sqlQuery
|
from pybitmessage.helper_sql import sqlExecute, sqlQuery
|
||||||
from .inventory import Inventory
|
from pybitmessage.inventory import Inventory
|
||||||
from .network.threads import StoppableThread
|
from pybitmessage.network.threads import StoppableThread
|
||||||
# This thread, of which there is only one, does the heavy lifting:
|
# This thread, of which there is only one, does the heavy lifting:
|
||||||
# calculating POWs.
|
# calculating POWs.
|
||||||
|
|
||||||
|
|
|
@ -14,10 +14,10 @@ try:
|
||||||
from network.threads import StoppableThread
|
from network.threads import StoppableThread
|
||||||
|
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from . import queues
|
from pybitmessage import queues
|
||||||
from . import state
|
from pybitmessage import state
|
||||||
from .bmconfigparser import BMConfigParser
|
from pybitmessage.bmconfigparser import BMConfigParser
|
||||||
from .network.threads import StoppableThread
|
from pybitmessage.network.threads import StoppableThread
|
||||||
|
|
||||||
|
|
||||||
SMTPDOMAIN = "bmaddr.lan"
|
SMTPDOMAIN = "bmaddr.lan"
|
||||||
|
|
|
@ -21,13 +21,13 @@ try:
|
||||||
from network.threads import StoppableThread
|
from network.threads import StoppableThread
|
||||||
from version import softwareVersion
|
from version import softwareVersion
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from . import queues
|
from pybitmessage import queues
|
||||||
from .addresses import decodeAddress
|
from pybitmessage.addresses import decodeAddress
|
||||||
from .bmconfigparser import BMConfigParser
|
from pybitmessage.bmconfigparser import BMConfigParser
|
||||||
from .helper_ackPayload import genAckPayload
|
from pybitmessage.helper_ackPayload import genAckPayload
|
||||||
from .helper_sql import sqlExecute
|
from pybitmessage.helper_sql import sqlExecute
|
||||||
from .network.threads import StoppableThread
|
from pybitmessage.network.threads import StoppableThread
|
||||||
from .version import softwareVersion
|
from pybitmessage.version import softwareVersion
|
||||||
|
|
||||||
SMTPDOMAIN = "bmaddr.lan"
|
SMTPDOMAIN = "bmaddr.lan"
|
||||||
LISTENPORT = 8425
|
LISTENPORT = 8425
|
||||||
|
|
|
@ -18,14 +18,14 @@ try:
|
||||||
from bmconfigparser import BMConfigParser
|
from bmconfigparser import BMConfigParser
|
||||||
from debug import logger
|
from debug import logger
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from . import helper_sql
|
from pybitmessage import helper_sql
|
||||||
from . import helper_startup
|
from pybitmessage import helper_startup
|
||||||
from . import paths
|
from pybitmessage import paths
|
||||||
from . import queues
|
from pybitmessage import queues
|
||||||
from . import state
|
from pybitmessage import state
|
||||||
from . import tr
|
from pybitmessage import tr
|
||||||
from .bmconfigparser import BMConfigParser
|
from pybitmessage.bmconfigparser import BMConfigParser
|
||||||
from .debug import logger
|
from pybitmessage.debug import logger
|
||||||
# pylint: disable=attribute-defined-outside-init,protected-access
|
# pylint: disable=attribute-defined-outside-init,protected-access
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -44,8 +44,8 @@ try:
|
||||||
import helper_startup
|
import helper_startup
|
||||||
import state
|
import state
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from . import helper_startup, state
|
from pybitmessage import helper_startup, state
|
||||||
from . import state
|
from pybitmessage import state
|
||||||
|
|
||||||
helper_startup.loadConfig()
|
helper_startup.loadConfig()
|
||||||
# Now can be overriden from a config file, which uses standard python
|
# Now can be overriden from a config file, which uses standard python
|
||||||
|
|
|
@ -9,7 +9,7 @@ from importlib import import_module
|
||||||
try:
|
try:
|
||||||
import state
|
import state
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from . import state
|
from pybitmessage import state
|
||||||
|
|
||||||
# Only really old versions of Python don't have sys.hexversion. We don't
|
# Only really old versions of Python don't have sys.hexversion. We don't
|
||||||
# support them. The logging module was introduced in Python 2.3
|
# support them. The logging module was introduced in Python 2.3
|
||||||
|
@ -278,8 +278,10 @@ def check_openssl():
|
||||||
openssl_cflags = None
|
openssl_cflags = None
|
||||||
|
|
||||||
cflags_regex = re.compile(r'(?:OPENSSL_NO_)(AES|EC|ECDH|ECDSA)(?!\w)')
|
cflags_regex = re.compile(r'(?:OPENSSL_NO_)(AES|EC|ECDH|ECDSA)(?!\w)')
|
||||||
|
try:
|
||||||
import pyelliptic.openssl
|
from pyelliptic import openssl
|
||||||
|
except:
|
||||||
|
from pybitmessage.pyelliptic import openssl
|
||||||
|
|
||||||
for path in paths:
|
for path in paths:
|
||||||
logger.info('Checking OpenSSL at %s', path)
|
logger.info('Checking OpenSSL at %s', path)
|
||||||
|
@ -290,7 +292,7 @@ def check_openssl():
|
||||||
logger.info('OpenSSL Name: %s', library._name)
|
logger.info('OpenSSL Name: %s', library._name)
|
||||||
try:
|
try:
|
||||||
openssl_version, openssl_hexversion, openssl_cflags = \
|
openssl_version, openssl_hexversion, openssl_cflags = \
|
||||||
pyelliptic.openssl.get_version(library)
|
openssl.get_version(library)
|
||||||
except AttributeError: # sphinx chokes
|
except AttributeError: # sphinx chokes
|
||||||
return True
|
return True
|
||||||
if not openssl_version:
|
if not openssl_version:
|
||||||
|
|
|
@ -10,9 +10,9 @@ try:
|
||||||
import highlevelcrypto
|
import highlevelcrypto
|
||||||
from addresses import encodeVarint
|
from addresses import encodeVarint
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from . import helper_random
|
from pybitmessage import helper_random
|
||||||
from . import highlevelcrypto
|
from pybitmessage import highlevelcrypto
|
||||||
from .addresses import encodeVarint
|
from pybitmessage.addresses import encodeVarint
|
||||||
|
|
||||||
def genAckPayload(streamNumber=1, stealthLevel=0):
|
def genAckPayload(streamNumber=1, stealthLevel=0):
|
||||||
"""
|
"""
|
||||||
|
|
|
@ -7,8 +7,8 @@ try:
|
||||||
from debug import logger
|
from debug import logger
|
||||||
from pyelliptic import arithmetic
|
from pyelliptic import arithmetic
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from .debug import logger
|
from pybitmessage.debug import logger
|
||||||
from .pyelliptic import arithmetic
|
from pybitmessage.pyelliptic import arithmetic
|
||||||
|
|
||||||
|
|
||||||
def calculateBitcoinAddressFromPubkey(pubkey):
|
def calculateBitcoinAddressFromPubkey(pubkey):
|
||||||
|
|
|
@ -20,11 +20,11 @@ try:
|
||||||
import shutdown
|
import shutdown
|
||||||
from debug import logger
|
from debug import logger
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from . import shared
|
from pybitmessage import shared
|
||||||
from . import state
|
from pybitmessage import state
|
||||||
from . import queues
|
from pybitmessage import queues
|
||||||
from . import shutdown
|
from pybitmessage import shutdown
|
||||||
from .debug import logger
|
from pybitmessage.debug import logger
|
||||||
|
|
||||||
def powQueueSize():
|
def powQueueSize():
|
||||||
curWorkerQueue = queues.workerQueue.qsize()
|
curWorkerQueue = queues.workerQueue.qsize()
|
||||||
|
|
|
@ -4,8 +4,8 @@ try:
|
||||||
import queues
|
import queues
|
||||||
from helper_sql import sqlExecute, sqlQuery
|
from helper_sql import sqlExecute, sqlQuery
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from . import queues
|
from pybitmessage import queues
|
||||||
from .helper_sql import sqlExecute, sqlQuery
|
from pybitmessage.helper_sql import sqlExecute, sqlQuery
|
||||||
|
|
||||||
def insert(t):
|
def insert(t):
|
||||||
"""Perform an insert into the "inbox" table"""
|
"""Perform an insert into the "inbox" table"""
|
||||||
|
|
|
@ -11,10 +11,10 @@ try:
|
||||||
from tr import _translate
|
from tr import _translate
|
||||||
|
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from . import messagetypes
|
from pybitmessage import messagetypes
|
||||||
from .bmconfigparser import BMConfigParser
|
from pybitmessage.bmconfigparser import BMConfigParser
|
||||||
from .debug import logger
|
from pybitmessage.debug import logger
|
||||||
from .tr import _translate
|
from pybitmessage.tr import _translate
|
||||||
|
|
||||||
try:
|
try:
|
||||||
import msgpack
|
import msgpack
|
||||||
|
|
|
@ -8,7 +8,7 @@ import random
|
||||||
try:
|
try:
|
||||||
from pyelliptic.openssl import OpenSSL
|
from pyelliptic.openssl import OpenSSL
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from .pyelliptic.openssl import OpenSSL
|
from pybitmessage.pyelliptic.openssl import OpenSSL
|
||||||
|
|
||||||
NoneType = type(None)
|
NoneType = type(None)
|
||||||
|
|
||||||
|
|
|
@ -4,7 +4,7 @@ Insert values into sent table
|
||||||
try:
|
try:
|
||||||
from helper_sql import sqlExecute
|
from helper_sql import sqlExecute
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from .helper_sql import sqlExecute
|
from pybitmessage.helper_sql import sqlExecute
|
||||||
|
|
||||||
def insert(t):
|
def insert(t):
|
||||||
"""Perform an insert into the `sent` table"""
|
"""Perform an insert into the `sent` table"""
|
||||||
|
|
|
@ -16,11 +16,11 @@ try:
|
||||||
import state
|
import state
|
||||||
from bmconfigparser import BMConfigParser
|
from bmconfigparser import BMConfigParser
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from . import defaults
|
from pybitmessage import defaults
|
||||||
from . import helper_random ,paths, state
|
from pybitmessage import helper_random ,paths, state
|
||||||
from .bmconfigparser import BMConfigParser
|
from pybitmessage.bmconfigparser import BMConfigParser
|
||||||
try:
|
try:
|
||||||
from .plugins.plugin import get_plugin
|
from pybitmessage.plugins.plugin import get_plugin
|
||||||
except ImportError:
|
except ImportError:
|
||||||
get_plugin = None
|
get_plugin = None
|
||||||
|
|
||||||
|
|
|
@ -14,10 +14,10 @@ try:
|
||||||
from pyelliptic import OpenSSL
|
from pyelliptic import OpenSSL
|
||||||
from pyelliptic import arithmetic as a
|
from pyelliptic import arithmetic as a
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from . import pyelliptic
|
from pybitmessage import pyelliptic
|
||||||
from .bmconfigparser import BMConfigParser
|
from pybitmessage.bmconfigparser import BMConfigParser
|
||||||
from .pyelliptic import OpenSSL
|
from pybitmessage.pyelliptic import OpenSSL
|
||||||
from .pyelliptic import arithmetic as a
|
from pybitmessage.pyelliptic import arithmetic as a
|
||||||
|
|
||||||
|
|
||||||
def makeCryptor(privkey):
|
def makeCryptor(privkey):
|
||||||
|
|
|
@ -8,7 +8,7 @@ import time
|
||||||
try:
|
try:
|
||||||
from bmconfigparser import BMConfigParser
|
from bmconfigparser import BMConfigParser
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from .bmconfigparser import BMConfigParser
|
from pybitmessage.bmconfigparser import BMConfigParser
|
||||||
|
|
||||||
logger = logging.getLogger('default')
|
logger = logging.getLogger('default')
|
||||||
|
|
||||||
|
|
|
@ -3,8 +3,8 @@ try:
|
||||||
import state
|
import state
|
||||||
from bitmessagemain import main
|
from bitmessagemain import main
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from . import state
|
from pybitmessage import state
|
||||||
from .bitmessagemain import main
|
from pybitmessage.bitmessagemain import main
|
||||||
# import state
|
# import state
|
||||||
|
|
||||||
|
|
||||||
|
@ -14,5 +14,5 @@ if __name__ == '__main__':
|
||||||
try:
|
try:
|
||||||
from bitmessagemain import main
|
from bitmessagemain import main
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from .bitmessagemain import main
|
from pybitmessage.bitmessagemain import main
|
||||||
main()
|
main()
|
||||||
|
|
|
@ -60,7 +60,7 @@ else:
|
||||||
import_module(".{}".format(splitted[0]), "messagetypes")
|
import_module(".{}".format(splitted[0]), "messagetypes")
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
try:
|
try:
|
||||||
from . import chatmsg
|
from pybitmessage.messagetypes import chatmsg
|
||||||
except ImportError:
|
except ImportError:
|
||||||
logger.error("Error importing %s", mod, exc_info=True)
|
logger.error("Error importing %s", mod, exc_info=True)
|
||||||
else:
|
else:
|
||||||
|
|
|
@ -9,7 +9,7 @@ from collections import deque
|
||||||
try:
|
try:
|
||||||
import helper_random
|
import helper_random
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from . import helper_random
|
from pybitmessage import helper_random
|
||||||
|
|
||||||
class MultiQueue(Queue.Queue):
|
class MultiQueue(Queue.Queue):
|
||||||
"""A base queue class"""
|
"""A base queue class"""
|
||||||
|
|
|
@ -17,11 +17,11 @@ try:
|
||||||
from bmconfigparser import BMConfigParser
|
from bmconfigparser import BMConfigParser
|
||||||
from debug import logger
|
from debug import logger
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from . import defaults
|
from pybitmessage import defaults
|
||||||
from . import tr # translate
|
from pybitmessage import tr # translate
|
||||||
from .addresses import decodeAddress
|
from pybitmessage.addresses import decodeAddress
|
||||||
from .bmconfigparser import BMConfigParser
|
from pybitmessage.bmconfigparser import BMConfigParser
|
||||||
from .debug import logger
|
from pybitmessage.debug import logger
|
||||||
|
|
||||||
|
|
||||||
configSection = "bitmessagesettings"
|
configSection = "bitmessagesettings"
|
||||||
|
|
|
@ -10,7 +10,7 @@ try:
|
||||||
from network.threads import StoppableThread
|
from network.threads import StoppableThread
|
||||||
from network.uploadthread import UploadThread
|
from network.uploadthread import UploadThread
|
||||||
|
|
||||||
except ModuleNotFoundError:
|
except (ModuleNotFoundError,ImportError):
|
||||||
from pybitmessage.network.addrthread import AddrThread
|
from pybitmessage.network.addrthread import AddrThread
|
||||||
from pybitmessage.network.announcethread import AnnounceThread
|
from pybitmessage.network.announcethread import AnnounceThread
|
||||||
from pybitmessage.network.connectionpool import BMConnectionPool
|
from pybitmessage.network.connectionpool import BMConnectionPool
|
||||||
|
|
|
@ -33,7 +33,7 @@ try:
|
||||||
from network.node import Node, Peer
|
from network.node import Node, Peer
|
||||||
from network.randomtrackingdict import RandomTrackingDict
|
from network.randomtrackingdict import RandomTrackingDict
|
||||||
from queues import objectProcessorQueue, portCheckerQueue, invQueue
|
from queues import objectProcessorQueue, portCheckerQueue, invQueue
|
||||||
except ModuleNotFoundError:
|
except (ModuleNotFoundError,ImportError):
|
||||||
from pybitmessage import addresses
|
from pybitmessage import addresses
|
||||||
from pybitmessage.network import connectionpool
|
from pybitmessage.network import connectionpool
|
||||||
from pybitmessage import knownnodes
|
from pybitmessage import knownnodes
|
||||||
|
|
|
@ -21,7 +21,8 @@ try:
|
||||||
TCPServer, Socks5BMConnection, Socks4aBMConnection, TCPConnection, bootstrap)
|
TCPServer, Socks5BMConnection, Socks4aBMConnection, TCPConnection, bootstrap)
|
||||||
from network.udp import UDPSocket
|
from network.udp import UDPSocket
|
||||||
from singleton import Singleton
|
from singleton import Singleton
|
||||||
except ModuleNotFoundError:
|
from network.node import Peer
|
||||||
|
except (ModuleNotFoundError,ImportError):
|
||||||
from pybitmessage.network import asyncore_pollchoose as asyncore
|
from pybitmessage.network import asyncore_pollchoose as asyncore
|
||||||
from pybitmessage import helper_random
|
from pybitmessage import helper_random
|
||||||
from pybitmessage import knownnodes
|
from pybitmessage import knownnodes
|
||||||
|
@ -35,8 +36,7 @@ except ModuleNotFoundError:
|
||||||
TCPServer, Socks5BMConnection, Socks4aBMConnection, TCPConnection, bootstrap)
|
TCPServer, Socks5BMConnection, Socks4aBMConnection, TCPConnection, bootstrap)
|
||||||
from pybitmessage.network.udp import UDPSocket
|
from pybitmessage.network.udp import UDPSocket
|
||||||
from pybitmessage.singleton import Singleton
|
from pybitmessage.singleton import Singleton
|
||||||
|
from pybitmessage.network.node import Peer
|
||||||
from .node import Peer
|
|
||||||
|
|
||||||
logger = logging.getLogger('default')
|
logger = logging.getLogger('default')
|
||||||
|
|
||||||
|
@ -187,6 +187,7 @@ class BMConnectionPool(object):
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def getListeningIP():
|
def getListeningIP():
|
||||||
"""What IP are we supposed to be listening on?"""
|
"""What IP are we supposed to be listening on?"""
|
||||||
|
#its need to this fix
|
||||||
if BMConfigParser().safeGet(
|
if BMConfigParser().safeGet(
|
||||||
"bitmessagesettings", "onionhostname").endswith(".onion"):
|
"bitmessagesettings", "onionhostname").endswith(".onion"):
|
||||||
host = BMConfigParser().safeGet(
|
host = BMConfigParser().safeGet(
|
||||||
|
|
|
@ -8,11 +8,11 @@ try:
|
||||||
from socks5 import Socks5Connection, Socks5Resolver
|
from socks5 import Socks5Connection, Socks5Resolver
|
||||||
from socks4a import Socks4aConnection, Socks4aResolver
|
from socks4a import Socks4aConnection, Socks4aResolver
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from .advanceddispatcher import AdvancedDispatcher
|
from pybitmessage.network.advanceddispatcher import AdvancedDispatcher
|
||||||
from . import asyncore_pollchoose as asyncore
|
import pybitmessage.network.asyncore_pollchoose as asyncore
|
||||||
from .proxy import ProxyError
|
from pybitmessage.network.proxy import ProxyError
|
||||||
from .socks5 import Socks5Connection, Socks5Resolver
|
from pybitmessage.network.socks5 import Socks5Connection, Socks5Resolver
|
||||||
from .socks4a import Socks4aConnection, Socks4aResolver
|
from pybitmessage.network.socks4a import Socks4aConnection, Socks4aResolver
|
||||||
|
|
||||||
class HttpError(ProxyError):
|
class HttpError(ProxyError):
|
||||||
pass
|
pass
|
||||||
|
|
|
@ -7,7 +7,7 @@ try:
|
||||||
from network.connectionpool import connectionpool
|
from network.connectionpool import connectionpool
|
||||||
from network.dandelion import Dandelion
|
from network.dandelion import Dandelion
|
||||||
from network.randomtrackingdict import RandomTrackingDict
|
from network.randomtrackingdict import RandomTrackingDict
|
||||||
except:
|
except (ModuleNotFoundError,ImportError):
|
||||||
from pybitmessage.network import connectionpool
|
from pybitmessage.network import connectionpool
|
||||||
from pybitmessage.network.dandelion import Dandelion
|
from pybitmessage.network.dandelion import Dandelion
|
||||||
from pybitmessage.network.randomtrackingdict import RandomTrackingDict
|
from pybitmessage.network.randomtrackingdict import RandomTrackingDict
|
||||||
|
|
|
@ -8,9 +8,9 @@ try:
|
||||||
from network.connectionpool import BMConnectionPool
|
from network.connectionpool import BMConnectionPool
|
||||||
from network.objectracker import missingObjects
|
from network.objectracker import missingObjects
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from . import asyncore_pollchoose as asyncore
|
from pybitmessage.network import asyncore_pollchoose as asyncore
|
||||||
from .connectionpool import BMConnectionPool
|
from pybitmessage.network.connectionpool import BMConnectionPool
|
||||||
from .objectracker import missingObjects
|
from pybitmessage.network.objectracker import missingObjects
|
||||||
|
|
||||||
lastReceivedTimestamp = time.time()
|
lastReceivedTimestamp = time.time()
|
||||||
lastReceivedBytes = 0
|
lastReceivedBytes = 0
|
||||||
|
|
|
@ -29,9 +29,9 @@ try:
|
||||||
from network.socks4a import Socks4aConnection
|
from network.socks4a import Socks4aConnection
|
||||||
from network.socks5 import Socks5Connection
|
from network.socks5 import Socks5Connection
|
||||||
from network.tls import TLSDispatcher
|
from network.tls import TLSDispatcher
|
||||||
from .node import Peer
|
from network.node import Peer
|
||||||
from queues import UISignalQueue, invQueue, receiveDataQueue
|
from queues import UISignalQueue, invQueue, receiveDataQueue
|
||||||
except ModuleNotFoundError:
|
except (ModuleNotFoundError,ImportError):
|
||||||
from pybitmessage import addresses
|
from pybitmessage import addresses
|
||||||
from pybitmessage import helper_random
|
from pybitmessage import helper_random
|
||||||
from pybitmessage import knownnodes
|
from pybitmessage import knownnodes
|
||||||
|
|
|
@ -13,7 +13,7 @@ try:
|
||||||
import state
|
import state
|
||||||
from queues import receiveDataQueue
|
from queues import receiveDataQueue
|
||||||
|
|
||||||
except ModuleNotFoundError:
|
except (ModuleNotFoundError,ImportError):
|
||||||
from pybitmessage import protocol
|
from pybitmessage import protocol
|
||||||
from pybitmessage import state
|
from pybitmessage import state
|
||||||
from pybitmessage.network.bmproto import BMProto
|
from pybitmessage.network.bmproto import BMProto
|
||||||
|
|
|
@ -11,10 +11,10 @@ try:
|
||||||
from debug import logger
|
from debug import logger
|
||||||
from state import shutdown
|
from state import shutdown
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from . import paths
|
from pybitmessage import paths
|
||||||
from .bmconfigparser import BMConfigParser
|
from pybitmessage.bmconfigparser import BMConfigParser
|
||||||
from .debug import logger
|
from pybitmessage.debug import logger
|
||||||
from .state import shutdown
|
from pybitmessage.state import shutdown
|
||||||
|
|
||||||
libAvailable = True
|
libAvailable = True
|
||||||
ctx = False
|
ctx = False
|
||||||
|
|
|
@ -22,13 +22,13 @@ try:
|
||||||
|
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
try:
|
try:
|
||||||
from . import openclpow
|
from pybitmessage import openclpow
|
||||||
from . import paths
|
from pybitmessage import paths
|
||||||
from . import queues
|
from pybitmessage import queues
|
||||||
from . import state
|
from pybitmessage import state
|
||||||
from . import tr
|
from pybitmessage import tr
|
||||||
from .bmconfigparser import BMConfigParser
|
from pybitmessage.bmconfigparser import BMConfigParser
|
||||||
from .debug import logger
|
from pybitmessage.debug import logger
|
||||||
except ImportError:
|
except ImportError:
|
||||||
import openclpow
|
import openclpow
|
||||||
try:
|
try:
|
||||||
|
|
|
@ -25,16 +25,16 @@ try:
|
||||||
from helper_sql import sqlExecute
|
from helper_sql import sqlExecute
|
||||||
from version import softwareVersion
|
from version import softwareVersion
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from . import defaults
|
from pybitmessage import defaults
|
||||||
from . import highlevelcrypto
|
from pybitmessage import highlevelcrypto
|
||||||
from . import state
|
from pybitmessage import state
|
||||||
from .addresses import (
|
from pybitmessage.addresses import (
|
||||||
encodeVarint, decodeVarint, decodeAddress, varintDecodeError)
|
encodeVarint, decodeVarint, decodeAddress, varintDecodeError)
|
||||||
from .bmconfigparser import BMConfigParser
|
from pybitmessage.bmconfigparser import BMConfigParser
|
||||||
from .debug import logger
|
from pybitmessage.debug import logger
|
||||||
from .fallback import RIPEMD160Hash
|
from pybitmessage.fallback import RIPEMD160Hash
|
||||||
from .helper_sql import sqlExecute
|
from pybitmessage.helper_sql import sqlExecute
|
||||||
from .version import softwareVersion
|
from pybitmessage.version import softwareVersion
|
||||||
|
|
||||||
# Service flags
|
# Service flags
|
||||||
#: This is a normal network node
|
#: This is a normal network node
|
||||||
|
|
|
@ -8,13 +8,21 @@ For modern cryptography with ECC, AES, HMAC, Blowfish, ...
|
||||||
|
|
||||||
This is an abandoned package maintained inside of the PyBitmessage.
|
This is an abandoned package maintained inside of the PyBitmessage.
|
||||||
"""
|
"""
|
||||||
|
try:
|
||||||
|
from pyelliptic.cipher import Cipher
|
||||||
|
from pyelliptic.ecc import ECC
|
||||||
|
from pyelliptic.eccblind import ECCBlind
|
||||||
|
from pyelliptic.eccblindchain import ECCBlindChain
|
||||||
|
from pyelliptic.hash import hmac_sha256, hmac_sha512, pbkdf2
|
||||||
|
from pyelliptic.openssl import OpenSSL
|
||||||
|
except:
|
||||||
|
from pybitmessage.pyelliptic.cipher import Cipher
|
||||||
|
from pybitmessage.pyelliptic.ecc import ECC
|
||||||
|
from pybitmessage.pyelliptic.eccblind import ECCBlind
|
||||||
|
from pybitmessage.pyelliptic.eccblindchain import ECCBlindChain
|
||||||
|
from pybitmessage.pyelliptic.hash import hmac_sha256, hmac_sha512, pbkdf2
|
||||||
|
from pybitmessage.pyelliptic.openssl import OpenSSL
|
||||||
|
|
||||||
from .cipher import Cipher
|
|
||||||
from .ecc import ECC
|
|
||||||
from .eccblind import ECCBlind
|
|
||||||
from .eccblindchain import ECCBlindChain
|
|
||||||
from .hash import hmac_sha256, hmac_sha512, pbkdf2
|
|
||||||
from .openssl import OpenSSL
|
|
||||||
|
|
||||||
__version__ = '1.3'
|
__version__ = '1.3'
|
||||||
|
|
||||||
|
|
|
@ -5,8 +5,10 @@ Symmetric Encryption
|
||||||
"""
|
"""
|
||||||
# Copyright (C) 2011 Yann GUIBET <yannguibet@gmail.com>
|
# Copyright (C) 2011 Yann GUIBET <yannguibet@gmail.com>
|
||||||
# See LICENSE for details.
|
# See LICENSE for details.
|
||||||
|
try:
|
||||||
from .openssl import OpenSSL
|
from pyelliptic.openssl import OpenSSL
|
||||||
|
except:
|
||||||
|
from pybitmessage.pyelliptic.openssl import OpenSSL
|
||||||
|
|
||||||
|
|
||||||
# pylint: disable=redefined-builtin
|
# pylint: disable=redefined-builtin
|
||||||
|
|
|
@ -14,7 +14,10 @@ import time
|
||||||
from hashlib import sha256
|
from hashlib import sha256
|
||||||
from struct import pack, unpack
|
from struct import pack, unpack
|
||||||
|
|
||||||
from .openssl import OpenSSL
|
try:
|
||||||
|
from pyelliptic.openssl import OpenSSL
|
||||||
|
except:
|
||||||
|
from pybitmessage.pyelliptic.openssl import OpenSSL
|
||||||
|
|
||||||
# first byte in serialisation can contain data
|
# first byte in serialisation can contain data
|
||||||
Y_BIT = 0x01
|
Y_BIT = 0x01
|
||||||
|
|
|
@ -4,7 +4,10 @@ Wrappers for hash functions from OpenSSL.
|
||||||
# Copyright (C) 2011 Yann GUIBET <yannguibet@gmail.com>
|
# Copyright (C) 2011 Yann GUIBET <yannguibet@gmail.com>
|
||||||
# See LICENSE for details.
|
# See LICENSE for details.
|
||||||
|
|
||||||
from .openssl import OpenSSL
|
try:
|
||||||
|
from pyelliptic.openssl import OpenSSL
|
||||||
|
except:
|
||||||
|
from pybitmessage.pyelliptic.openssl import OpenSSL
|
||||||
|
|
||||||
|
|
||||||
# For python3
|
# For python3
|
||||||
|
|
|
@ -7,7 +7,7 @@ import time
|
||||||
try:
|
try:
|
||||||
from multiqueue import MultiQueue
|
from multiqueue import MultiQueue
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from .multiqueue import MultiQueue
|
from pybitmessage.multiqueue import MultiQueue
|
||||||
|
|
||||||
class ObjectProcessorQueue(Queue.Queue):
|
class ObjectProcessorQueue(Queue.Queue):
|
||||||
"""Special queue class using lock for `.threads.objectProcessor`"""
|
"""Special queue class using lock for `.threads.objectProcessor`"""
|
||||||
|
|
|
@ -31,14 +31,14 @@ try:
|
||||||
from helper_sql import sqlQuery
|
from helper_sql import sqlQuery
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
try:
|
try:
|
||||||
from . import state
|
from pybitmessage import state
|
||||||
from .bmconfigparser import BMConfigParser
|
from pybitmessage.bmconfigparser import BMConfigParser
|
||||||
from .addresses import decodeAddress, encodeVarint
|
from pybitmessage.addresses import decodeAddress, encodeVarint
|
||||||
from .debug import logger
|
from pybitmessage.debug import logger
|
||||||
from . import highlevelcrypto
|
from pybitmessage import highlevelcrypto
|
||||||
from .helper_sql import sqlQuery
|
from pybitmessage.helper_sql import sqlQuery
|
||||||
platform = ''
|
platform = ''
|
||||||
from .pyelliptic import arithmetic
|
from pybitmessage.pyelliptic import arithmetic
|
||||||
except ImportError:
|
except ImportError:
|
||||||
import state
|
import state
|
||||||
from bmconfigparser import BMConfigParser
|
from bmconfigparser import BMConfigParser
|
||||||
|
|
|
@ -10,7 +10,7 @@ import sys
|
||||||
try:
|
try:
|
||||||
import state
|
import state
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from . import state
|
from pybitmessage import state
|
||||||
try:
|
try:
|
||||||
import fcntl # @UnresolvedImport
|
import fcntl # @UnresolvedImport
|
||||||
except ImportError:
|
except ImportError:
|
||||||
|
|
|
@ -13,6 +13,10 @@ from .tests_compatibility import utils
|
||||||
class TestAPIProto(TestProcessProto):
|
class TestAPIProto(TestProcessProto):
|
||||||
"""Test case logic for testing API"""
|
"""Test case logic for testing API"""
|
||||||
_process_cmd = ['pybitmessage', '-t']
|
_process_cmd = ['pybitmessage', '-t']
|
||||||
|
# _files = (
|
||||||
|
# 'keys.dat', 'messages.dat', 'knownnodes.dat',
|
||||||
|
# '.api_started', 'unittest.lock'
|
||||||
|
# )
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def setUpClass(cls):
|
def setUpClass(cls):
|
||||||
|
@ -21,7 +25,12 @@ class TestAPIProto(TestProcessProto):
|
||||||
print('@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@')
|
print('@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@')
|
||||||
|
|
||||||
"""Setup XMLRPC proxy for pybitmessage API"""
|
"""Setup XMLRPC proxy for pybitmessage API"""
|
||||||
|
# super(TestAPIProto, cls).tearDownClass()
|
||||||
|
try:
|
||||||
super(TestAPIProto, cls).setUpClass()
|
super(TestAPIProto, cls).setUpClass()
|
||||||
|
except:
|
||||||
|
pass
|
||||||
|
|
||||||
cls.addresses = []
|
cls.addresses = []
|
||||||
cls.api = xmlrpclib.ServerProxy(
|
cls.api = xmlrpclib.ServerProxy(
|
||||||
"http://username:password@127.0.0.1:8442/")
|
"http://username:password@127.0.0.1:8442/")
|
||||||
|
@ -30,7 +39,6 @@ class TestAPIProto(TestProcessProto):
|
||||||
return
|
return
|
||||||
time.sleep(1)
|
time.sleep(1)
|
||||||
|
|
||||||
|
|
||||||
class TestAPIShutdown(TestAPIProto, TestProcessShutdown):
|
class TestAPIShutdown(TestAPIProto, TestProcessShutdown):
|
||||||
"""Separate test case for API command 'shutdown'"""
|
"""Separate test case for API command 'shutdown'"""
|
||||||
def test_shutdown(self):
|
def test_shutdown(self):
|
||||||
|
|
|
@ -30,13 +30,9 @@ class TestProcessProto(unittest.TestCase):
|
||||||
"""
|
"""
|
||||||
_process_cmd = ['pybitmessage', '-d']
|
_process_cmd = ['pybitmessage', '-d']
|
||||||
_threads_count = 15
|
_threads_count = 15
|
||||||
'''
|
|
||||||
debug.log is removed because debug.log are pending to implement on the
|
|
||||||
python3
|
|
||||||
'''
|
|
||||||
_files = (
|
_files = (
|
||||||
'keys.dat', 'messages.dat', 'knownnodes.dat',
|
'keys.dat', 'debug.log', 'messages.dat', 'knownnodes.dat',
|
||||||
'.api_started', 'unittest.lock'
|
'.api_started', 'unittest.lock','singleton.lock'
|
||||||
)
|
)
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
|
@ -55,7 +51,7 @@ class TestProcessProto(unittest.TestCase):
|
||||||
pfile = os.path.join(cls.home, pfile)
|
pfile = os.path.join(cls.home, pfile)
|
||||||
try:
|
try:
|
||||||
return open(pfile, 'rb').readline().strip()
|
return open(pfile, 'rb').readline().strip()
|
||||||
except (OSError, IOError):
|
except (OSError, IOError, FileNotFoundError):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
|
@ -78,11 +74,14 @@ class TestProcessProto(unittest.TestCase):
|
||||||
@classmethod
|
@classmethod
|
||||||
def tearDownClass(cls):
|
def tearDownClass(cls):
|
||||||
"""Ensures that pybitmessage stopped and removes files"""
|
"""Ensures that pybitmessage stopped and removes files"""
|
||||||
|
print('######################################')
|
||||||
|
print('is this are even called tearDownClass')
|
||||||
|
print('######################################')
|
||||||
try:
|
try:
|
||||||
if not cls._stop_process():
|
if not cls._stop_process():
|
||||||
print(open(os.path.join(cls.home, 'debug.log'), 'rb').read())
|
print(open(os.path.join(cls.home, 'debug.log'), 'rb').read())
|
||||||
cls.process.kill()
|
cls.process.kill()
|
||||||
except psutil.NoSuchProcess:
|
except (psutil.NoSuchProcess, FileNotFoundError, AttributeError) as e:
|
||||||
pass
|
pass
|
||||||
finally:
|
finally:
|
||||||
cls._cleanup_files()
|
cls._cleanup_files()
|
||||||
|
@ -128,7 +127,7 @@ class TestProcess(TestProcessProto):
|
||||||
"""A test case for pybitmessage process"""
|
"""A test case for pybitmessage process"""
|
||||||
def test_process_name(self):
|
def test_process_name(self):
|
||||||
"""Check PyBitmessage process name"""
|
"""Check PyBitmessage process name"""
|
||||||
self.assertEqual(self.process.name(), 'PyBitmessage')
|
self.assertEqual(self.process.name(), 'pybitmessage')
|
||||||
|
|
||||||
def test_files(self):
|
def test_files(self):
|
||||||
"""Check existence of PyBitmessage files"""
|
"""Check existence of PyBitmessage files"""
|
||||||
|
|
|
@ -23,11 +23,11 @@ try:
|
||||||
from class_singleWorker import singleWorker
|
from class_singleWorker import singleWorker
|
||||||
from class_sqlThread import sqlThread
|
from class_sqlThread import sqlThread
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from .class_addressGenerator import addressGenerator
|
from pybitmessage.class_addressGenerator import addressGenerator
|
||||||
from .class_objectProcessor import objectProcessor
|
from pybitmessage.class_objectProcessor import objectProcessor
|
||||||
from .class_singleCleaner import singleCleaner
|
from pybitmessage.class_singleCleaner import singleCleaner
|
||||||
from .class_singleWorker import singleWorker
|
from pybitmessage.class_singleWorker import singleWorker
|
||||||
from .class_sqlThread import sqlThread
|
from pybitmessage.class_sqlThread import sqlThread
|
||||||
try:
|
try:
|
||||||
import prctl
|
import prctl
|
||||||
except ImportError:
|
except ImportError:
|
||||||
|
|
|
@ -5,7 +5,7 @@ import os
|
||||||
try:
|
try:
|
||||||
import state
|
import state
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from . import state
|
from pybitmessage import state
|
||||||
class translateClass(object):
|
class translateClass(object):
|
||||||
"""
|
"""
|
||||||
This is used so that the translateText function can be used
|
This is used so that the translateText function can be used
|
||||||
|
|
18
src/upnp.py
18
src/upnp.py
|
@ -23,15 +23,15 @@ try:
|
||||||
from network.node import Peer
|
from network.node import Peer
|
||||||
from network.threads import StoppableThread
|
from network.threads import StoppableThread
|
||||||
except ModuleNotFoundError:
|
except ModuleNotFoundError:
|
||||||
from . import knownnodes
|
from pybitmessage import knownnodes
|
||||||
from . import queues
|
from pybitmessage import queues
|
||||||
from . import state
|
from pybitmessage import state
|
||||||
from . import tr
|
from pybitmessage import tr
|
||||||
from .bmconfigparser import BMConfigParser
|
from pybitmessage.bmconfigparser import BMConfigParser
|
||||||
from .debug import logger
|
from pybitmessage.debug import logger
|
||||||
from .network.connectionpool import BMConnectionPool
|
from pybitmessage.network.connectionpool import BMConnectionPool
|
||||||
from .network.node import Peer
|
from pybitmessage.network.node import Peer
|
||||||
from .network.threads import StoppableThread
|
from pybitmessage.network.threads import StoppableThread
|
||||||
|
|
||||||
|
|
||||||
def createRequestXML(service, action, arguments=None):
|
def createRequestXML(service, action, arguments=None):
|
||||||
|
|
Reference in New Issue
Block a user