diff --git a/epdg/EPDG_Tests.ttcn b/epdg/EPDG_Tests.ttcn
index 14bb060..aceedd4 100644
--- a/epdg/EPDG_Tests.ttcn
+++ b/epdg/EPDG_Tests.ttcn
@@ -5,6 +5,7 @@
 import from Native_Functions all;
 import from Osmocom_Types all;
 import from L3_Common all;
+import from DNS_Helpers all;
 
 import from IPA_Emulation all;
 import from GSUP_Types all;
@@ -552,13 +553,17 @@
 /* GSUP AuthInfo Req + Resp, triggers SWx MAR + MAA. */
 private function f_GSUP_AI_success() runs on EPDG_ConnHdlr {
 	var GSUP_PDU rx_gsup;
-	var template (present) GSUP_IE auth_tuple_ie := tr_GSUP_IE_AuthTuple3G(g_pars.vec.rand,
-									       g_pars.vec.ik,
-									       g_pars.vec.ck,
-									       g_pars.vec.autn,
-									       g_pars.vec.rand  & g_pars.vec.auts);
-
-	GSUP.send(ts_GSUP_SAI_REQ(g_pars.imsi));
+	var template (present) GSUP_IE auth_tuple_ie;
+	var template (value) GSUP_IEs pdp_info;
+	auth_tuple_ie := tr_GSUP_IE_AuthTuple3G(g_pars.vec.rand,
+						g_pars.vec.ik,
+						g_pars.vec.ck,
+						g_pars.vec.autn,
+						g_pars.vec.rand & g_pars.vec.auts);
+	pdp_info := { ts_GSUP_IE_PDP_CONTEXT_ID('00'O),
+		      ts_GSUP_IE_PDP_ADDRESS(ts_EuaIPv4Dyn),
+		      ts_GSUP_IE_APN(f_enc_dns_hostname(g_pars.apn)) };
+	GSUP.send(ts_GSUP_SAI_REQ_PDP_INFO(g_pars.imsi, pdp_info));
 	as_DIA_SWx_MA_success();
 	/* Expect a positive response back to the translator; expect AIA */
 	alt {
