summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlex Kiernan <alex.kiernan@gmail.com>2025-05-27 13:27:59 +0000
committerKhem Raj <raj.khem@gmail.com>2025-05-28 08:55:15 -0700
commitd106898fbf0e04eb9e9a1d5bf3f337e62b4b65b3 (patch)
treeeed9f7bd628b66a1c45410cceea29e0cc3ca5d2f
parentecab93be0dbdf86b924f0ae9026c3145c489ab30 (diff)
downloadmeta-openembedded-d106898fbf0e04eb9e9a1d5bf3f337e62b4b65b3.tar.gz
mdns: Upgrade 2600.100.147 -> 2600.120.12
Drop redundant limit declaration patch. Swap issetugid()/getenv() call for secure_getenv() on Linux. Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r--meta-networking/recipes-protocols/mdns/mdns/0001-Use-secure_getenv-on-Linux.patch30
-rw-r--r--meta-networking/recipes-protocols/mdns/mdns/0005-Fix-missing-limit-declarations.patch49
-rw-r--r--meta-networking/recipes-protocols/mdns/mdns_2600.120.12.bb (renamed from meta-networking/recipes-protocols/mdns/mdns_2600.100.147.bb)6
3 files changed, 33 insertions, 52 deletions
diff --git a/meta-networking/recipes-protocols/mdns/mdns/0001-Use-secure_getenv-on-Linux.patch b/meta-networking/recipes-protocols/mdns/mdns/0001-Use-secure_getenv-on-Linux.patch
new file mode 100644
index 0000000000..242aa7f7d8
--- /dev/null
+++ b/meta-networking/recipes-protocols/mdns/mdns/0001-Use-secure_getenv-on-Linux.patch
@@ -0,0 +1,30 @@
1From 1bf3be6cd775635aed95689f97a13fa6a037c741 Mon Sep 17 00:00:00 2001
2From: Alex Kiernan <alex.kiernan@gmail.com>
3Date: Tue, 27 May 2025 13:33:30 +0100
4Subject: [PATCH] Use secure_getenv on Linux
5
6Upstream-Status: Inactive-Upstream [Upstream does not take patches]
7Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
8---
9 mDNSShared/dnssd_clientstub.c | 4 ++++
10 1 file changed, 4 insertions(+)
11
12diff --git a/mDNSShared/dnssd_clientstub.c b/mDNSShared/dnssd_clientstub.c
13index 6667276ee33a..e7b51813664e 100644
14--- a/mDNSShared/dnssd_clientstub.c
15+++ b/mDNSShared/dnssd_clientstub.c
16@@ -801,10 +801,14 @@ static DNSServiceErrorType ConnectToServer(DNSServiceRef *ref, DNSServiceFlags f
17 #endif
18 #ifndef USE_TCP_LOOPBACK
19 char* uds_serverpath = NULL;
20+#ifdef TARGET_OS_LINUX
21+ uds_serverpath = secure_getenv(MDNS_UDS_SERVERPATH_ENVVAR);
22+#else
23 if (!issetugid())
24 {
25 uds_serverpath = getenv(MDNS_UDS_SERVERPATH_ENVVAR);
26 }
27+#endif
28 if (uds_serverpath == NULL)
29 uds_serverpath = MDNS_UDS_SERVERPATH;
30 else if (strlen(uds_serverpath) >= MAX_CTLPATH)
diff --git a/meta-networking/recipes-protocols/mdns/mdns/0005-Fix-missing-limit-declarations.patch b/meta-networking/recipes-protocols/mdns/mdns/0005-Fix-missing-limit-declarations.patch
deleted file mode 100644
index 41b8985e27..0000000000
--- a/meta-networking/recipes-protocols/mdns/mdns/0005-Fix-missing-limit-declarations.patch
+++ /dev/null
@@ -1,49 +0,0 @@
1From 34285024531adbbc7b67506c9fc2e60f3b36b73b Mon Sep 17 00:00:00 2001
2From: Alex Kiernan <alexk@zuma.ai>
3Date: Sat, 26 Oct 2024 13:26:09 +0000
4Subject: [PATCH] Fix missing `limit` declarations
5
6`put_attribute_tlvs` needs a limit setting which is missing, add it in.
7
8Upstream-Status: Inactive-Upstream [Upstream does not take patches]
9Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
10---
11 mDNSShared/dnssd_clientstub.c | 4 ++++
12 1 file changed, 4 insertions(+)
13
14diff --git a/mDNSShared/dnssd_clientstub.c b/mDNSShared/dnssd_clientstub.c
15index 89cb90d947c7..316fc49ab078 100644
16--- a/mDNSShared/dnssd_clientstub.c
17+++ b/mDNSShared/dnssd_clientstub.c
18@@ -2026,6 +2026,7 @@ DNSServiceErrorType DNSServiceRegisterInternal
19 ipc_msg_hdr *hdr;
20 DNSServiceErrorType err;
21 union { uint16_t s; u_char b[2]; } port = { portInNetworkByteOrder };
22+ const uint8_t *limit;
23 (void)attr;
24
25 if (!sdRef || !regtype) return kDNSServiceErr_BadParam;
26@@ -2050,6 +2051,7 @@ DNSServiceErrorType DNSServiceRegisterInternal
27 if (!hdr) { DNSServiceRefDeallocate(*sdRef); *sdRef = NULL; return kDNSServiceErr_NoMemory; }
28 if (!callBack) hdr->ipc_flags |= IPC_FLAGS_NOREPLY;
29
30+ limit = ptr + len;
31 put_flags(flags, &ptr);
32 put_uint32(interfaceIndex, &ptr);
33 put_string(name, &ptr);
34@@ -2326,6 +2328,7 @@ DNSServiceErrorType DNSServiceRegisterRecordInternal
35 ipc_msg_hdr *hdr = NULL;
36 DNSRecordRef rref = NULL;
37 DNSRecord **p;
38+ const uint8_t *limit;
39 (void)attr;
40
41 // Verify that only one of the following flags is set.
42@@ -2375,6 +2378,7 @@ DNSServiceErrorType DNSServiceRegisterRecordInternal
43 hdr = create_hdr(reg_record_request, &len, &ptr, !(flags & kDNSServiceFlagsQueueRequest), sdRef);
44 if (!hdr) return kDNSServiceErr_NoMemory;
45
46+ limit = ptr + len;
47 put_flags(flags, &ptr);
48 put_uint32(interfaceIndex, &ptr);
49 put_string(fullname, &ptr);
diff --git a/meta-networking/recipes-protocols/mdns/mdns_2600.100.147.bb b/meta-networking/recipes-protocols/mdns/mdns_2600.120.12.bb
index af1400ca6e..b6efa528d4 100644
--- a/meta-networking/recipes-protocols/mdns/mdns_2600.100.147.bb
+++ b/meta-networking/recipes-protocols/mdns/mdns_2600.120.12.bb
@@ -13,12 +13,12 @@ SRC_URI = "git://github.com/apple-oss-distributions/mDNSResponder;protocol=https
13 file://0005-mDNSCore-Fix-broken-debug-parameter.patch \ 13 file://0005-mDNSCore-Fix-broken-debug-parameter.patch \
14 file://0006-make-Add-top-level-Makefile.patch \ 14 file://0006-make-Add-top-level-Makefile.patch \
15 file://0009-remove-unneeded-headers.patch \ 15 file://0009-remove-unneeded-headers.patch \
16 file://0005-Fix-missing-limit-declarations.patch \
17 file://0001-Fix-build-with-gcc-15.patch \ 16 file://0001-Fix-build-with-gcc-15.patch \
17 file://0001-Use-secure_getenv-on-Linux.patch \
18 file://mdns.service \ 18 file://mdns.service \
19 " 19 "
20BRANCH = "main" 20BRANCH = "rel/mDNSResponder-2600"
21SRCREV = "d89f8d1d0e001b810d6c055aa2a57b768bcf9aa2" 21SRCREV = "3a0deda2995d98243dae379bcec10e57928c15e8"
22 22
23# We install a stub Makefile in the top directory so that the various checks 23# We install a stub Makefile in the top directory so that the various checks
24# in base.bbclass pass their tests for a Makefile, this ensures (that amongst 24# in base.bbclass pass their tests for a Makefile, this ensures (that amongst