sgsn: Store SGSN-side control + user plane IP addresses

Change-Id: Ic82910917167e667cfb26eb084f237140b4c986e
diff --git a/sgsn/SGSN_Tests.ttcn b/sgsn/SGSN_Tests.ttcn
index 988ece1..6b36bc2 100644
--- a/sgsn/SGSN_Tests.ttcn
+++ b/sgsn/SGSN_Tests.ttcn
@@ -769,9 +769,10 @@
 	octetstring		ggsn_ip_c,
 	octetstring		ggsn_ip_u,
 
-	GtpPeer			sgsn,
 	OCT4			sgsn_tei_c optional,
-	OCT4			sgsn_tei_u optional
+	OCT4			sgsn_tei_u optional,
+	octetstring		sgsn_ip_c optional,
+	octetstring		sgsn_ip_u optional
 };
 
 function f_pdp_ctx_act(PdpActPars apars) runs on BSSGP_ConnHdlr {
@@ -786,6 +787,8 @@
 			var GTPC_PDUs gtpc_rx := g_ud.gtpc.gtpc_pdu;
 			apars.sgsn_tei_c := gtpc_rx.createPDPContextRequest.teidControlPlane.teidControlPlane;
 			apars.sgsn_tei_u := gtpc_rx.createPDPContextRequest.teidDataI.teidDataI;
+			apars.sgsn_ip_c := gtpc_rx.createPDPContextRequest.sgsn_addr_signalling.addressf;
+			apars.sgsn_ip_u := gtpc_rx.createPDPContextRequest.sgsn_addr_traffic.addressf;
 			var OCT1 cause := int2oct(128, 1);
 			GTP.send(ts_GTPC_CreatePdpResp(g_ud.peer, seq_nr,
 							apars.sgsn_tei_c, cause,
@@ -875,9 +878,10 @@
 	ggsn_ip_c := '7F000001'O,
 	ggsn_ip_u := '7F000001'O,
 
-	sgsn := { },
 	sgsn_tei_c := omit,
-	sgsn_tei_u := omit
+	sgsn_tei_u := omit,
+	sgsn_ip_c := omit,
+	sgsn_ip_u := omit
 }
 
 private function f_TC_attach_pdp_act(charstring id) runs on BSSGP_ConnHdlr {