Skip to content

Commit fc639b6

Browse files
jukkardkalowsk
authored andcommitted
net: dns: Avoid errors when DNS dispatcher is already registered
Skip error prints and extra DNS events if DNS dispatcher was already registered. Signed-off-by: Jukka Rissanen <[email protected]> (cherry picked from commit c110331)
1 parent 1d44568 commit fc639b6

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

subsys/net/lib/dns/resolve.c

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -477,6 +477,10 @@ static int dns_resolve_init_locked(struct dns_resolve_context *ctx,
477477
ret = register_dispatcher(ctx, &resolve_svc, &ctx->servers[i], local_addr,
478478
addr6, addr4);
479479
if (ret < 0) {
480+
if (ret == -EALREADY) {
481+
goto skip_event;
482+
}
483+
480484
NET_DBG("Cannot register dispatcher for %s (%d)",
481485
ctx->servers[i].is_mdns ? "mDNS" : "DNS", ret);
482486
goto fail;
@@ -491,6 +495,8 @@ static int dns_resolve_init_locked(struct dns_resolve_context *ctx,
491495
net_mgmt_event_notify(NET_EVENT_DNS_SERVER_ADD, iface);
492496
}
493497

498+
skip_event:
499+
494500
#if defined(CONFIG_NET_IPV6)
495501
local_addr6.sin6_port = 0;
496502
#endif

0 commit comments

Comments
 (0)