MEDIUM: udp: adds minimal proto udp support for message listeners.

This patch introduce proto_udp.c targeting a further support of
log forwarding feature.

This code was originally produced by Frederic Lecaille working on
QUIC support and only minimal requirements for syslog support
have been merged.
diff --git a/src/tools.c b/src/tools.c
index 7f98acf..1c66485 100644
--- a/src/tools.c
+++ b/src/tools.c
@@ -871,6 +871,7 @@
 	char *port1, *port2;
 	int portl, porth, porta;
 	int abstract = 0;
+	int is_udp = 0;
 
 	portl = porth = porta = 0;
 	if (fqdn)
@@ -907,6 +908,21 @@
 		str2 += 5;
 		ss.ss_family = AF_INET6;
 	}
+	else if (strncmp(str2, "udp4@", 5) == 0) {
+		str2 += 5;
+		ss.ss_family = AF_INET;
+		is_udp = 1;
+	}
+	else if (strncmp(str2, "udp6@", 5) == 0) {
+		str2 += 5;
+		ss.ss_family = AF_INET6;
+		is_udp = 1;
+	}
+	else if (strncmp(str2, "udp@", 4) == 0) {
+		str2 += 4;
+		ss.ss_family = AF_UNSPEC;
+		is_udp = 1;
+	}
 	else if (*str2 == '/') {
 		ss.ss_family = AF_UNIX;
 	}
@@ -1037,6 +1053,13 @@
 			}
 		}
 		set_host_port(&ss, porta);
+		if (is_udp) {
+			if (ss.ss_family == AF_INET6)
+				ss.ss_family = AF_CUST_UDP6;
+			else
+				ss.ss_family = AF_CUST_UDP4;
+		}
+
 	}
 
 	ret = &ss;