ipa: Only use one IPA number for Osmo extensions

Instead of using more numbers from the proto range we will
use the 0xee and then have a mini header with our new proto
id in there. For a start rename the use types to _OLD.
diff --git a/openbsc/src/bsc/osmo_bsc_msc.c b/openbsc/src/bsc/osmo_bsc_msc.c
index 8b23c6f..b0c0044 100644
--- a/openbsc/src/bsc/osmo_bsc_msc.c
+++ b/openbsc/src/bsc/osmo_bsc_msc.c
@@ -67,7 +67,7 @@
         }
 
 	mgcp->l2h = msgb_put(mgcp, ret);
-	msc_queue_write(data->msc_con, mgcp, IPAC_PROTO_MGCP);
+	msc_queue_write(data->msc_con, mgcp, IPAC_PROTO_MGCP_OLD);
 	return 0;
 }
 
@@ -223,7 +223,7 @@
 		}
 	} else if (hh->proto == IPAC_PROTO_SCCP) {
 		sccp_system_incoming(msg);
-	} else if (hh->proto == IPAC_PROTO_MGCP) {
+	} else if (hh->proto == IPAC_PROTO_MGCP_OLD) {
 		mgcp_forward(data, msg);
 	}
 
diff --git a/openbsc/src/nat/bsc_filter.c b/openbsc/src/nat/bsc_filter.c
index f22f5be..73e9878 100644
--- a/openbsc/src/nat/bsc_filter.c
+++ b/openbsc/src/nat/bsc_filter.c
@@ -69,7 +69,7 @@
 	{ IPAC_PROTO_SCCP, ALLOW_ANY, ALLOW_ANY, ALLOW_ANY, FILTER_TO_BOTH },
 
 	/* allow MGCP messages to both sides */
-	{ IPAC_PROTO_MGCP, ALLOW_ANY, ALLOW_ANY, ALLOW_ANY, FILTER_TO_BOTH },
+	{ IPAC_PROTO_MGCP_OLD, ALLOW_ANY, ALLOW_ANY, ALLOW_ANY, FILTER_TO_BOTH },
 };
 
 struct bsc_nat_parsed *bsc_nat_parse(struct msgb *msg)
diff --git a/openbsc/src/nat/bsc_mgcp_utils.c b/openbsc/src/nat/bsc_mgcp_utils.c
index dc8cd81..aacfce6 100644
--- a/openbsc/src/nat/bsc_mgcp_utils.c
+++ b/openbsc/src/nat/bsc_mgcp_utils.c
@@ -303,7 +303,7 @@
 		}
 
 		/* send the message and a fake MDCX to force sending of a dummy packet */
-		bsc_write(sccp->bsc, bsc_msg, IPAC_PROTO_MGCP);
+		bsc_write(sccp->bsc, bsc_msg, IPAC_PROTO_MGCP_OLD);
 		bsc_mgcp_send_mdcx(sccp->bsc, sccp->bsc_endp, mgcp_endp);
 		return MGCP_POLICY_DEFER;
 	} else if (state == MGCP_ENDP_DLCX) {
@@ -312,7 +312,7 @@
 		bsc_mgcp_dlcx(sccp);
 		return MGCP_POLICY_CONT;
 	} else {
-		bsc_write(sccp->bsc, bsc_msg, IPAC_PROTO_MGCP);
+		bsc_write(sccp->bsc, bsc_msg, IPAC_PROTO_MGCP_OLD);
 		return MGCP_POLICY_DEFER;
 	}
 }
diff --git a/openbsc/src/nat/bsc_nat.c b/openbsc/src/nat/bsc_nat.c
index 046f38c..a0bebf1 100644
--- a/openbsc/src/nat/bsc_nat.c
+++ b/openbsc/src/nat/bsc_nat.c
@@ -958,7 +958,7 @@
 			goto exit2;
 			break;
 		}
-        } else if (parsed->ipa_proto == IPAC_PROTO_MGCP) {
+        } else if (parsed->ipa_proto == IPAC_PROTO_MGCP_OLD) {
                 bsc_mgcp_forward(bsc, msg);
                 goto exit2;
 	} else {
diff --git a/openbsc/src/nat/bsc_nat_utils.c b/openbsc/src/nat/bsc_nat_utils.c
index 05868f9..aba082d 100644
--- a/openbsc/src/nat/bsc_nat_utils.c
+++ b/openbsc/src/nat/bsc_nat_utils.c
@@ -262,7 +262,7 @@
 	msg->l3h = msgb_put(msg, length);
 	memcpy(msg->l3h, data, length);
 
-        return bsc_write(bsc, msg, IPAC_PROTO_MGCP);
+        return bsc_write(bsc, msg, IPAC_PROTO_MGCP_OLD);
 }
 
 int bsc_write(struct bsc_connection *bsc, struct msgb *msg, int proto)
diff --git a/openbsc/src/nat/bsc_ussd.c b/openbsc/src/nat/bsc_ussd.c
index 378fbc5..c121abe 100644
--- a/openbsc/src/nat/bsc_ussd.c
+++ b/openbsc/src/nat/bsc_ussd.c
@@ -281,7 +281,7 @@
 	memcpy(copy->l2h, input->l2h, msgb_l2len(input));
 
 	msg->l2h = msgb_put(msg, 1);
-	msg->l2h[0] = IPAC_MSGT_SCCP_STATE;
+	msg->l2h[0] = IPAC_MSGT_SCCP_OLD;
 
 	/* fill out the data */
 	state = (struct ipac_msgt_sccp_state *) msgb_put(msg, sizeof(*state));