MyHush / hush

Hush is a fork of Zcash focused on secure communications
https://myhush.org
Other
67 stars 37 forks source link

EXCEPTION: St13runtime_error #161

Closed egyptianbman closed 5 years ago

egyptianbman commented 5 years ago

Describe the issue

Random exception

Can you reliably reproduce the issue?

If so, please list the steps to reproduce below:

  1. Compile latest code on Linux
  2. Run node
  3. Logs report exception

Expected behaviour

No exceptions

Actual behaviour + errors

I occasionally see the following:

************************
EXCEPTION: St13runtime_error       
tinyformat: Too many conversion specifiers in format string       
Hush in ProcessMessages()       

ProcessMessages(headers, 120529 bytes) FAILED peer=47

************************
EXCEPTION: St13runtime_error       
tinyformat: Too many conversion specifiers in format string       
Hush in ProcessMessages()       

The version of Hush you were using:

Run hushd --version to find out

Machine specs:

leto commented 5 years ago

@egyptianbman thanks for the bug report! Can you clarify, does the daemon shut down or stop, or is this just a "warning" ?

egyptianbman commented 5 years ago

Hey @leto, it doesn't stop or shut down, just a warning but one I haven't seen on any other node before.

leto commented 5 years ago

@egyptianbman can you tell us the output of hushd --version ? I think this error only happens on newer Hush versions

egyptianbman commented 5 years ago
Hush Daemon version v2.0.0-21739aad7

In order to ensure you are adequately protecting your privacy when using Hush,
please see <https://github.com/MyHush/hush/blob/master/doc/security.md>.

Copyright (C) 2009-2018 The Bitcoin Core Developers
Copyright (C) 2015-2018 The Zcash Developers
Copyright (C) 2016-2018 The Hush Developers

This is experimental software.

Distributed under the MIT software license, see the accompanying file COPYING
or <http://www.opensource.org/licenses/mit-license.php>.

This product includes software developed by the OpenSSL Project for use in the
OpenSSL Toolkit <https://www.openssl.org/> and cryptographic software written
by Eric Young.
leto commented 5 years ago

GIN recently enabled dpow and is seeing the same issues.

Seems to be triggered when invalid blocks are received from outdated peers

egyptianbman commented 5 years ago

Ah, in that case it's more of a warning than an error/exception.

leto commented 5 years ago

This warning happened when old non-updated Hush nodes try to talk to new dpow-enabled Hush nodes, and there was a printf() with an extra %d when logging this fact. It was not security-critical, but good to fix