add mDNS lookup method to libosmo-mslookup (#2)

Add the first actually useful lookup method to the mslookup library: multicast
DNS.

The server side is added in a subsequent commit, when the mslookup server is
implemented for the osmo-hlr program.

Use custom DNS encoding instead of libc-ares (which we use in OsmoSGSN
already), because libc-ares is only a DNS client implementation and we will
need both client and server.

Resubmit of f10463c5fc6d9e786ab7c648d99f7450f9a25906 after being
reverted in 110a49f69f29fed844d8743b76fd748f4a14812a. This new version
skips the mslookup_client_mdns test if multicast is not supported in the
build environment. I have verified that it doesn't break the build
anymore in my own OBS namespace.

Related: OS#4237, OS#4361
Patch-by: osmith, nhofmeyr
Change-Id: I3c340627181b632dd6a0d577aa2ea2a7cd035c0c
diff --git a/src/mslookup/Makefile.am b/src/mslookup/Makefile.am
index 01be401..07fb6f4 100644
--- a/src/mslookup/Makefile.am
+++ b/src/mslookup/Makefile.am
@@ -10,9 +10,14 @@
 lib_LTLIBRARIES = libosmo-mslookup.la
 
 libosmo_mslookup_la_SOURCES = \
+	mdns.c \
+	mdns_msg.c \
+	mdns_rfc.c \
+	mdns_sock.c \
 	mslookup.c \
 	mslookup_client.c \
 	mslookup_client_fake.c \
+	mslookup_client_mdns.c \
 	$(NULL)
 
 libosmo_mslookup_la_LDFLAGS = -version-info $(LIBVERSION)