<?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 with wolfIP]]></title>
		<link>https://www.wolfssl.com/forums/topic2530-wolfssl-with-wolfip.html</link>
		<atom:link href="https://www.wolfssl.com/forums/feed-rss-topic2530.xml" rel="self" type="application/rss+xml" />
		<description><![CDATA[The most recent posts in wolfSSL with wolfIP.]]></description>
		<lastBuildDate>Fri, 12 Jun 2026 18:51:17 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: wolfSSL with wolfIP]]></title>
			<link>https://www.wolfssl.com/forums/post8833.html#p8833</link>
			<description><![CDATA[<p>Hi ah346743!<br />&nbsp; <br />I am one of the developers that work on the wolfIP project. This isn&#039;t a bug, just a wiring step that&#039;s easy to miss.</p><p>The message &quot;Your IO Send callback is null, please set&quot; means wolfSSL doesn&#039;t yet know how to send/receive bytes. On STM32 + wolfIP there are no BSD sockets, so wolfSSL&#039;s built-in I/O is compiled out and you have to point it at wolfIP. Note that wolfSSL_SetIOWriteCtx() only sets the context pointer; it does not install the send callback, which is why it&#039;s still null.</p><p>You don&#039;t need that function at all. wolfIP ships a helper pair that does the whole job:</p><p>```<br />&nbsp; ctx = wolfSSL_CTX_new(wolfTLSv1_3_client_method());<br />&nbsp; wolfSSL_SetIO_wolfIP_CTX(ctx, ipstack);&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; /* installs send/recv callbacks */</p><p>&nbsp; fd = wolfIP_sock_socket(ipstack, AF_INET, IPSTACK_SOCK_STREAM, 0);<br />&nbsp; wolfIP_sock_connect(ipstack, fd, &amp;remote, sizeof(remote));&nbsp; &nbsp;/* TCP connect first */</p><p>&nbsp; ssl = wolfSSL_new(ctx);<br />&nbsp; wolfSSL_SetIO_wolfIP(ssl, fd);&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; /* bind this session to the fd */</p><p>&nbsp; ret = wolfSSL_connect(ssl);<br />``` </p><p>Two things I would look out for: </p><p>1. Call wolfSSL_SetIO_wolfIP_CTX before wolfSSL_new. The callback is copied into the session at creation time.<br />2. wolfSSL_connect() won&#039;t finish in one call; it returns WANT_READ/WANT_WRITE until data moves. Keep wolfIP_poll(ipstack, HAL_GetTick()); running in your main loop and call wolfSSL_connect() again until it succeeds.</p><p>A full bare-metal example is here: src/port/stm32h563/tls_client.c</p><p>Could you try that and let me know? Two quick questions I have that may help you: </p><p>- Were you wiring the I/O manually, or calling the wolfSSL_SetIO_wolfIP* helpers?<br />- In CubeMX under Software Packs → Select Components, is the wolfSSL-IO component checked? If you get a linker error on wolfSSL_SetIO_wolfIP_CTX instead of the runtime message, that component isn&#039;t enabled.</p><p>Most of our Cube-pack TLS testing has been on the H5 a full working example lives here that may help you <a href="https://github.com/wolfSSL/wolfssl-examples-stm32/pull/10.">https://github.com/wolfSSL/wolfssl-exam … 2/pull/10.</a> </p><p>Thanks <br />Aidan - wolfSSL</p>]]></description>
			<author><![CDATA[null@example.com (aidang)]]></author>
			<pubDate>Fri, 12 Jun 2026 18:51:17 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/post8833.html#p8833</guid>
		</item>
		<item>
			<title><![CDATA[Re: wolfSSL with wolfIP]]></title>
			<link>https://www.wolfssl.com/forums/post8832.html#p8832</link>
			<description><![CDATA[<p>Hi</p><p>Yes, it&#039;s an STM32CubeIDE project on the Nucleo F429ZI development board. I&#039;ve configured wolfSSL and wolfIP via CubeMX.</p>]]></description>
			<author><![CDATA[null@example.com (ah346743)]]></author>
			<pubDate>Fri, 12 Jun 2026 10:17:42 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/post8832.html#p8832</guid>
		</item>
		<item>
			<title><![CDATA[Re: wolfSSL with wolfIP]]></title>
			<link>https://www.wolfssl.com/forums/post8831.html#p8831</link>
			<description><![CDATA[<p>Hi ah346743, </p><p>To better help you, can you let me know what platform you building on?&nbsp; For example, is this an STM32CubeIDE project? </p><p>Warm regards, Anthony</p>]]></description>
			<author><![CDATA[null@example.com (anthony)]]></author>
			<pubDate>Thu, 11 Jun 2026 13:29:16 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/post8831.html#p8831</guid>
		</item>
		<item>
			<title><![CDATA[wolfSSL with wolfIP]]></title>
			<link>https://www.wolfssl.com/forums/post8830.html#p8830</link>
			<description><![CDATA[<p>I&#039;m experimenting with using wolfSSL and wolfIP. When calling wolfSSL_connect() I get a failure with the log message &quot;Your IO Send callback is null, please set&quot;.</p><p>I can see this is something to do with wolfSSL_SetIOWriteCTX(), but I&#039;m not entirely sure what value to use - I&#039;m a novice with wolfSSL. </p><p>Are there specific values I should set to link the two components together?</p>]]></description>
			<author><![CDATA[null@example.com (ah346743)]]></author>
			<pubDate>Thu, 11 Jun 2026 12:11:55 +0000</pubDate>
			<guid>https://www.wolfssl.com/forums/post8830.html#p8830</guid>
		</item>
	</channel>
</rss>
