From: Seonah Moon Date: Tue, 27 Aug 2024 07:46:40 +0000 (+0900) Subject: Fix thread-safety issue X-Git-Tag: accepted/tizen/unified/20241011.010700^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fheads%2Faccepted%2Ftizen_unified_toolchain;p=platform%2Fcore%2Fapi%2Fnsd.git Fix thread-safety issue Change-Id: I8b23fb9836f1acbfc191fd3bdb85789dca9e5a35 --- diff --git a/src/dns-sd/dns-sd.c b/src/dns-sd/dns-sd.c index 8f40f2f..b1922d8 100644 --- a/src/dns-sd/dns-sd.c +++ b/src/dns-sd/dns-sd.c @@ -1350,7 +1350,7 @@ static int __dnssd_getaddrinfo(dnssd_handle_s *dnssd_handle, unsigned int flags, return DNSSD_ERROR_OPERATION_FAILED; } - if (!local_handle) { + if (!local_handle || __dnssd_check_handle_validity(local_handle) == false) { DNSSD_LOGE("Failed to get local_handle"); return DNSSD_ERROR_OUT_OF_MEMORY; } @@ -1404,6 +1404,12 @@ static void __dnssd_resolve_reply_cb(DNSServiceRef sd_ref, unsigned int flags, return; } + if (__dnssd_check_resolve_reply_data_validity(resolve_data) == NULL) { + DNSSD_LOGD("Invalid resolve_data[%p]", resolve_data); + DNSSD_UNLOCK; + return; + } + /* Get Address Info details and send browse callback */ __dnssd_getaddrinfo(resolve_data->dnssd_handle, flags, if_index, host_name, resolve_data->service_name, fullname,