diff --git a/examples/client/client.c b/examples/client/client.c index 1111782..9bc6d31 100644 --- a/examples/client/client.c +++ b/examples/client/client.c @@ -304,6 +304,7 @@ THREAD_RETURN WOLFSSH_THREAD client_test(void* args) do { ret = wolfSSH_stream_read(ssh, (byte*)rxBuf, sizeof(rxBuf) - 1); if (ret <= 0) { + ret = wolfSSH_get_error(ssh); if (ret != WS_WANT_READ && ret != WS_WANT_WRITE) err_sys("Stream read failed."); } diff --git a/examples/server/server.c b/examples/server/server.c index abc32a5..f26689e 100644 --- a/examples/server/server.c +++ b/examples/server/server.c @@ -166,6 +166,8 @@ static THREAD_RETURN WOLFSSH_THREAD server_worker(void* vArgs) rxSz = wolfSSH_stream_read(threadCtx->ssh, buf + backlogSz, EXAMPLE_BUFFER_SZ); + if (rxSz <= 0) + rxSz = wolfSSH_get_error(threadCtx->ssh); } while (rxSz == WS_WANT_READ || rxSz == WS_WANT_WRITE); if (rxSz > 0) { diff --git a/src/keygen.c b/src/keygen.c index 1292c1e..e31c51f 100644 --- a/src/keygen.c +++ b/src/keygen.c @@ -44,6 +44,8 @@ #ifdef WOLFSSH_KEYGEN +#ifdef WOLFSSL_KEY_GEN + #ifdef NO_INLINE #include #else @@ -105,4 +107,9 @@ int wolfSSH_MakeRsaKey(byte* out, word32 outSz, return ret; } -#endif + +#else /* WOLFSSL_KEY_GEN */ + #error "wolfSSH keygen requires that keygen is enabled in wolfSSL, use --enable-keygen or #define WOLFSSL_KEY_GEN." +#endif /* WOLFSSL_KEY_GEN */ + +#endif /* WOLFSSH_KEYGEN */