From de260cfa96aa69d5c715a84acd28a23a25a2fa91 Mon Sep 17 00:00:00 2001 From: TheKysek Date: Thu, 25 May 2017 11:47:44 +0200 Subject: [PATCH] Log why an object has been rejected --- src/structure.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/structure.py b/src/structure.py index 24bb6a9..b5c4e05 100644 --- a/src/structure.py +++ b/src/structure.py @@ -1,6 +1,7 @@ # -*- coding: utf-8 -*- import base64 import hashlib +import logging import struct import socket import time @@ -81,10 +82,13 @@ class Object(object): def is_valid(self): if self.is_expired(): + logging.warning('Rejecting object {}, reason: is_expired'.format(self.vector)) return False if len(self.object_payload) > 2**18: + logging.warning('Rejecting object {}, reason: len(payload) > 2**18'.format(self.vector)) return False if self.stream_number != 1: + logging.warning('Rejecting object {}, reason: not in stream 1'.format(self.vector)) return False data = self.to_bytes()[8:] length = len(data) + 8 + shared.payload_length_extra_bytes @@ -93,7 +97,7 @@ class Object(object): pow_value = int.from_bytes(hashlib.sha512(hashlib.sha512(self.nonce + h).digest()).digest()[:8], 'big') target = int(2**64/(shared.nonce_trials_per_byte*(length+(dt*length)/(2**16)))) if target < pow_value: - print('insufficient pow') + logging.warning('Rejecting object {}, reason: insufficient pow'.format(self.vector)) return False return True