diff --git a/subsys/net/ip/net_context.c b/subsys/net/ip/net_context.c index 5c8c0fd9733..47b63656c20 100644 --- a/subsys/net/ip/net_context.c +++ b/subsys/net/ip/net_context.c @@ -1153,12 +1153,13 @@ int net_context_connect(struct net_context *context, return ret; } + context->connect_cb = cb; + context->user_data = user_data; + net_context_set_state(context, NET_CONTEXT_CONNECTING); send_syn(context, addr); - context->connect_cb = cb; - context->user_data = user_data; /* in tcp_synack_received() we give back this semaphore */ if (timeout != 0 && k_sem_take(&context->tcp->connect_wait, timeout)) {