diff --git a/openbsc/include/openbsc/osmo_bsc_rf.h b/openbsc/include/openbsc/osmo_bsc_rf.h
index 163e55c..dec9572 100644
--- a/openbsc/include/openbsc/osmo_bsc_rf.h
+++ b/openbsc/include/openbsc/osmo_bsc_rf.h
@@ -6,13 +6,15 @@
 struct gsm_network;
 
 struct osmo_bsc_rf {
+	/* the value of signal.h */
+	int policy;
 	struct bsc_fd listen;
 	struct gsm_network *gsm_network;
 };
 
 struct osmo_bsc_rf_conn {
 	struct write_queue queue;
-	struct gsm_network *gsm_network;
+	struct osmo_bsc_rf *rf;
 };
 
 struct osmo_bsc_rf *osmo_bsc_rf_create(const char *path, struct gsm_network *net);
diff --git a/openbsc/src/bsc/osmo_bsc_rf.c b/openbsc/src/bsc/osmo_bsc_rf.c
index e45474c..06c8466 100644
--- a/openbsc/src/bsc/osmo_bsc_rf.c
+++ b/openbsc/src/bsc/osmo_bsc_rf.c
@@ -63,7 +63,7 @@
 	struct gsm_bts *bts;
 	char send = RF_CMD_OFF;
 
-	llist_for_each_entry(bts, &conn->gsm_network->bts_list, list) {
+	llist_for_each_entry(bts, &conn->rf->gsm_network->bts_list, list) {
 		struct gsm_bts_trx *trx;
 		llist_for_each_entry(trx, &bts->trx_list, list) {
 			if (trx->nm_state.availability == NM_AVSTATE_OK &&
@@ -95,8 +95,9 @@
 static void send_signal(struct osmo_bsc_rf_conn *conn, int val)
 {
 	struct rf_signal_data sig;
-	sig.net = conn->gsm_network;
+	sig.net = conn->rf->gsm_network;
 
+	conn->rf->policy = val;
 	dispatch_signal(SS_RF, val, &sig);
 }
 
@@ -121,11 +122,11 @@
 		handle_query(conn);
 		break;
 	case RF_CMD_OFF:
-		lock_each_trx(conn->gsm_network, 1);
+		lock_each_trx(conn->rf->gsm_network, 1);
 		send_signal(conn, S_RF_OFF);
 		break;
 	case RF_CMD_ON:
-		lock_each_trx(conn->gsm_network, 0);
+		lock_each_trx(conn->rf->gsm_network, 0);
 		send_signal(conn, S_RF_ON);
 		break;
 	case RF_CMD_GRACE:
@@ -180,7 +181,7 @@
 	conn->queue.bfd.when = BSC_FD_READ | BSC_FD_WRITE;
 	conn->queue.read_cb = rf_read_cmd;
 	conn->queue.write_cb = rf_write_cmd;
-	conn->gsm_network = rf->gsm_network;
+	conn->rf = rf;
 
 	if (bsc_register_fd(&conn->queue.bfd) != 0) {
 		close(fd);
@@ -258,6 +259,7 @@
 	}
 
 	rf->gsm_network = net;
+	rf->policy = S_RF_ON;
 
 	return rf;
 }
