<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[wolfSSL - Embedded SSL Library — wolfSSL]]></title>
		<link>https://www.wolfssl.com/forums/</link>
		<atom:link href="https://www.wolfssl.com/forums/feed-rss-forum3.xml" rel="self" type="application/rss+xml" />
		<description><![CDATA[The most recent topics at wolfSSL - Embedded SSL Library.]]></description>
		<lastBuildDate>Tue, 31 Mar 2026 03:44:20 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[How to enable TRNG?]]></title>
			<link>https://www.wolfssl.com/forums/topic2496-how-to-enable-trng-new-posts.html</link>
			<description><![CDATA[<p>Hello, I’m relatively new to embedded systems and security, so I appreciate your patience. I am developing a secure file system in a bare metal platform, and for that I am using some encryption algorithms that use a RNG. To initialize the RNG, I used the wc_InitRng function. However, when testing, I received an error relating to the initialization of the RNG. Here, I remembered that my platform does not have an OS. I figured out that it supports RNG through it&#039;s hardware (TRNG). This led me to believe that the issue may be related to how wolfSSL expects RNG sources to be configured in a bare-metal environment. However, I couldn&#039;t figure out how that can be done. </p><p>My question is: How can I configure wolfSSL to use my platform’s hardware TRNG instead of the default RNG implementation?</p><p>Any guidance or examples would be greatly appreciated.</p><p>Thank you!</p>]]></description>
			<author><![CDATA[null@example.com (abhmulla)]]></author>
			<pubDate>Tue, 31 Mar 2026 03:44:20 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/topic2496-how-to-enable-trng-new-posts.html</guid>
		</item>
		<item>
			<title><![CDATA[how to build wolfssl for gnu-efi?]]></title>
			<link>https://www.wolfssl.com/forums/topic2494-how-to-build-wolfssl-for-gnuefi-new-posts.html</link>
			<description><![CDATA[<p>I am trying to use wolfssl in my vs gnu-efi project. What are the steps for GNU-EFI ?</p><p>Thank you.</p>]]></description>
			<author><![CDATA[null@example.com (gomidas95)]]></author>
			<pubDate>Sat, 28 Mar 2026 21:20:28 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/topic2494-how-to-build-wolfssl-for-gnuefi-new-posts.html</guid>
		</item>
		<item>
			<title><![CDATA[Wolfssl fails with error -313 after a series of read write]]></title>
			<link>https://www.wolfssl.com/forums/topic2488-wolfssl-fails-with-error-313-after-a-series-of-read-write-new-posts.html</link>
			<description><![CDATA[<p>wolfSSL_read called from an STM32 microcontroller acting as a Server returns -313 (FATAL ERROR) after many succesfull readings from a CSharp application acting as a Client. </p><p>&nbsp; &nbsp; ret = wolfSSL_read(Pt_ssl, A_prcl_msd_m1_m1s_data_link_rx_buffer, sizeof(A_prcl_msd_m1_m1s_data_link_rx_buffer)-1);<br />&nbsp; &nbsp; err = wolfSSL_get_error(Pt_ssl, ret);</p><br /><p>Our receive callback is like this and works fine </p><p>wolfSSL_CTX_SetIORecv(Pt_ctx, PRCL_MSD_M1_M1S_DLINK_uartIORx);</p><p>/*!<br /> * \brief&nbsp; &nbsp;WolfSSL receive callback<br /> * \dotfile PRCL_MSD_M1_M1S_DLINK_uartIORx.dot<br /> * \ingroup MSD_M1_M1S_PROTOCOL_DATA_LINK<br /> */<br />static int PRCL_MSD_M1_M1S_DLINK_uartIORx(WOLFSSL *ssl, char *buf, const int sz, void *ctx)<br />{<br />&nbsp; &nbsp; bool b_message_received;<br />&nbsp; &nbsp; static int8_t * p_data_received_buf;<br />&nbsp; &nbsp; static int32_t total_amount_data_rcv = 0;<br />&nbsp; &nbsp; int32_t bytes_available_fifo = 0;<br />&nbsp; &nbsp; int32_t bytes_to_read;<br />&nbsp; &nbsp; int32_t bytes_read;</p><p>&nbsp; &nbsp; b_message_received = MDL_USARTS_Check_end_reception(USART_MSD_COMMS);</p><p>&nbsp; &nbsp; if (b_message_received == TRUE)<br />&nbsp; &nbsp; {<br />&nbsp; &nbsp; &nbsp; &nbsp; total_amount_data_rcv = MDL_USARTS_Get_DMA_amount_of_rx_data(USART_MSD_COMMS);<br />&nbsp; &nbsp; &nbsp; &nbsp; MDL_USARTS_Reset_DMA_amount_of_rx_data(USART_MSD_COMMS);</p><p>&nbsp; &nbsp; &nbsp; &nbsp; MDL_USARTS_Start_receive(USART_MSD_COMMS);</p><p>&nbsp; &nbsp; &nbsp; &nbsp; p_data_received_buf = (int8_t*)MDL_USARTS_Get_receive_buffer(USART_MSD_COMMS);<br />&nbsp; &nbsp; &nbsp; &nbsp; MDL_CIRC_FIFO_Fifo_push_buf(&amp;T_wolfSSL_rx_fifo, (uint8_t *)p_data_received_buf, total_amount_data_rcv);<br />&nbsp; &nbsp; }</p><p>&nbsp; &nbsp; bytes_available_fifo = MDL_CIRC_FIFO_Fifo_used_size(&amp;T_wolfSSL_rx_fifo);</p><p>&nbsp; &nbsp; if (bytes_available_fifo &gt; 0)<br />&nbsp; &nbsp; {<br />&nbsp; &nbsp; &nbsp; &nbsp; DEBUG_PRINTF(&quot;FIFO used: %d, DMA received: %d\r\n&quot;, bytes_available_fifo, total_amount_data_rcv);<br />&nbsp; &nbsp; &nbsp; &nbsp; bytes_to_read = (bytes_available_fifo &lt; sz) ? bytes_available_fifo : sz;<br />&nbsp; &nbsp; &nbsp; &nbsp; bytes_read&nbsp; &nbsp; &nbsp; &nbsp; = MDL_CIRC_FIFO_Fifo_pop_buf(&amp;T_wolfSSL_rx_fifo, (uint8_t *)buf, bytes_to_read);<br />&nbsp; &nbsp; &nbsp; &nbsp; return bytes_read;<br />&nbsp; &nbsp; }<br />&nbsp; &nbsp; else<br />&nbsp; &nbsp; {<br />&nbsp; &nbsp; &nbsp; &nbsp; return WOLFSSL_CBIO_ERR_WANT_READ;<br />&nbsp; &nbsp; }</p><p>}</p><p>Does anyone has any suggestion?<br />Many Thanks,<br />Edoardo</p>]]></description>
			<author><![CDATA[null@example.com (Edoardo)]]></author>
			<pubDate>Thu, 19 Mar 2026 12:44:12 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/topic2488-wolfssl-fails-with-error-313-after-a-series-of-read-write-new-posts.html</guid>
		</item>
		<item>
			<title><![CDATA[wolfssljni--DTLSv1.2 not recognized]]></title>
			<link>https://www.wolfssl.com/forums/topic2487-wolfssljnidtlsv12-not-recognized-new-posts.html</link>
			<description><![CDATA[<p>hi, i was trying to use wolfSSL in a java environment, the build was good, and the native library was load successfully, yet when i try to create a java SSLContext for DTLS by java JSSE, an exception occurred saying that the &quot;java.lang.RuntimeException: java.security.NoSuchAlgorithmException: no such algorithm: DTLSv1.2 for provider wolfJSSE&quot;</p>]]></description>
			<author><![CDATA[null@example.com (jorgeja)]]></author>
			<pubDate>Thu, 19 Mar 2026 07:29:14 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/topic2487-wolfssljnidtlsv12-not-recognized-new-posts.html</guid>
		</item>
		<item>
			<title><![CDATA[AF_ALG breaks certificate verification on ARM32 (-155 error)]]></title>
			<link>https://www.wolfssl.com/forums/topic2478-afalg-breaks-certificate-verification-on-arm32-155-error-new-posts.html</link>
			<description><![CDATA[<p>Hi,</p><p>I&#039;m trying to use wolfSSL with AF_ALG on an ARM32 platform (Microchip SAMA5D2, Cortex-A5) to get hardware-accelerated AES-GCM for TLS. The goal is to offload bulk encryption to hardware while keeping certificate verification in software.</p><p>When I enable `--enable-afalg`, all certificate verification fails with error -155 (`ASN_SIG_CONFIRM_E`)</p><p><strong>What we have:</strong><br />- wolfSSL 5.8.4 (also tested 5.7.2)<br />- libcurl 8.18.0<br />- Linux with musl libc (Buildroot)<br />- hardware: Atmel AES via AF_ALG (`atmel-gcm-aes` driver)</p><p><strong>Platform details:</strong><br />- Microchip SAMA5D2 (ARM Cortex-A5)<br />- Linux 6.x, musl libc, Buildroot</p><p><strong>Configure (minimal reproduction):</strong></p><div class="codebox"><pre><code>./configure --enable-curl --enable-afalg</code></pre></div><br /><p><strong>What happens</strong><br /></p><div class="codebox"><pre><code>$ curl https://www.google.com
SSL_connect failed with error -155: ASN sig error, confirm failure</code></pre></div><p>This affects every HTTPS site</p><p>Hardware AES is working if we skip the certificate verification </p><div class="codebox"><pre><code>$ grep -i aes /proc/interrupts
157:          3  atmel-aic5   9 Level     atmel-aes

$ curl -k https://www.google.com   # skip verification
(succeeds, returns HTTP 200)

$ grep -i aes /proc/interrupts
157:         57  atmel-aic5   9 Level     atmel-aes</code></pre></div><br /><p>The AES interrupt count jumped from 3 to 57 during that connection. So AF_ALG AES-GCM is working for data encryption. It&#039;s only the certificate verification that breaks.</p><p><strong>What I&#039;ve tried (all fail with -155)</strong>:<br />- Minimal config: just `--enable-curl --enable-afalg`<br />- wolfSSL 5.7.2 and 5.8.4<br />- SP math (default on ARM) vs TFM (`--enable-fastmath`)<br />- With and without `WOLFSSL_AFALG_HASH`<br />- libcurl 8.15.0 and 8.18.0</p><p><strong>What works:</strong><br />- `--enable-all` without `--enable-afalg` - certificates verify fine<br />- `--enable-curl` without `--enable-afalg` - certificates verify fine<br />- Basically anything WITHOUT `--enable-afalg`</p><p><strong>Questions:</strong><br />1. Has anyone successfully used `--enable-afalg` on ARM32 with certificate verification?<br />2. Is there a known issue with AF_ALG + curl on ARM?<br />3. Any suggestions for debugging this further?</p><p>I am keen to get hardware AES working since as we are pushing the boundaries of the CPU for our application.</p><p>Thanks for any help.</p>]]></description>
			<author><![CDATA[null@example.com (adolphson)]]></author>
			<pubDate>Thu, 19 Feb 2026 00:55:09 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/topic2478-afalg-breaks-certificate-verification-on-arm32-155-error-new-posts.html</guid>
		</item>
		<item>
			<title><![CDATA[Getting -125 for the API wolfSSL_CTX_load_verify_buffer()]]></title>
			<link>https://www.wolfssl.com/forums/topic2474-getting-125-for-the-api-wolfsslctxloadverifybuffer-new-posts.html</link>
			<description><![CDATA[<p>hi All,</p><p>I am using TM4C129X MCU + FreeRTOS TCP+ Wolfssll 5.8.4</p><p>i am facing -125 error for this api <br />wolfSSL_CTX_load_verify_buffer(ctx, (const unsigned char*)ca_cert_pem, strlen(ca_cert_pem), WOLFSSL_FILETYPE_PEM);</p><p>Her is my user-settings.h file <br />/*<br /> * user_settings.h<br /> *<br /> *&nbsp; Created on: 11-Feb-2026<br /> *&nbsp; &nbsp; &nbsp; Author: chira<br /> */<br />#ifndef WOLFSSL_USER_SETTINGS_H<br />#define WOLFSSL_USER_SETTINGS_H</p><p>#ifdef __cplusplus<br />extern &quot;C&quot; {<br />#endif</p><p>/* ===================================================== */<br />/* Platform */<br />/* ===================================================== */<br />#define FREERTOS_TCP<br />#define SINGLE_THREADED<br />#define WOLFSSL_SMALL_STACK<br />#define WOLFSSL_USER_IO</p><p>/* Required for TI CGT */<br />#define NO_INLINE</p><p>/* ===================================================== */<br />/* TLS Configuration */<br />/* ===================================================== */</p><p>#define WOLFSSL_TLS12<br />#define WOLFSSL_NO_TLS13</p><p>#define NO_OLD_TLS<br />#define NO_SESSION_CACHE<br />#define NO_WOLFSSL_SERVER&nbsp; &nbsp;/* Client only */<br />#define HAVE_SNI</p><p>/* ===================================================== */<br />/* Disable Unused Crypto */<br />/* ===================================================== */</p><p>//#define NO_RSA<br />#define NO_DH<br />#define NO_DSA<br />#define NO_DES3<br />#define NO_RC4<br />#define NO_MD4<br />#define NO_PSK<br />#define NO_FILESYSTEM<br />#define NO_WRITEV</p><p>/* ===================================================== */<br />/* ECC (Only curve secp256r1) */<br />/* ===================================================== */</p><p>#define HAVE_ECC<br />#define ECC_USER_CURVES<br />#undef NO_ECC256</p><p>#define ECC_SHAMIR<br />#define ECC_TIMING_RESISTANT</p><p>/* ===================================================== */<br />/* AES */<br />/* ===================================================== */</p><p>#define HAVE_AES_CBC<br />#define HAVE_AESGCM<br />#define GCM_SMALL</p><p>/* ===================================================== */<br />/* Hash */<br />/* ===================================================== */</p><p>//#define NO_SHA<br />/* Keep SHA enabled */<br />#define NO_MD5<br />#define WOLFSSL_SHA256</p><p>/* ===================================================== */<br />/* Math */<br />/* ===================================================== */</p><p>#define USE_FAST_MATH<br />#define TFM_TIMING_RESISTANT<br />#define FP_MAX_BITS 4096</p><p>/* ===================================================== */<br />/* Memory */<br />/* ===================================================== */</p><p>//#define NO_WOLFSSL_MEMORY&nbsp; &nbsp;/* use malloc/free */<br />// #define WOLFSSL_STATIC_MEMORY<br />// #define WOLFSSL_NO_MALLOC</p><p>/* ===================================================== */<br />/* RNG */<br />/* ===================================================== */</p><p>#define HAVE_HASHDRBG</p><p>//extern unsigned int my_rng_seed_gen(void);<br />//#define CUSTOM_RAND_GENERATE my_rng_seed_gen</p><p>/* ===================================================== */<br />/* Misc */<br />/* ===================================================== */</p><p>#define HAVE_TLS_EXTENSIONS<br />#define HAVE_SUPPORTED_CURVES</p><p>#define HAVE_CERTS<br />#define WOLFSSL_BASE64_ENCODE<br />#define WOLFSSL_ASN<br />#define HAVE_X509</p><p>#define WOLFSSL_USER_CURRTIME<br />#define XTIME time</p><br /><p>#ifdef __cplusplus<br />}<br />#endif</p><p>#endif /* THIRD_PARTY_USER_SETTINGS_H_ */</p><br /><p>please guide me where i am getting wrong and also i am attaching my code </p><p>Regards <br />Chiranth Murthy</p>]]></description>
			<author><![CDATA[null@example.com (chiranthanandmurthy)]]></author>
			<pubDate>Tue, 17 Feb 2026 08:42:18 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/topic2474-getting-125-for-the-api-wolfsslctxloadverifybuffer-new-posts.html</guid>
		</item>
		<item>
			<title><![CDATA[In case of DTLS 1.3 when using NULL cipher the Nonce length invalid]]></title>
			<link>https://www.wolfssl.com/forums/topic2470-in-case-of-dtls-13-when-using-null-cipher-the-nonce-length-invalid-new-posts.html</link>
			<description><![CDATA[<p>Version<br />master branch, commit from 2026.02.06 (hash: 25db90...)</p><p>Description<br />I am using DTLS 1.3 with TLS_SHA384_SHA384 (integrity only, NULL cipher)<br />In this case when the BuildTls13Nonce gets executed, the seq_offset calculated as follows:</p><p>int seq_offset = AEAD_NONCE_SZ - SEQ_SZ;</p><p>According to my understanding, the seq_offset is variable and should depend on the size of the HMAC Nonce.<br />In wolfssl this is called HMAC_NONCE_SZ</p><p>Explanation:</p><p>According to Section 5.3 (&quot;Per-Record Nonce&quot;) of RFC 8446 (<a href="https://www.rfc-editor.org/rfc/rfc8446#section-5.3">https://www.rfc-editor.org/rfc/rfc8446#section-5.3</a>):</p><p>&quot;The resulting quantity (of length iv_length) is used as the<br />per-record nonce.&quot;</p><p>This means that the nonce has to be the same length as the IV.</p><p>According to Section 6 (&quot;Key Schedule when Using Integrity-Only Cipher Suites&quot;) of RFC 9150 (<a href="https://www.rfc-editor.org/rfc/rfc9150.html#section-6">https://www.rfc-editor.org/rfc/rfc9150.html#section-6</a>), the IV length of TLS_SHA384_SHA384 is 48.</p><p>Therefore, these two combined mean that the nonce length in case of TLS_SHA384_SHA384 shall be 48.</p><p>See also:&nbsp; <a href="https://github.com/wolfSSL/wolfssl/issues/9757">https://github.com/wolfSSL/wolfssl/issues/9757</a></p>]]></description>
			<author><![CDATA[null@example.com (andras.erdos)]]></author>
			<pubDate>Tue, 10 Feb 2026 13:36:39 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/topic2470-in-case-of-dtls-13-when-using-null-cipher-the-nonce-length-invalid-new-posts.html</guid>
		</item>
		<item>
			<title><![CDATA[wolfssl tls13]]></title>
			<link>https://www.wolfssl.com/forums/topic2465-wolfssl-tls13-new-posts.html</link>
			<description><![CDATA[<p>Hello, I am trying to use tl 1.3 with pkcs11. I am running into an issue when calling wolfSSL_connect(), despite initializing ssl with tls 1.3 client method when wolfSSL_connect() is called &quot;TLS 1.2 or lower&quot; message is sent. This seems to happen in the code at </p><p>#ifdef WOLFSSL_TLS13<br />i (ssl.options.tls1_3) {<br />return wolfSSL_connect_TLSv13(ssl);<br />}<br />#endif </p><p>the macro causes the if statement to be called but it fails and wolfSSL_connect_TLSv13(ssL) is not called presumably leading to a version error on the server side. My question is where is ssl.options.tls1_3 set to 1? If it is not explicitly set and just inherits the ctx.options field then where is that happening? I have &quot;--enabled-tls13&quot; as well as set ctx = wolfSSL_CTX_new(wolfTLSv1_3_client_method())) == NULL.<br />I do want to add when I set both server and client to tls 1.2 methods the connection works.<br /> Below is my options.h configuration. </p><br /><p>ifdef WOLFSSL_NO_OPTIONS_H<br />/* options.h inhibited by configuration */<br />#elif !defined(WOLFSSL_OPTIONS_H)<br />#define WOLFSSL_OPTIONS_H</p><br /><p>#ifdef __cplusplus<br />extern &quot;C&quot; {<br />#endif</p><p>#undef&nbsp; WOLFSSL_HAVE_ATOMIC_H<br />#define WOLFSSL_HAVE_ATOMIC_H</p><p>#undef&nbsp; WOLFSSL_HAVE_ASSERT_H<br />#define WOLFSSL_HAVE_ASSERT_H</p><p>#undef&nbsp; HAVE_C___ATOMIC<br />#define HAVE_C___ATOMIC 1</p><p>#undef&nbsp; HAVE_THREAD_LS<br />#define HAVE_THREAD_LS</p><p>#undef&nbsp; DEBUG_WOLFSSL<br />#define DEBUG_WOLFSSL</p><p>#undef&nbsp; WOLFSSL_DEBUG_CODEPOINTS<br />#define WOLFSSL_DEBUG_CODEPOINTS</p><p>#undef&nbsp; WOLFSSL_DEBUG_TRACE_ERROR_CODES<br />#define WOLFSSL_DEBUG_TRACE_ERROR_CODES</p><p>#undef&nbsp; NO_DO178<br />#define NO_DO178</p><p>#undef&nbsp; WOLFSSL_X86_64_BUILD<br />#define WOLFSSL_X86_64_BUILD</p><p>#undef&nbsp; WOLFSSL_ASN_TEMPLATE<br />#define WOLFSSL_ASN_TEMPLATE</p><p>#undef&nbsp; ERROR_QUEUE_PER_THREAD<br />#define ERROR_QUEUE_PER_THREAD</p><p>#undef&nbsp; TFM_TIMING_RESISTANT<br />#define TFM_TIMING_RESISTANT</p><p>#undef&nbsp; ECC_TIMING_RESISTANT<br />#define ECC_TIMING_RESISTANT</p><p>#undef&nbsp; WC_RSA_BLINDING<br />#define WC_RSA_BLINDING</p><p>#undef&nbsp; WOLFSSL_ARMASM_NO_HW_CRYPTO<br />#define WOLFSSL_ARMASM_NO_HW_CRYPTO</p><p>#undef&nbsp; WOLFSSL_USE_ALIGN<br />#define WOLFSSL_USE_ALIGN</p><p>#undef&nbsp; WOLFSSL_SHA224<br />#define WOLFSSL_SHA224</p><p>#undef&nbsp; WOLFSSL_SHA512<br />#define WOLFSSL_SHA512</p><p>#undef&nbsp; WOLFSSL_SHA384<br />#define WOLFSSL_SHA384</p><p>#undef&nbsp; HAVE_HKDF<br />#define HAVE_HKDF</p><p>#undef&nbsp; HAVE_ECC<br />#define HAVE_ECC</p><p>#undef&nbsp; ECC_SHAMIR<br />#define ECC_SHAMIR</p><p>#undef&nbsp; ECC_MIN_KEY_SZ<br />#define ECC_MIN_KEY_SZ 224</p><p>#undef&nbsp; HAVE_ECC_BRAINPOOL<br />#define HAVE_ECC_BRAINPOOL</p><p>#undef&nbsp; HAVE_ECC_ENCRYPT<br />#define HAVE_ECC_ENCRYPT</p><p>#undef&nbsp; NO_OLD_TLS<br />#define NO_OLD_TLS</p><p>#undef&nbsp; WC_RSA_PSS<br />#define WC_RSA_PSS</p><p>#undef&nbsp; WOLFSSL_PSS_LONG_SALT<br />#define WOLFSSL_PSS_LONG_SALT</p><p>#undef&nbsp; WOLFSSL_ASN_PRINT<br />#define WOLFSSL_ASN_PRINT</p><p>#undef&nbsp; WOLFSSL_BASE64_ENCODE<br />#define WOLFSSL_BASE64_ENCODE</p><p>#undef&nbsp; WOLFSSL_CUSTOM_CURVES<br />#define WOLFSSL_CUSTOM_CURVES</p><p>#undef&nbsp; HAVE_ECC_SECPR2<br />#define HAVE_ECC_SECPR2</p><p>#undef&nbsp; HAVE_ECC_SECPR3<br />#define HAVE_ECC_SECPR3</p><p>#undef&nbsp; HAVE_ECC_BRAINPOOL<br />#define HAVE_ECC_BRAINPOOL</p><p>#undef&nbsp; HAVE_ECC_KOBLITZ<br />#define HAVE_ECC_KOBLITZ</p><p>#undef&nbsp; HAVE_ECC_CDH<br />#define HAVE_ECC_CDH</p><p>#undef&nbsp; WOLFSSL_SHA3<br />#define WOLFSSL_SHA3</p><p>#undef&nbsp; WOLFSSL_NO_SHAKE128<br />#define WOLFSSL_NO_SHAKE128</p><p>#undef&nbsp; WOLFSSL_NO_SHAKE256<br />#define WOLFSSL_NO_SHAKE256</p><p>#undef&nbsp; HAVE_POLY1305<br />#define HAVE_POLY1305</p><p>#undef&nbsp; HAVE_CHACHA<br />#define HAVE_CHACHA</p><p>#undef&nbsp; HAVE_HASHDRBG<br />#define HAVE_HASHDRBG</p><p>#undef&nbsp; HAVE_TLS_EXTENSIONS<br />#define HAVE_TLS_EXTENSIONS</p><p>#undef&nbsp; HAVE_SNI<br />#define HAVE_SNI</p><p>#undef&nbsp; HAVE_TLS_EXTENSIONS<br />#define HAVE_TLS_EXTENSIONS</p><p>#undef&nbsp; HAVE_SUPPORTED_CURVES<br />#define HAVE_SUPPORTED_CURVES</p><p>#undef&nbsp; HAVE_FFDHE_2048<br />#define HAVE_FFDHE_2048</p><p>#undef&nbsp; HAVE_SUPPORTED_CURVES<br />#define HAVE_SUPPORTED_CURVES</p><p>#undef&nbsp; WOLFSSL_TLS13<br />#define WOLFSSL_TLS13</p><p>#undef&nbsp; HAVE_TLS_EXTENSIONS<br />#define HAVE_TLS_EXTENSIONS</p><p>#undef&nbsp; HAVE_EXTENDED_MASTER<br />#define HAVE_EXTENDED_MASTER</p><p>#undef&nbsp; HAVE_TLS_EXTENSIONS<br />#define HAVE_TLS_EXTENSIONS</p><p>#undef&nbsp; HAVE_SNI<br />#define HAVE_SNI</p><p>#undef&nbsp; HAVE_MAX_FRAGMENT<br />#define HAVE_MAX_FRAGMENT</p><p>#undef&nbsp; HAVE_TRUNCATED_HMAC<br />#define HAVE_TRUNCATED_HMAC</p><p>#undef&nbsp; HAVE_ALPN<br />#define HAVE_ALPN</p><p>#undef&nbsp; HAVE_TRUSTED_CA<br />#define HAVE_TRUSTED_CA</p><p>#undef&nbsp; HAVE_SUPPORTED_CURVES<br />#define HAVE_SUPPORTED_CURVES</p><p>#undef&nbsp; NO_RC4<br />#define NO_RC4</p><p>#undef&nbsp; HAVE_ENCRYPT_THEN_MAC<br />#define HAVE_ENCRYPT_THEN_MAC</p><p>#undef&nbsp; NO_PSK<br />#define NO_PSK</p><p>#undef&nbsp; NO_MD4<br />#define NO_MD4</p><p>#undef&nbsp; WOLFSSL_ENCRYPTED_KEYS<br />#define WOLFSSL_ENCRYPTED_KEYS</p><p>#undef&nbsp; HAVE_PKCS11<br />#define HAVE_PKCS11</p><p>#undef&nbsp; HAVE_WOLF_BIGINT<br />#define HAVE_WOLF_BIGINT</p><p>#undef&nbsp; WOLFSSL_SP_MATH_ALL<br />#define WOLFSSL_SP_MATH_ALL</p><p>#undef&nbsp; WOLFSSL_SP_X86_64<br />#define WOLFSSL_SP_X86_64</p><p>#undef&nbsp; WOLF_CRYPTO_CB<br />#define WOLF_CRYPTO_CB</p><p>#undef&nbsp; WC_NO_ASYNC_THREADING<br />#define WC_NO_ASYNC_THREADING</p><p>#undef&nbsp; HAVE_DH_DEFAULT_PARAMS<br />#define HAVE_DH_DEFAULT_PARAMS</p><p>#undef&nbsp; HAVE_CURVE25519<br />#define HAVE_CURVE25519</p><p>#undef&nbsp; HAVE_ED25519<br />#define HAVE_ED25519</p><p>#undef&nbsp; WOLFSSL_SYS_CA_CERTS<br />#define WOLFSSL_SYS_CA_CERTS</p><p>#undef&nbsp; OPENSSL_EXTRA<br />#define OPENSSL_EXTRA</p><p>#undef&nbsp; NO_DES3<br />#define NO_DES3</p><p>#undef&nbsp; NO_DES3_TLS_SUITES<br />#define NO_DES3_TLS_SUITES</p><p>#undef&nbsp; GCM_TABLE_4BIT<br />#define GCM_TABLE_4BIT</p><p>#undef&nbsp; HAVE_AESGCM<br />#define HAVE_AESGCM</p><p>#undef&nbsp; WOLFSSL_AESGCM_STREAM<br />#define WOLFSSL_AESGCM_STREAM</p><p>#undef&nbsp; HAVE_TLS_EXTENSIONS<br />#define HAVE_TLS_EXTENSIONS</p><p>#undef&nbsp; HAVE_SERVER_RENEGOTIATION_INFO<br />#define HAVE_SERVER_RENEGOTIATION_INFO</p><p>#undef&nbsp; HAVE___UINT128_T<br />#define HAVE___UINT128_T 1</p><p>#undef&nbsp; HAVE_GETPID<br />#define HAVE_GETPID 1</p><p>#undef&nbsp; HAVE_WC_INTROSPECTION<br />#define HAVE_WC_INTROSPECTION</p><br /><p>#ifdef __cplusplus<br />}<br />#endif</p><br /><p>#endif /* WOLFSSL_OPTIONS_H */</p>]]></description>
			<author><![CDATA[null@example.com (jamest)]]></author>
			<pubDate>Thu, 22 Jan 2026 17:31:14 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/topic2465-wolfssl-tls13-new-posts.html</guid>
		</item>
		<item>
			<title><![CDATA[how to integrate Mongoose(v7.20) with wolfSSL(v5.8.4)]]></title>
			<link>https://www.wolfssl.com/forums/topic2464-how-to-integrate-mongoosev720-with-wolfsslv584-new-posts.html</link>
			<description><![CDATA[<p>hi,<br />I want to integrate two open-source libraries to implement a simple HTTPS server for testing purposes:<br />Mongoose(v7.20)<br /><a href="https://github.com/cesanta/mongoose">https://github.com/cesanta/mongoose</a><br />wolfSSL(v5.8.4)<br /><a href="https://github.com/wolfSSL/wolfssl">https://github.com/wolfSSL/wolfssl</a><br />My development environment:<br />PC (X86/WINDOWS11), VSCODE, gcc(tasks.json);<br />I found it very difficult to achieve.<br />Is there a similar demo available for reference?<br />tks!</p>]]></description>
			<author><![CDATA[null@example.com (andy_liu)]]></author>
			<pubDate>Wed, 21 Jan 2026 09:25:46 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/topic2464-how-to-integrate-mongoosev720-with-wolfsslv584-new-posts.html</guid>
		</item>
		<item>
			<title><![CDATA[wolfssl_AES_CTR example no longer compiles for Teensy 4.1]]></title>
			<link>https://www.wolfssl.com/forums/topic2460-wolfsslaesctr-example-no-longer-compiles-for-teensy-41-new-posts.html</link>
			<description><![CDATA[<p>I&#039;ve come across an issue compiling with the latest wolfssl 5.8.4 arduino library on Teensy 4.1 </p><p>The wolfssl_AES_CTR example included in the library compiles with no issues for Teensy Micromod, but not for Teensy 4.1 ? </p><p>This would compiile for both Teensy models on the earlier wolfssl 5.7.6 library last year, so this is somewhat puzzling. See attached the compilation output.</p><p>What could be causing this?</p><p>TIA</p>]]></description>
			<author><![CDATA[null@example.com (chrisj7903)]]></author>
			<pubDate>Mon, 19 Jan 2026 20:49:01 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/topic2460-wolfsslaesctr-example-no-longer-compiles-for-teensy-41-new-posts.html</guid>
		</item>
		<item>
			<title><![CDATA[Enable Dilithium5/Kyber5 on a STM32?]]></title>
			<link>https://www.wolfssl.com/forums/topic2456-enable-dilithium5kyber5-on-a-stm32-new-posts.html</link>
			<description><![CDATA[<p>Hello there,</p><p>I am struggling to set up the correct defines to activate this algorithms for TLS:</p><br /><div class="codebox"><pre><code>#define WOLFSSL_HAVE_KYBER
//#define HAVE_DILITHIUM
//#define WOLFSSL_DILITHIUM_SMALL
#define HAVE_DILITHIUM_LEVEL5
//#define WOLFSSL_PQC_ONLY
#define NO_ECC
//#define WOLFSSL_MLKEM
//#define WOLFSSL_MLKEM_KYBER
#define WOLFSSL_WC_DILITHIUM
#define WOLFSSL_SHAKE256
#define WOLFSSL_SHAKE128
#define WOLFSSL_SHA3
#define WOLFSSL_WC_MLKEM
//#define HAVE_LIBOQS
//#define WOLFSSL_EXPERIMENTAL_SETTINGS</code></pre></div><p>.</p><br /><p>I get quite many errors, because something is missing.</p>]]></description>
			<author><![CDATA[null@example.com (mika)]]></author>
			<pubDate>Sat, 17 Jan 2026 08:36:27 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/topic2456-enable-dilithium5kyber5-on-a-stm32-new-posts.html</guid>
		</item>
		<item>
			<title><![CDATA[Enabling curve extensions]]></title>
			<link>https://www.wolfssl.com/forums/topic2454-enabling-curve-extensions-new-posts.html</link>
			<description><![CDATA[<p>for TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 the curve extension are not being set in the Hello Packet.<br />This Causes the Cipher to be ignored by the server.</p><p>ie:<br />&nbsp; &nbsp; &nbsp; &nbsp; extension_type=supported_groups(10), length=12<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; secp521r1 (P-521) (25)<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; secp384r1 (P-384) (24)<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; secp256r1 (P-256) (23)<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; secp224r1 (P-224) (21)</p><p>How are these enabled?<br />Is there a document indicating what compile options are required for each cipher?</p>]]></description>
			<author><![CDATA[null@example.com (Neil.Kurzman)]]></author>
			<pubDate>Fri, 09 Jan 2026 07:07:03 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/topic2454-enabling-curve-extensions-new-posts.html</guid>
		</item>
		<item>
			<title><![CDATA[Decrypt ECH ClientHelloOuter]]></title>
			<link>https://www.wolfssl.com/forums/topic2450-decrypt-ech-clienthelloouter-new-posts.html</link>
			<description><![CDATA[<p>Hello,<br />I want to add Encrypted Client Hello support to sslh (<a href="https://github.com/yrutschle/sslh/">https://github.com/yrutschle/sslh/</a>), which is a client-facing proxy that would decrypt the ClientHelloOuter, extract the SNI, and forward to a backend server according to the SNI. This is already supported for unencrypted SNI.</p><p>I found the ECH functions in `src/ssl.c` from the examples, in particular `server-ech-local.c`, but the API does not seem to be currently documented (or I didn&#039;t find the documentation). My understanding is that I can have sslh generate ECH configs with `wolfSSL_CTX_GenerateEchConfig()` then export it to the DNS server using `wolfSSL_CTX_GetEchConfigs()` (and base64 encoding), or alternatively set up with a configuration coming from outside using `wolfSSL_CTX_SetEchConfigsBase64()`. I think I have this part working.</p><p>Now the part I am missing is how to retrieve an unencrypted ClientHelloInner, or extract the encrypted SNI from the ClientHelloOuter. Really I would expect something equivalent to `wolfSSL_SNI_GetFromBuffer()`, fed with the ECH private key, or a WOLFSSL_CTX that only has EchConfigs attached, but no server certificates. Does this function exist somewhere, or how would I go about creating it? (from functions in hpke.c?)</p><p>Thanks in advance,<br />Y.</p>]]></description>
			<author><![CDATA[null@example.com (yrutschle)]]></author>
			<pubDate>Tue, 30 Dec 2025 16:21:37 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/topic2450-decrypt-ech-clienthelloouter-new-posts.html</guid>
		</item>
		<item>
			<title><![CDATA[Errors when trying to use user_settings.h]]></title>
			<link>https://www.wolfssl.com/forums/topic2447-errors-when-trying-to-use-usersettingsh-new-posts.html</link>
			<description><![CDATA[<p>Hello, I&#039;m configuring wolfssl 5.8.4 with the following command, with the intent to deploy it to an embedded RTOS (LynxOS). I&#039;m doing this on my Linux host, but have sourced the LyxnOS toolchain so that I am using their gcc and toolchain.</p><p>./configure --host=x86_64-lynxos --enable-wolfssh --enable-keygen --enable-intelasm --disable-examples --disable-crypttests --enable-aesni --enable-static --enable-usersettings</p><p>This passes, but when I call make, I get the following error:<br />wolfcrypt/src/sm3_asm.S:26:2: error: #error &quot;See <a href="https://github.com/wolfSSL/wolfsm">https://github.com/wolfSSL/wolfsm</a> for implementation of this file&quot;<br />&nbsp; &nbsp;26 | #error &quot;See <a href="https://github.com/wolfSSL/wolfsm">https://github.com/wolfSSL/wolfsm</a> for implementation of this file&quot;</p><p>This error is thrown if WOLFSSL_SM3 is defined. This is strange, since I am not defining it in my user_settings.h nor am I enabling it, and the help page suggests sm3 is disabled by default.</p><p>So anyway, I then took out --enable-usersettings and allowed configure to generate the options.h for me. I then ran make and it compiled successfully. So I figured it&#039;s something wrong in my user_settings.h</p><p>I then copy/pasted all the #defines from the generated options.h to my user_settings.h, and then re-ran configure with --enable-usersettings. I ran make, and same errorsue, even though I am using all the same variables from the generated options.h.</p><p>Any ideas why this might be happening? I&#039;m trying to use my own user_settings.h since I need to disable some features for Lynx specifically, eg, Lynx does not have stdatomic.h.</p>]]></description>
			<author><![CDATA[null@example.com (robertjdac)]]></author>
			<pubDate>Fri, 19 Dec 2025 02:38:53 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/topic2447-errors-when-trying-to-use-usersettingsh-new-posts.html</guid>
		</item>
		<item>
			<title><![CDATA[Issue with a bare metal LWIP/WolfSSL setup on a STM32 device]]></title>
			<link>https://www.wolfssl.com/forums/topic2445-issue-with-a-bare-metal-lwipwolfssl-setup-on-a-stm32-device-new-posts.html</link>
			<description><![CDATA[<p>Hello There,</p><p>I have issues with achieving a Handshake, while the stm32n6570-dk acting as a Client and a Debian System as the corresponding Server.</p><p>After the TLS Handshake and initializing WolfSSL plus providing him the Root Certificate, it gives me errors at wolfssl_connect:</p><p>It returns -1.</p><p>wolfSSL_ERR_get_error says something like &quot;unknown error&quot;.</p><p>wolfSSL_get_error just returns 32.</p><p>I am actually quite stuck at this point.</p>]]></description>
			<author><![CDATA[null@example.com (mika)]]></author>
			<pubDate>Wed, 17 Dec 2025 11:12:27 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/topic2445-issue-with-a-bare-metal-lwipwolfssl-setup-on-a-stm32-device-new-posts.html</guid>
		</item>
	</channel>
</rss>
