ethereum-mining / ethminer

Ethereum miner with OpenCL, CUDA and stratum support
GNU General Public License v3.0
5.96k stars 2.28k forks source link

Fixed stratum mode (no-autodetection) causes terminate exception #1518

Closed AndreaLanfranchi closed 6 years ago

AndreaLanfranchi commented 6 years ago

The recent restore of non-autodetection mode by issuing stratum[1|2]+tcp:// causes an BadHexChar exception when using -P stratum+tcp:// to connect to a ethereumstratum (nicehash) pool.

This is due to the fact that stratum and ethereumstratum share the same methods names but mining_notify method brings a completely different payload.

Expected behavior Give user a more detailed explanation of the issue and invalidate the connection.

Screenshots (Optional)

 m 11:36:20 ethminer ethminer 0.16.0.dev3-101+commit.5e15e63e
 m 11:36:20 ethminer Build: linux/release
cu 11:36:21 ethminer Using grid size: 4,096, block size: 128
 i 11:36:21 ethminer Configured pool daggerhashimoto.eu.nicehash.com:3353
 i 11:36:21 ethminer Api server listening on port 3333.
 i 11:36:21 main     Selected pool daggerhashimoto.eu.nicehash.com:3353
 i 11:36:21 stratum  Stratum mode detected: STRATUM
 i 11:36:21 stratum  Subscribed!
 i 11:36:21 stratum  Authorized worker 3C4FURwL4oAaEUuCLYmNPUEKQSPR1FAJ3m.CMC07R01
 i 11:36:21 stratum  Established connection with daggerhashimoto.eu.nicehash.com:3353 at  [172.65.195.169:3353]
 i 11:36:21 stratum  Spinning up miners...
 i 11:36:21 cuda-0   No work. Pause for 3 s.
 i 11:36:21 cuda-1   No work. Pause for 3 s.
 i 11:36:21 cuda-2   No work. Pause for 3 s.
 i 11:36:21 cuda-3   No work. Pause for 3 s.
 i 11:36:21 cuda-4   No work. Pause for 3 s.
 i 11:36:21 cuda-5   No work. Pause for 3 s.
 X 11:36:21 stratum  Got unknown method [mining.set_difficulty] from pool. Discarding...
terminate called after throwing an instance of 'boost::exception_detail::clone_impl<dev::BadHexCharacter>'
  what():  BadHexCharacter

Environment

AndreaLanfranchi commented 6 years ago

Solved.