aboutsummaryrefslogtreecommitdiffstats
path: root/meta-networking/recipes-protocols/mdns/mdns/0009-Fix-possible-NULL-dereference.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-networking/recipes-protocols/mdns/mdns/0009-Fix-possible-NULL-dereference.patch')
-rw-r--r--meta-networking/recipes-protocols/mdns/mdns/0009-Fix-possible-NULL-dereference.patch45
1 files changed, 45 insertions, 0 deletions
diff --git a/meta-networking/recipes-protocols/mdns/mdns/0009-Fix-possible-NULL-dereference.patch b/meta-networking/recipes-protocols/mdns/mdns/0009-Fix-possible-NULL-dereference.patch
new file mode 100644
index 0000000000..362d69768e
--- /dev/null
+++ b/meta-networking/recipes-protocols/mdns/mdns/0009-Fix-possible-NULL-dereference.patch
@@ -0,0 +1,45 @@
+From 38cff19781f81586926b02f0fd1cb36c040395e0 Mon Sep 17 00:00:00 2001
+From: Nate Karstens <nate.karstens@garmin.com>
+Date: Thu, 10 Aug 2017 08:21:53 -0500
+Subject: [PATCH 09/11] Fix possible NULL dereference
+
+Fixes a possible NULL dereference if memory for
+the PosixNetworkInterface could not be allocated.
+Other logic seems to prevent dereferencing this
+variable if NULL, but this instance seems to have
+been overlooked.
+
+Upstream-Status: Submitted [dts@apple.com]
+
+Signed-off-by: Nate Karstens <nate.karstens@garmin.com>
+---
+ mDNSPosix/mDNSPosix.c | 11 +++++++----
+ 1 file changed, 7 insertions(+), 4 deletions(-)
+
+diff --git a/mDNSPosix/mDNSPosix.c b/mDNSPosix/mDNSPosix.c
+index a8a57df..3243ed4 100644
+--- a/mDNSPosix/mDNSPosix.c
++++ b/mDNSPosix/mDNSPosix.c
+@@ -951,12 +951,15 @@ mDNSlocal int SetupOneInterface(mDNS *const m, struct ifi_info *const ifi)
+
+ // If interface is a direct link, address record will be marked as kDNSRecordTypeKnownUnique
+ // and skip the probe phase of the probe/announce packet sequence.
+- intf->coreIntf.DirectLink = mDNSfalse;
++ if (err == 0)
++ {
++ intf->coreIntf.DirectLink = mDNSfalse;
+ #ifdef DIRECTLINK_INTERFACE_NAME
+- if (strcmp(intfName, STRINGIFY(DIRECTLINK_INTERFACE_NAME)) == 0)
+- intf->coreIntf.DirectLink = mDNStrue;
++ if (strcmp(intfName, STRINGIFY(DIRECTLINK_INTERFACE_NAME)) == 0)
++ intf->coreIntf.DirectLink = mDNStrue;
+ #endif
+- intf->coreIntf.SupportsUnicastMDNSResponse = mDNStrue;
++ intf->coreIntf.SupportsUnicastMDNSResponse = mDNStrue;
++ }
+
+ // The interface is all ready to go, let's register it with the mDNS core.
+ if (err == 0)
+--
+2.17.1
+