diff --git a/openbsc/include/openbsc/bsc_nat.h b/openbsc/include/openbsc/bsc_nat.h
index 6fc0e65..b6d0404 100644
--- a/openbsc/include/openbsc/bsc_nat.h
+++ b/openbsc/include/openbsc/bsc_nat.h
@@ -32,6 +32,7 @@
 #include <osmocore/write_queue.h>
 #include <osmocore/rate_ctr.h>
 #include <osmocore/statistics.h>
+#include <osmocore/protocol/gsm_04_08.h>
 
 #include <regex.h>
 
@@ -315,4 +316,6 @@
 
 int bsc_conn_type_to_ctr(struct sccp_connections *conn);
 
+struct gsm48_hdr *bsc_unpack_dtap(struct bsc_nat_parsed *parsed, struct msgb *msg, uint32_t *len);
+
 #endif
diff --git a/openbsc/src/nat/bsc_nat_utils.c b/openbsc/src/nat/bsc_nat_utils.c
index 674de41..dc18cff 100644
--- a/openbsc/src/nat/bsc_nat_utils.c
+++ b/openbsc/src/nat/bsc_nat_utils.c
@@ -549,6 +549,25 @@
 	}
 }
 
+struct gsm48_hdr *bsc_unpack_dtap(struct bsc_nat_parsed *parsed,
+				  struct msgb *msg, uint32_t *len)
+{
+	/* gsm_type is actually the size of the dtap */
+	*len = parsed->gsm_type;
+	if (*len < msgb_l3len(msg) - 3) {
+		LOGP(DNAT, LOGL_ERROR, "Not enough space for DTAP.\n");
+		return NULL;
+	}
+
+	if (*len < sizeof(struct gsm48_hdr)) {
+		LOGP(DNAT, LOGL_ERROR, "GSM48 header does not fit.\n");
+		return NULL;
+	}
+
+	msg->l4h = &msg->l3h[3];
+	return (struct gsm48_hdr *) msg->l4h;
+}
+
 int bsc_nat_filter_dt(struct bsc_connection *bsc, struct msgb *msg,
 		      struct sccp_connections *con, struct bsc_nat_parsed *parsed)
 {
@@ -563,20 +582,9 @@
 	if (parsed->bssap != BSSAP_MSG_DTAP)
 		return 0;
 
-	/* gsm_type is actually the size of the dtap */
-	len = parsed->gsm_type;
-	if (len < msgb_l3len(msg) - 3) {
-		LOGP(DNAT, LOGL_ERROR, "Not enough space for DTAP.\n");
+	hdr48 = bsc_unpack_dtap(parsed, msg, &len);
+	if (!hdr48)
 		return -1;
-	}
-
-	if (len < sizeof(*hdr48)) {
-		LOGP(DNAT, LOGL_ERROR, "GSM48 header does not fit.\n");
-		return -1;
-	}
-
-	msg->l4h = &msg->l3h[3];
-	hdr48 = (struct gsm48_hdr *) msg->l4h;
 
 	msg_type = hdr48->msg_type & 0xbf;
 	if (hdr48->proto_discr == GSM48_PDISC_MM &&
