diff --git a/src/llc.cpp b/src/llc.cpp
index 524814c..585f656 100644
--- a/src/llc.cpp
+++ b/src/llc.cpp
@@ -74,3 +74,25 @@
 {
 	return msgb_dequeue(&queue);
 }
+
+
+void gprs_llc::calc_pdu_lifetime(BTS *bts, const uint16_t pdu_delay_csec, struct timeval *tv)
+{
+	uint16_t delay_csec;
+	if (bts->bts_data()->force_llc_lifetime)
+		delay_csec = bts->bts_data()->force_llc_lifetime;
+	else
+		delay_csec = pdu_delay_csec;
+
+	/* keep timestap at 0 for infinite delay */
+	if (delay_csec != 0xffff) {
+		/* calculate timestamp of timeout */
+		gettimeofday(tv, NULL);
+		tv->tv_usec += (delay_csec % 100) * 10000;
+		tv->tv_sec += delay_csec / 100;
+		if (tv->tv_usec > 999999) {
+			tv->tv_usec -= 1000000;
+			tv->tv_sec++;
+		}
+	}
+}
diff --git a/src/llc.h b/src/llc.h
index 040ea62..d3b940e 100644
--- a/src/llc.h
+++ b/src/llc.h
@@ -27,6 +27,8 @@
  * I represent the LLC data to a MS
  */
 struct gprs_llc {
+	static void calc_pdu_lifetime(BTS *bts, const uint16_t pdu_delay_csec, struct timeval *tv);
+
 	void init();
 	void reset();
 	void reset_frame_space();
diff --git a/src/tbf.cpp b/src/tbf.cpp
index c636c98..25f31c3 100644
--- a/src/tbf.cpp
+++ b/src/tbf.cpp
@@ -118,23 +118,7 @@
 		if (!llc_msg)
 			return -ENOMEM;
 		tv = (struct timeval *)msgb_put(llc_msg, sizeof(*tv));
-
-		uint16_t delay_csec;
-		if (bts_data()->force_llc_lifetime)
-			delay_csec = bts_data()->force_llc_lifetime;
-		else
-			delay_csec = pdu_delay_csec;
-		/* keep timestap at 0 for infinite delay */
-		if (delay_csec != 0xffff) {
-			/* calculate timestamp of timeout */
-			gettimeofday(tv, NULL);
-			tv->tv_usec += (delay_csec % 100) * 10000;
-			tv->tv_sec += delay_csec / 100;
-			if (tv->tv_usec > 999999) {
-				tv->tv_usec -= 1000000;
-				tv->tv_sec++;
-			}
-		}
+		gprs_llc::calc_pdu_lifetime(bts, pdu_delay_csec, tv);
 		memcpy(msgb_put(llc_msg, len), data, len);
 		m_llc.enqueue(llc_msg);
 		tbf_update_ms_class(this, ms_class);
