Various fixes #771

Merged
Atheros1 merged 3 commits from master into master 2015-01-28 21:07:41 +01:00
4 changed files with 10 additions and 2 deletions

View File

@ -479,7 +479,7 @@ class receiveDataThread(threading.Thread):
payload, = row payload, = row
self.sendObject(payload) self.sendObject(payload)
else: else:
logger.warning('%s asked for an object with a getdata which is not in either our memory inventory or our SQL inventory. We probably cleaned it out after advertising it but before they got around to asking for it.' % self.peer) logger.warning('%s asked for an object with a getdata which is not in either our memory inventory or our SQL inventory. We probably cleaned it out after advertising it but before they got around to asking for it.' % (self.peer,))
# Our peer has requested (in a getdata message) that we send an object. # Our peer has requested (in a getdata message) that we send an object.
def sendObject(self, payload): def sendObject(self, payload):

View File

@ -1,3 +1,5 @@
from __future__ import division
import threading import threading
import shared import shared
import time import time

View File

@ -71,6 +71,7 @@ def _doFastPoW(target, initialHash):
time.sleep(0.2) time.sleep(0.2)
def run(target, initialHash): def run(target, initialHash):
target = int(target)
if frozen == "macosx_app" or not frozen: if frozen == "macosx_app" or not frozen:
return _doFastPoW(target, initialHash) return _doFastPoW(target, initialHash)
else: else:

View File

@ -1,3 +1,5 @@
from __future__ import division
softwareVersion = '0.4.4' softwareVersion = '0.4.4'
verbose = 1 verbose = 1
maximumAgeOfAnObjectThatIAmWillingToAccept = 216000 # This is obsolete with the change to protocol v3 but the singleCleaner thread still hasn't been updated so we need this a little longer. maximumAgeOfAnObjectThatIAmWillingToAccept = 216000 # This is obsolete with the change to protocol v3 but the singleCleaner thread still hasn't been updated so we need this a little longer.
@ -589,7 +591,7 @@ def checkAndShareObjectWithPeers(data):
""" """
if len(data) > 2 ** 18: if len(data) > 2 ** 18:
logger.info('The payload length of this object is too large (%s bytes). Ignoring it.' % len(data)) logger.info('The payload length of this object is too large (%s bytes). Ignoring it.' % len(data))
return return 0
# Let us check to make sure that the proof of work is sufficient. # Let us check to make sure that the proof of work is sufficient.
if not isProofOfWorkSufficient(data): if not isProofOfWorkSufficient(data):
logger.info('Proof of work is insufficient.') logger.info('Proof of work is insufficient.')
@ -661,6 +663,9 @@ def _checkAndShareUndefinedObjectWithPeers(data):
def _checkAndShareMsgWithPeers(data): def _checkAndShareMsgWithPeers(data):
embeddedTime, = unpack('>Q', data[8:16]) embeddedTime, = unpack('>Q', data[8:16])
readPosition = 20 # bypass nonce, time, and object type readPosition = 20 # bypass nonce, time, and object type
objectVersion, objectVersionLength = decodeVarint(
data[readPosition:readPosition + 9])
readPosition += objectVersionLength
streamNumber, streamNumberLength = decodeVarint( streamNumber, streamNumberLength = decodeVarint(
data[readPosition:readPosition + 9]) data[readPosition:readPosition + 9])
if not streamNumber in streamsInWhichIAmParticipating: if not streamNumber in streamsInWhichIAmParticipating: