diff --git a/openbsc/src/ipaccess/ipaccess-find.c b/openbsc/src/ipaccess/ipaccess-find.c
index c8de157..40729fa 100644
--- a/openbsc/src/ipaccess/ipaccess-find.c
+++ b/openbsc/src/ipaccess/ipaccess-find.c
@@ -28,7 +28,8 @@
 
 #include <osmocom/core/select.h>
 #include <osmocom/core/timer.h>
-#include <openbsc/ipaccess.h>
+#include <osmocom/gsm/protocol/ipaccess.h>
+#include <osmocom/gsm/ipa.h>
 #include <openbsc/gsm_data.h>
 
 static int udp_sock(const char *ifname)
@@ -118,7 +119,7 @@
 		t_len = *cur++;
 		t_tag = *cur++;
 		
-		printf("%s='%s'  ", ipaccess_idtag_name(t_tag), cur);
+		printf("%s='%s'  ", ipa_ccm_idtag_name(t_tag), cur);
 
 		cur += t_len;
 	}
diff --git a/openbsc/src/ipaccess/ipaccess-proxy.c b/openbsc/src/ipaccess/ipaccess-proxy.c
index 39a0d8b..ab43b9e 100644
--- a/openbsc/src/ipaccess/ipaccess-proxy.c
+++ b/openbsc/src/ipaccess/ipaccess-proxy.c
@@ -42,7 +42,9 @@
 #include <osmocom/core/select.h>
 #include <osmocom/gsm/tlv.h>
 #include <osmocom/core/msgb.h>
+#include <osmocom/gsm/ipa.h>
 #include <osmocom/abis/ipa.h>
+#include <osmocom/abis/ipaccess.h>
 #include <openbsc/debug.h>
 #include <openbsc/ipaccess.h>
 #include <openbsc/socket.h>
@@ -444,7 +446,7 @@
 
 	switch (msg_type) {
 	case IPAC_MSGT_PING:
-		ret = ipaccess_send_pong(bfd->fd);
+		ret = ipa_ccm_send_pong(bfd->fd);
 		break;
 	case IPAC_MSGT_PONG:
 		DEBUGP(DLMI, "PONG!\n");
@@ -452,7 +454,7 @@
 	case IPAC_MSGT_ID_RESP:
 		DEBUGP(DLMI, "ID_RESP ");
 		/* parse tags, search for Unit ID */
-		ipaccess_idtag_parse(&tlvp, (uint8_t *)msg->l2h + 2,
+		ipa_ccm_idtag_parse(&tlvp, (uint8_t *)msg->l2h + 2,
 				     msgb_l2len(msg)-2);
 		DEBUGP(DLMI, "\n");
 
@@ -463,7 +465,7 @@
 
 		/* lookup BTS, create sign_link, ... */
 		memset(&unit_data, 0, sizeof(unit_data));
-		ipaccess_parse_unitid((char *)TLVP_VAL(&tlvp, IPAC_IDTAG_UNIT),
+		ipa_parse_unitid((char *)TLVP_VAL(&tlvp, IPAC_IDTAG_UNIT),
 				      &unit_data);
 		ipbc = find_bts_by_unitid(ipp, unit_data.site_id, unit_data.bts_id);
 		if (!ipbc) {
@@ -528,7 +530,7 @@
 		break;
 	case IPAC_MSGT_ID_ACK:
 		DEBUGP(DLMI, "ID_ACK? -> ACK!\n");
-		ret = ipaccess_send_id_ack(bfd->fd);
+		ret = ipa_ccm_send_id_ack(bfd->fd);
 		break;
 	default:
 		LOGP(DLMI, LOGL_ERROR, "Unhandled IPA type; %d\n", msg_type);
@@ -935,7 +937,7 @@
 	}
 
 	/* Request ID. FIXME: request LOCATION, HW/SW VErsion, Unit Name, Serno */
-	ret = ipaccess_send_id_req(bfd->fd);
+	ret = ipa_ccm_send_id_req(bfd->fd);
 
 	return 0;
 }
diff --git a/openbsc/src/libbsc/bts_ipaccess_nanobts.c b/openbsc/src/libbsc/bts_ipaccess_nanobts.c
index c254127..fc7bf28 100644
--- a/openbsc/src/libbsc/bts_ipaccess_nanobts.c
+++ b/openbsc/src/libbsc/bts_ipaccess_nanobts.c
@@ -35,6 +35,7 @@
 #include <openbsc/abis_rsl.h>
 #include <openbsc/debug.h>
 #include <osmocom/abis/subchan_demux.h>
+#include <osmocom/gsm/ipa.h>
 #include <osmocom/abis/ipaccess.h>
 #include <osmocom/core/logging.h>
 
diff --git a/openbsc/src/osmo-bsc/osmo_bsc_msc.c b/openbsc/src/osmo-bsc/osmo_bsc_msc.c
index 0acc290..3de5c44 100644
--- a/openbsc/src/osmo-bsc/osmo_bsc_msc.c
+++ b/openbsc/src/osmo-bsc/osmo_bsc_msc.c
@@ -171,7 +171,7 @@
  */
 int msc_queue_write(struct bsc_msc_connection *conn, struct msgb *msg, int proto)
 {
-	ipaccess_prepend_header(msg, proto);
+	ipa_prepend_header(msg, proto);
 	if (osmo_wqueue_enqueue(&conn->write_queue, msg) != 0) {
 		LOGP(DMSC, LOGL_FATAL, "Failed to queue IPA/%d\n", proto);
 		msgb_free(msg);
@@ -274,7 +274,7 @@
 	/* initialize the networking. This includes sending a GSM08.08 message */
 	msg->cb[0] = (unsigned long) data;
 	if (hh->proto == IPAC_PROTO_IPACCESS) {
-		ipaccess_rcvmsg_base(msg, bfd);
+		ipa_ccm_rcvmsg_base(msg, bfd);
 		if (msg->l2h[0] == IPAC_MSGT_ID_ACK)
 			initialize_if_needed(data->msc_con);
 		else if (msg->l2h[0] == IPAC_MSGT_ID_GET) {
@@ -401,7 +401,7 @@
 	}
 
 	lac->nr_extra_lacs = lacs - 1;
-	ipaccess_prepend_header_ext(msg, IPAC_PROTO_EXT_LAC);
+	ipa_prepend_header_ext(msg, IPAC_PROTO_EXT_LAC);
 	msc_queue_write(conn, msg, IPAC_PROTO_OSMO);
 }
 
diff --git a/openbsc/src/osmo-bsc_nat/bsc_nat.c b/openbsc/src/osmo-bsc_nat/bsc_nat.c
index 1aef27e..4b0165c 100644
--- a/openbsc/src/osmo-bsc_nat/bsc_nat.c
+++ b/openbsc/src/osmo-bsc_nat/bsc_nat.c
@@ -243,7 +243,7 @@
 	if (!msg)
 		return;
 
-	ipaccess_prepend_header(msg, IPAC_PROTO_SCCP);
+	ipa_prepend_header(msg, IPAC_PROTO_SCCP);
 	queue_for_msc(conn->msc_con, msg);
 }
 
@@ -319,7 +319,7 @@
 	rlc->destination_local_reference = *dst;
 	rlc->source_local_reference = *src;
 
-	ipaccess_prepend_header(msg, IPAC_PROTO_SCCP);
+	ipa_prepend_header(msg, IPAC_PROTO_SCCP);
 
 	queue_for_msc(msc_con, msg);
 }
@@ -335,7 +335,7 @@
 
 void bsc_nat_send_mgcp_to_msc(struct bsc_nat *nat, struct msgb *msg)
 {
-	ipaccess_prepend_header(msg, IPAC_PROTO_MGCP_OLD);
+	ipa_prepend_header(msg, IPAC_PROTO_MGCP_OLD);
 	queue_for_msc(nat->msc_con, msg);
 }
 
@@ -359,7 +359,7 @@
 	if (!msg)
 		return;
 
-	ipaccess_prepend_header(msg, IPAC_PROTO_IPACCESS);
+	ipa_prepend_header(msg, IPAC_PROTO_IPACCESS);
 	queue_for_msc(msc_con, msg);
 }
 
@@ -433,7 +433,7 @@
 	if (!rlsd)
 		LOGP(DNAT, LOGL_ERROR, "Failed to create RLSD message.\n");
 	else {
-		ipaccess_prepend_header(rlsd, IPAC_PROTO_SCCP);
+		ipa_prepend_header(rlsd, IPAC_PROTO_SCCP);
 		queue_for_msc(con->msc_con, rlsd);
 	}
 	con->con_local = NAT_CON_END_LOCAL;
@@ -828,7 +828,7 @@
 
 	/* initialize the networking. This includes sending a GSM08.08 message */
 	if (hh->proto == IPAC_PROTO_IPACCESS) {
-		ipaccess_rcvmsg_base(msg, bfd);
+		ipa_ccm_rcvmsg_base(msg, bfd);
 		if (msg->l2h[0] == IPAC_MSGT_ID_ACK)
 			initialize_msc_if_needed(msc_con);
 		else if (msg->l2h[0] == IPAC_MSGT_ID_GET)
@@ -1180,7 +1180,7 @@
 		if (msg->l2h[0] == IPAC_MSGT_ID_RESP) {
 			struct tlv_parsed tvp;
 			int ret;
-			ret = ipaccess_idtag_parse(&tvp,
+			ret = ipa_ccm_idtag_parse(&tvp,
 					     (unsigned char *) msg->l2h + 2,
 					     msgb_l2len(msg) - 2);
 			if (ret < 0) {
diff --git a/openbsc/src/osmo-bsc_nat/bsc_nat_rewrite.c b/openbsc/src/osmo-bsc_nat/bsc_nat_rewrite.c
index 54fc573..ca5670c 100644
--- a/openbsc/src/osmo-bsc_nat/bsc_nat_rewrite.c
+++ b/openbsc/src/osmo-bsc_nat/bsc_nat_rewrite.c
@@ -32,6 +32,7 @@
 #include <osmocom/core/linuxlist.h>
 #include <osmocom/core/talloc.h>
 #include <osmocom/gsm/gsm0808.h>
+#include <osmocom/gsm/ipa.h>
 
 #include <osmocom/gsm/protocol/gsm_08_08.h>
 #include <osmocom/gsm/protocol/gsm_04_11.h>
@@ -614,7 +615,7 @@
 		return msg;
 	}
 
-	ipaccess_prepend_header(sccp, IPAC_PROTO_SCCP);
+	ipa_prepend_header(sccp, IPAC_PROTO_SCCP);
 
 	/* the parsed hangs off from msg but it needs to survive */
 	talloc_steal(sccp, parsed);
diff --git a/openbsc/src/osmo-bsc_nat/bsc_nat_utils.c b/openbsc/src/osmo-bsc_nat/bsc_nat_utils.c
index 236a0fb..14ea308 100644
--- a/openbsc/src/osmo-bsc_nat/bsc_nat_utils.c
+++ b/openbsc/src/osmo-bsc_nat/bsc_nat_utils.c
@@ -32,6 +32,7 @@
 #include <osmocom/core/linuxlist.h>
 #include <osmocom/core/talloc.h>
 #include <osmocom/gsm/gsm0808.h>
+#include <osmocom/gsm/ipa.h>
 
 #include <osmocom/gsm/protocol/gsm_08_08.h>
 #include <osmocom/gsm/protocol/gsm_04_11.h>
@@ -347,7 +348,7 @@
 int bsc_do_write(struct osmo_wqueue *queue, struct msgb *msg, int proto)
 {
 	/* prepend the header */
-	ipaccess_prepend_header(msg, proto);
+	ipa_prepend_header(msg, proto);
 	return bsc_write_msg(queue, msg);
 }
 
diff --git a/openbsc/src/osmo-bsc_nat/bsc_ussd.c b/openbsc/src/osmo-bsc_nat/bsc_ussd.c
index 5f073bf..ac5a9f5 100644
--- a/openbsc/src/osmo-bsc_nat/bsc_ussd.c
+++ b/openbsc/src/osmo-bsc_nat/bsc_ussd.c
@@ -29,6 +29,7 @@
 #include <osmocom/gsm/gsm0480.h>
 #include <osmocom/core/talloc.h>
 #include <osmocom/gsm/tlv.h>
+#include <osmocom/gsm/ipa.h>
 
 #include <osmocom/sccp/sccp.h>
 
@@ -140,7 +141,7 @@
 		if (msg->l2h[0] == IPAC_MSGT_ID_RESP) {
 			struct tlv_parsed tvp;
 			int ret;
-			ret = ipaccess_idtag_parse(&tvp,
+			ret = ipa_ccm_idtag_parse(&tvp,
 					     (unsigned char *) msg->l2h + 2,
 					     msgb_l2len(msg) - 2);
 			if (ret < 0) {
