Skip to content

Add support for MemUse Entropy on Windows.#6612

Merged
SparkiDev merged 2 commits intowolfSSL:masterfrom
dgarske:entropy_memuse_win32
Jul 14, 2023
Merged

Add support for MemUse Entropy on Windows.#6612
SparkiDev merged 2 commits intowolfSSL:masterfrom
dgarske:entropy_memuse_win32

Conversation

@dgarske
Copy link
Copy Markdown
Member

@dgarske dgarske commented Jul 13, 2023

Description

Add support for MemUse Entropy on Windows
ZD 16422

Testing

Tested with on Windows 10 with our Visual Studio project. Adding these options to the user_settings.h:

#define HAVE_ENTROPY_MEMUSE 
#define WOLFSSL_SHA3

Checklist

  • added tests
  • updated/added doxygen
  • updated appropriate READMEs
  • Updated manual and documentation

@dgarske dgarske requested a review from SparkiDev July 13, 2023 19:57
@dgarske dgarske self-assigned this Jul 13, 2023
@dgarske
Copy link
Copy Markdown
Member Author

dgarske commented Jul 13, 2023

This PR adds a precision timer for Windows, but it should not cause this error, which leads me to suspect there could be an underlying issue:

@SparkiDev or @tmael can you please review this error: https://cloud.wolfssl-test.com/jenkins/job/PRB-generic-config-parser/1730/consoleFull ?

FAIL: scripts/openssl
wolfSSL configuration: '--enable-entropy-memuse' '--enable-opensslextra' 'CFLAGS=' 'LDFLAGS='

trying wolfSSL cipher suite ECDHE-RSA-AES128-GCM-SHA256
Matched to OpenSSL suite support
#
# ./examples/client/client -p 58519 -g -r -l ECDHE-RSA-AES128-GCM-SHA256 -v 3   "-c/var/lib/jenkins/workspace/PRB-generic-config-parser@2/wolfssl/./scripts/../certs/client-cert.pem" "-k/var/lib/jenkins/workspace/PRB-generic-config-parser@2/wolfssl/./scripts/../certs/client-key.pem" "-A/var/lib/jenkins/workspace/PRB-generic-config-parser@2/wolfssl/./scripts/../certs/ca-cert.pem" 
wolfSSL error: unable to get ctx
client failed! Suite = ECDHE-RSA-AES128-GCM-SHA256 version = 3
in cleanup
killing server: OpenSSL_RSA (58519)
killing server: wolfSSL_RSA (52748)
killing server: OpenSSL_ECDH[E]-ECDSA (60306)
killing server: wolfSSL_ECDH[E]-ECDSA (62310)
FAIL scripts/openssl.test (exit status: 1)

@dgarske dgarske requested a review from tmael July 13, 2023 21:07
Comment thread wolfcrypt/src/random.c Outdated

QueryPerformanceCounter(&count);

return (word64)(count.QuadPart / (freq.QuadPart / 1000 / 1000));
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The comment indicates nanoseconds, but the returned value is in microseconds.

divide by another / 1000

or I think you can use
(word64)(count.QuadPart / freq.QuadPart * 1000000000);

Comment thread wolfcrypt/src/random.c Outdated
SparkiDev
SparkiDev previously approved these changes Jul 13, 2023
@dgarske dgarske assigned SparkiDev and unassigned dgarske and SparkiDev Jul 13, 2023
@SparkiDev SparkiDev merged commit a96983e into wolfSSL:master Jul 14, 2023
@dgarske dgarske deleted the entropy_memuse_win32 branch August 28, 2023 16:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants