diff options
Diffstat (limited to 'src/util/crypto_helper_esign.c')
-rw-r--r-- | src/util/crypto_helper_esign.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/util/crypto_helper_esign.c b/src/util/crypto_helper_esign.c index a73e96889..702ea74df 100644 --- a/src/util/crypto_helper_esign.c +++ b/src/util/crypto_helper_esign.c @@ -387,8 +387,8 @@ TALER_CRYPTO_helper_esign_sign_ ( uint16_t msize; ret = recv (esh->sock, - buf, - sizeof (buf), + &buf[off], + sizeof (buf) - off, (finished && (0 == off)) ? MSG_DONTWAIT : 0); @@ -410,6 +410,8 @@ TALER_CRYPTO_helper_esign_sign_ ( if (0 == ret) { GNUNET_break (0 == off); + if (finished) + return TALER_EC_NONE; return TALER_EC_EXCHANGE_SIGNKEY_HELPER_BUG; } off += ret; |