diff --git a/openbsc/src/libctrl/control_if.c b/openbsc/src/libctrl/control_if.c
index e76b4e5..beb5b43 100644
--- a/openbsc/src/libctrl/control_if.c
+++ b/openbsc/src/libctrl/control_if.c
@@ -139,9 +139,8 @@
 	char *token, *request;
 	long num;
 	int i, j, ret, node;
-	struct gsm_network *gsmnet = data;
 
-	struct gsm_network *net = NULL;
+	struct gsm_network *net = data;
 	struct gsm_bts *bts = NULL;
 	struct gsm_bts_trx *trx = NULL;
 	struct gsm_bts_trx_ts *ts = NULL;
@@ -149,8 +148,8 @@
 
 	ret = CTRL_CMD_ERROR;
 	cmd->reply = "Someone forgot to fill in the reply.";
-	cmd->node = NULL;
 	node = CTRL_NODE_ROOT;
+	cmd->node = net;
 
 	request = talloc_strdup(tall_bsc_ctx, cmd->variable);
 	if (!request)
@@ -173,13 +172,7 @@
 		/* TODO: We need to make sure that the following chars are digits
 		 * and/or use strtol to check if number conversion was successful
 		 * Right now something like net.bts_stats will not work */
-		if (!strcmp(token, "net")) {
-			net = gsmnet;
-			if (!net)
-				goto err_missing;
-			cmd->node = net;
-			node = CTRL_NODE_NET;
-		} else if (!strcmp(token, "bts")) {
+		if (!strcmp(token, "bts")) {
 			if (!net)
 				goto err_missing;
 			i++;
diff --git a/openbsc/src/osmo-bsc/osmo_bsc_ctrl.c b/openbsc/src/osmo-bsc/osmo_bsc_ctrl.c
index ba8c1d2..5b2f4ff 100644
--- a/openbsc/src/osmo-bsc/osmo_bsc_ctrl.c
+++ b/openbsc/src/osmo-bsc/osmo_bsc_ctrl.c
@@ -67,7 +67,7 @@
 	}
 
 	cmd->id = "0";
-	cmd->variable = talloc_asprintf(cmd, "net.bts.%i.location-state", bts->nr);
+	cmd->variable = talloc_asprintf(cmd, "bts.%i.location-state", bts->nr);
 
 	/* Prepare the location reply */
 	cmd->node = bts;
@@ -299,7 +299,7 @@
 	rc = ctrl_cmd_install(CTRL_NODE_BTS, &cmd_bts_loc);
 	if (rc)
 		goto end;
-	rc = ctrl_cmd_install(CTRL_NODE_NET, &cmd_net_rf_lock);
+	rc = ctrl_cmd_install(CTRL_NODE_ROOT, &cmd_net_rf_lock);
 end:
 	return rc;
 }
