diff --git a/onionr/core.py b/onionr/core.py index a85fda09..82c8488e 100644 --- a/onionr/core.py +++ b/onionr/core.py @@ -390,7 +390,7 @@ class Core: events.event('queue_pop', data = {'data': retData}, onionr = None) return retData - + def makeDaemonDB(self): '''generate the daemon queue db''' conn = sqlite3.connect(self.queueDB) @@ -669,16 +669,18 @@ class Core: conn.close() return True - def insertBlock(self, data, header='txt', sign=False, encryptType='', symKey='', asymPeer='', meta = {}): + def insertBlock(self, data, header='txt', sign=False, encryptType='', symKey='', asymPeer='', meta = None): ''' Inserts a block into the network encryptType must be specified to encrypt a block ''' - try: - data.decode() - except AttributeError: - data = data.encode() + if meta is None: + meta = dict() + + if type(data) is bytes: + data = data.decode() + data = str(data) retData = '' signature = '' @@ -686,10 +688,9 @@ class Core: metadata = {} # only use header if not set in provided meta - try: - meta['type'] - except KeyError: - meta['type'] = header # block type + if not header is None: + meta['type'] = header + meta['type'] = str(meta['type']) jsonMeta = json.dumps(meta) @@ -709,7 +710,7 @@ class Core: if len(jsonMeta) > 1000: raise onionrexceptions.InvalidMetadata('meta in json encoded form must not exceed 1000 bytes') - + # encrypt block metadata/sig/content if encryptType == 'sym': if len(symKey) < self.requirements.passwordLength: @@ -736,7 +737,7 @@ class Core: powToken = powToken.decode() except AttributeError: pass - + # compile metadata metadata['meta'] = jsonMeta metadata['sig'] = signature diff --git a/onionr/onionrblockapi.py b/onionr/onionrblockapi.py index 90a32b9a..ba0c0408 100644 --- a/onionr/onionrblockapi.py +++ b/onionr/onionrblockapi.py @@ -496,7 +496,6 @@ class Block: - child (str/Block): the child Block to be followed - file (str/file): the file to write the content to, instead of returning it - maximumFollows (int): the maximum number of Blocks to follow - ''' # validate data and instantiate Core