Forward GGSN originated DEACT PDP CTX REQ

This commit fixes TTCN3 sgsn test TC_attach_pdp_act_user_deact_mt.

Change-Id: I204209c017aac8a8402cbb8d0a0200540abcc954
diff --git a/src/gprs/gprs_sgsn.c b/src/gprs/gprs_sgsn.c
index ef0cc23..e6d88e3 100644
--- a/src/gprs/gprs_sgsn.c
+++ b/src/gprs/gprs_sgsn.c
@@ -699,17 +699,17 @@
 	return GSM_RESERVED_TMSI;
 }
 
-static void drop_one_pdp(struct sgsn_pdp_ctx *pdp)
+void sgsn_ggsn_ctx_drop_pdp(struct sgsn_pdp_ctx *pctx)
 {
-	if (pdp->mm->gmm_state == GMM_REGISTERED_NORMAL) {
-		gsm48_tx_gsm_deact_pdp_req(pdp, GSM_CAUSE_NET_FAIL, true);
-		sgsn_ggsn_ctx_remove_pdp(pdp->ggsn, pdp);
+	if (pctx->mm->gmm_state == GMM_REGISTERED_NORMAL) {
+		gsm48_tx_gsm_deact_pdp_req(pctx, GSM_CAUSE_NET_FAIL, true);
+		sgsn_ggsn_ctx_remove_pdp(pctx->ggsn, pctx);
 	} else  {
 		/* FIXME: GPRS paging in case MS is SUSPENDED */
-		LOGPDPCTXP(LOGL_NOTICE, pdp, "Hard-dropping PDP ctx due to GGSN "
+		LOGPDPCTXP(LOGL_NOTICE, pctx, "Hard-dropping PDP ctx due to GGSN "
 			"recovery\n");
 		/* FIXME: how to tell this to libgtp? */
-		sgsn_pdp_ctx_free(pdp);
+		sgsn_pdp_ctx_free(pctx);
 	}
 }
 
@@ -721,7 +721,7 @@
 
 	struct sgsn_pdp_ctx *pdp, *pdp2;
 	llist_for_each_entry_safe(pdp, pdp2, &ggsn->pdp_list, ggsn_list) {
-		drop_one_pdp(pdp);
+		sgsn_ggsn_ctx_drop_pdp(pdp);
 		num++;
 	}