nacc_fsm: Move logic checking if SI is being waited for to a func helper

We already have a similar function for Neighbor Address Resolution.
This way we keep as much as possible internal state related logic into
the nacc_fsm.c file.

Change-Id: I7378939825cc3ec3280f76bc51233c0a172d8a27
diff --git a/src/gprs_bssgp_rim.c b/src/gprs_bssgp_rim.c
index c19ed81..f1679a6 100644
--- a/src/gprs_bssgp_rim.c
+++ b/src/gprs_bssgp_rim.c
@@ -158,13 +158,8 @@
 
 	llist_for_each(tmp, bts_ms_list(bts)) {
 		struct GprsMs *ms = llist_entry(tmp, typeof(*ms), list);
-		if (!ms->nacc)
-			continue;
-		if (ms->nacc->fi->state != NACC_ST_WAIT_REQUEST_SI)
-			continue;
-		if (osmo_cgi_ps_cmp(&nacc->reprt_cell, &ms->nacc->cgi_ps) != 0)
-			continue;
-		osmo_fsm_inst_dispatch(ms->nacc->fi, NACC_EV_RX_SI, entry);
+		if (ms->nacc && nacc_fsm_is_waiting_si_resolution(ms->nacc, &nacc->reprt_cell))
+			osmo_fsm_inst_dispatch(ms->nacc->fi, NACC_EV_RX_SI, entry);
 	}
 	return 0;
 }