mdnsresponder: bump to 878.70.2 and refresh patches

Signed-off-by: Jacob Siverskog <jacob@teenage.engineering>
This commit is contained in:
Jacob Siverskog
2018-10-18 15:12:17 +02:00
parent 8a11db3946
commit 0138a8c35c
5 changed files with 33 additions and 147 deletions
+22 -124
View File
@@ -1,10 +1,5 @@
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,4 @@
+Clients/build
+mDNSPosix/build
+mDNSPosix/objects
+
diff --git a/Clients/Makefile b/Clients/Makefile
index 383af31..925c20e 100755
--- a/Clients/Makefile
+++ b/Clients/Makefile
@@ -36,7 +36,7 @@ TARGETS = build/dns-sd build/dns-sd64
@@ -16,6 +11,8 @@
endif
all: $(TARGETS)
diff --git a/mDNSPosix/PosixDaemon.c b/mDNSPosix/PosixDaemon.c
index 88b3292..e86a6c7 100644
--- a/mDNSPosix/PosixDaemon.c
+++ b/mDNSPosix/PosixDaemon.c
@@ -37,6 +37,11 @@
@@ -81,50 +78,11 @@
if (mStatus_NoError == err)
err = MainLoop(&mDNSStorage);
--- a/mDNSPosix/Responder.c
+++ b/mDNSPosix/Responder.c
@@ -603,7 +603,8 @@ static mStatus RegisterServicesInFile(co
status = mStatus_UnknownErr;
}
- assert(0 == fclose(fp));
+ int rv = fclose(fp);
+ assert(0 == rv);
return status;
}
diff --git a/mDNSPosix/mDNSPosix.c b/mDNSPosix/mDNSPosix.c
index 6effa12..7c1d6eb 100755
--- a/mDNSPosix/mDNSPosix.c
+++ b/mDNSPosix/mDNSPosix.c
@@ -138,7 +138,7 @@ mDNSlocal void SockAddrTomDNSAddr(const
// mDNS core calls this routine when it needs to send a packet.
mDNSexport mStatus mDNSPlatformSendUDP(const mDNS *const m, const void *const msg, const mDNSu8 *const end,
- mDNSInterfaceID InterfaceID, UDPSocket *src, const mDNSAddr *dst,
+ mDNSInterfaceID InterfaceID, UDPSocket *src, const mDNSAddr *dst,
mDNSIPPort dstPort, mDNSBool useBackgroundTrafficClass)
{
int err = 0;
@@ -583,9 +583,17 @@ mDNSlocal void FreePosixNetworkInterface
{
assert(intf != NULL);
if (intf->intfName != NULL) free((void *)intf->intfName);
- if (intf->multicastSocket4 != -1) assert(close(intf->multicastSocket4) == 0);
+ if (intf->multicastSocket4 != -1)
+ {
+ int rv = close(intf->multicastSocket4);
+ assert(rv == 0);
+ }
#if HAVE_IPV6
- if (intf->multicastSocket6 != -1) assert(close(intf->multicastSocket6) == 0);
+ if (intf->multicastSocket6 != -1)
+ {
+ int rv = close(intf->multicastSocket6);
+ assert(rv == 0);
+ }
#endif
// Move interface to the RecentInterfaces list for a minute
@@ -724,6 +732,29 @@ mDNSlocal int SetupSocket(struct sockadd
@@ -733,6 +741,29 @@ mDNSlocal int SetupSocket(struct sockaddr *intfAddr, mDNSIPPort port, int interf
if (err < 0) { err = errno; perror("setsockopt - IP_MULTICAST_TTL"); }
}
@@ -154,7 +112,7 @@
// And start listening for packets
if (err == 0)
{
@@ -805,6 +836,29 @@ mDNSlocal int SetupSocket(struct sockadd
@@ -814,6 +845,29 @@ mDNSlocal int SetupSocket(struct sockaddr *intfAddr, mDNSIPPort port, int interf
if (err < 0) { err = errno; perror("setsockopt - IPV6_MULTICAST_HOPS"); }
}
@@ -184,21 +142,7 @@
// And start listening for packets
if (err == 0)
{
@@ -836,7 +890,12 @@ mDNSlocal int SetupSocket(struct sockadd
}
// Clean up
- if (err != 0 && *sktPtr != -1) { assert(close(*sktPtr) == 0); *sktPtr = -1; }
+ if (err != 0 && *sktPtr != -1)
+ {
+ int rv = close(*sktPtr);
+ assert(rv == 0);
+ *sktPtr = -1;
+ }
assert((err == 0) == (*sktPtr != -1));
return err;
}
@@ -942,19 +1001,14 @@ mDNSlocal int SetupInterfaceList(mDNS *c
@@ -958,19 +1017,14 @@ mDNSlocal int SetupInterfaceList(mDNS *const m)
int err = 0;
struct ifi_info *intfList = get_ifi_info(AF_INET, mDNStrue);
struct ifi_info *firstLoopback = NULL;
@@ -221,7 +165,7 @@
#endif
if (err == 0)
@@ -1030,7 +1084,7 @@ mDNSlocal mStatus OpenIfNotifySocket(int
@@ -1046,7 +1100,7 @@ mDNSlocal mStatus OpenIfNotifySocket(int *pFD)
/* Subscribe the socket to Link & IP addr notifications. */
mDNSPlatformMemZero(&snl, sizeof snl);
snl.nl_family = AF_NETLINK;
@@ -230,7 +174,7 @@
ret = bind(sock, (struct sockaddr *) &snl, sizeof snl);
if (0 == ret)
*pFD = sock;
@@ -1108,11 +1162,18 @@ mDNSlocal mDNSu32 ProcessRoutingNo
@@ -1124,11 +1178,18 @@ mDNSlocal mDNSu32 ProcessRoutingNotification(int sd)
PrintNetLinkMsg(pNLMsg);
#endif
@@ -251,7 +195,7 @@
// Advance pNLMsg to the next message in the buffer
if ((pNLMsg->nlmsg_flags & NLM_F_MULTI) != 0 && pNLMsg->nlmsg_type != NLMSG_DONE)
@@ -1283,8 +1344,12 @@ mDNSexport mStatus mDNSPlatformInit(mDNS
@@ -1299,8 +1360,12 @@ mDNSexport mStatus mDNSPlatformInit(mDNS *const m)
if (err == mStatus_NoError) err = SetupSocket(&sa, zeroIPPort, 0, &m->p->unicastSocket6);
#endif
@@ -264,43 +208,8 @@
// Tell mDNS core about DNS Servers
mDNS_Lock(m);
@@ -1317,9 +1382,17 @@ mDNSexport void mDNSPlatformClose(mDNS *
{
assert(m != NULL);
ClearInterfaceList(m);
- if (m->p->unicastSocket4 != -1) assert(close(m->p->unicastSocket4) == 0);
+ if (m->p->unicastSocket4 != -1)
+ {
+ int rv = close(m->p->unicastSocket4);
+ assert(rv == 0);
+ }
#if HAVE_IPV6
- if (m->p->unicastSocket6 != -1) assert(close(m->p->unicastSocket6) == 0);
+ if (m->p->unicastSocket6 != -1)
+ {
+ int rv = close(m->p->unicastSocket6);
+ assert(rv == 0);
+ }
#endif
}
@@ -1575,14 +1648,14 @@ mDNSexport mStatus mDNSPlatformClearS
mDNSexport mDNSu16 mDNSPlatformGetUDPPort(UDPSocket *sock)
{
(void) sock; // unused
-
+
return (mDNSu16)-1;
}
mDNSexport mDNSBool mDNSPlatformInterfaceIsD2D(mDNSInterfaceID InterfaceID)
{
(void) InterfaceID; // unused
-
+
return mDNSfalse;
}
diff --git a/mDNSPosix/mDNSUNP.c b/mDNSPosix/mDNSUNP.c
index b392fc7..f551ad5 100755
--- a/mDNSPosix/mDNSUNP.c
+++ b/mDNSPosix/mDNSUNP.c
@@ -63,6 +63,7 @@
@@ -311,16 +220,16 @@
/* Converts a prefix length to IPv6 network mask */
void plen_to_mask(int plen, char *addr) {
@@ -86,7 +87,7 @@ struct ifi_info *get_ifi_info_linuxv6(in
FILE *fp;
@@ -86,7 +87,7 @@ struct ifi_info *get_ifi_info_linuxv6(int family, int doaliases)
FILE *fp = NULL;
char addr[8][5];
int flags, myflags, index, plen, scope;
- char ifname[9], lastname[IFNAMSIZ];
+ char ifname[IFNAMSIZ], lastname[IFNAMSIZ];
char addr6[32+7+1]; /* don't forget the seven ':' */
struct addrinfo hints, *res0;
struct sockaddr_in6 *sin6;
@@ -94,7 +95,8 @@ struct ifi_info *get_ifi_info_linuxv6(in
int err;
@@ -92,7 +93,8 @@ struct ifi_info *get_ifi_info_linuxv6(int family, int doaliases)
int err;
int sockfd = -1;
struct ifreq ifr;
@@ -330,7 +239,7 @@
res0=NULL;
ifihead = NULL;
ifipnext = &ifihead;
@@ -106,11 +108,12 @@ struct ifi_info *get_ifi_info_linuxv6(in
@@ -104,11 +106,12 @@ struct ifi_info *get_ifi_info_linuxv6(int family, int doaliases)
goto gotError;
}
while (fscanf(fp,
@@ -344,19 +253,8 @@
myflags = 0;
if (strncmp(lastname, ifname, IFNAMSIZ) == 0) {
if (doaliases == 0)
@@ -204,8 +207,11 @@ gotError:
res0=NULL;
}
done:
+ if (fp)
+ fclose(fp);
if (sockfd != -1) {
- assert(close(sockfd) == 0);
+ int rv = close(sockfd);
+ assert(rv == 0);
}
return(ifihead); /* pointer to first structure in linked list */
}
diff --git a/mDNSShared/dnsextd_parser.y b/mDNSShared/dnsextd_parser.y
index 18c5990..d4b63ce 100644
--- a/mDNSShared/dnsextd_parser.y
+++ b/mDNSShared/dnsextd_parser.y
@@ -15,6 +15,8 @@
@@ -377,7 +275,7 @@
int yylex(void);
@@ -378,7 +380,7 @@ int yywrap(void);
@@ -409,7 +419,7 @@ int yywrap(void);
extern int yylineno;