Topics

DHCPV4 and CONFIG_NET_SOCKETS_SOCKOPT_TLS


Denv E
 

Hi,

using zephyr-v2.1.0

I have build the mqtt_publisher sample application for the stm32f746g_disco and it works fine.

I have build the dhcpv4_client sample application for the stm32f746g_disco and it works fine.

When I want to combine both, mqtts and dhcpv4, the dhcpv4 is always timing out.

I have tried step by step.

Using dhcpv4_client sample:

add to prj.conf

# Enable Sockets support
CONFIG_NET_SOCKETS=y
CONFIG_NET_SOCKETS_SOCKOPT_TLS=y

Then the application is no longer compiling:

zephyr/subsys/net/lib/sockets/sockets_tls.c:1735:45: error: 'struct tls_context' has no member named 'ssl'

Does sock_opt_tls is depending on mbedtls? In the guiconfig there is no dependency mentioned between CONFIG_NET_SOCKETS_SOCKOPT_TLS and CONFIG_MBEDTLS.
The sockets_tls uses different mbedtls defines.

What is the correct solution for this problem?

kr,

Wim



Jukka Rissanen
 

Hi,

the DHCPv4 code does not really timeout, there is exponential backoff so the system will try to get the IP address as long as needed.

For the socket TLS error, you need to enable also mbedTLS as that is used to implement the actual TLS support.

Cheers,
Jukka


On Tue, 2020-01-07 at 17:15 +0100, Denv E wrote:
Hi,

using zephyr-v2.1.0

I have build the mqtt_publisher sample application for the stm32f746g_disco and it works fine.

I have build the dhcpv4_client sample application for the stm32f746g_disco and it works fine.

When I want to combine both, mqtts and dhcpv4, the dhcpv4 is always timing out.

I have tried step by step.

Using dhcpv4_client sample:

add to prj.conf

# Enable Sockets support
CONFIG_NET_SOCKETS=y
CONFIG_NET_SOCKETS_SOCKOPT_TLS=y

Then the application is no longer compiling:

zephyr/subsys/net/lib/sockets/sockets_tls.c:1735:45: error: 'struct tls_context' has no member named 'ssl'

Does sock_opt_tls is depending on mbedtls? In the guiconfig there is no dependency mentioned between CONFIG_NET_SOCKETS_SOCKOPT_TLS and CONFIG_MBEDTLS.
The sockets_tls uses different mbedtls defines.

What is the correct solution for this problem?

kr,

Wim