Add GTP hub initial code base.

First steps towards a new GTP hub. The aim is to mux GTP connections, so that
multiple SGSN <--> GGSN links can pass through a single point. Background:
allow having more than one SGSN, possibly in various remote locations.

The recent addition of OAP to GSUP is related to the same background idea.

(This is a collapsed patch of various changes that do not make sense to review
in chronological order anymore, since a lot of it has thorougly transmorphed
after it was first committed.)

Sponsored-by: On-Waves ehf
diff --git a/openbsc/tests/gtphub/Makefile.am b/openbsc/tests/gtphub/Makefile.am
new file mode 100644
index 0000000..ecc6d62
--- /dev/null
+++ b/openbsc/tests/gtphub/Makefile.am
@@ -0,0 +1,20 @@
+AM_CPPFLAGS = $(all_includes) -I$(top_srcdir)/include
+AM_CFLAGS=-Wall -ggdb3 $(LIBOSMOCORE_CFLAGS)
+
+EXTRA_DIST = \
+	gtphub_test.ok \
+	gtphub_nc_test.sh \
+	gtphub_nc_test.ok \
+	hex2bin.py
+
+noinst_PROGRAMS = gtphub_test
+
+gtphub_test_SOURCES = gtphub_test.c
+gtphub_test_LDFLAGS = \
+	-Wl,--wrap=gtphub_resolve_ggsn_addr
+
+gtphub_test_LDADD = \
+	$(top_builddir)/src/gprs/gtphub.o \
+	$(LIBOSMOCORE_LIBS) \
+	-lgtp -lrt
+