diff --git a/openbsc/src/osmo-bsc/osmo_bsc_api.c b/openbsc/src/osmo-bsc/osmo_bsc_api.c
index 5a01d6b..00a10b3 100644
--- a/openbsc/src/osmo-bsc/osmo_bsc_api.c
+++ b/openbsc/src/osmo-bsc/osmo_bsc_api.c
@@ -53,8 +53,8 @@
 
 static uint16_t get_network_code_for_msc(struct osmo_msc_data *msc)
 {
-	if (msc->core_ncc != -1)
-		return msc->core_ncc;
+	if (msc->core_mnc != -1)
+		return msc->core_mnc;
 	return msc->network->network_code;
 }
 
diff --git a/openbsc/src/osmo-bsc/osmo_bsc_filter.c b/openbsc/src/osmo-bsc/osmo_bsc_filter.c
index 58a57cd..6058d7e 100644
--- a/openbsc/src/osmo-bsc/osmo_bsc_filter.c
+++ b/openbsc/src/osmo-bsc/osmo_bsc_filter.c
@@ -313,7 +313,7 @@
 
 static int has_core_identity(struct osmo_msc_data *msc)
 {
-	if (msc->core_ncc != -1)
+	if (msc->core_mnc != -1)
 		return 1;
 	if (msc->core_mcc != -1)
 		return 1;
diff --git a/openbsc/src/osmo-bsc/osmo_bsc_msc.c b/openbsc/src/osmo-bsc/osmo_bsc_msc.c
index 773ee14..0eb3fa9 100644
--- a/openbsc/src/osmo-bsc/osmo_bsc_msc.c
+++ b/openbsc/src/osmo-bsc/osmo_bsc_msc.c
@@ -572,7 +572,7 @@
 	INIT_LLIST_HEAD(&msc_data->dests);
 	msc_data->ping_timeout = 20;
 	msc_data->pong_timeout = 5;
-	msc_data->core_ncc = -1;
+	msc_data->core_mnc = -1;
 	msc_data->core_mcc = -1;
 	msc_data->core_ci = -1;
 	msc_data->core_lac = -1;
diff --git a/openbsc/src/osmo-bsc/osmo_bsc_vty.c b/openbsc/src/osmo-bsc/osmo_bsc_vty.c
index 9a17cd0..8103ffc 100644
--- a/openbsc/src/osmo-bsc/osmo_bsc_vty.c
+++ b/openbsc/src/osmo-bsc/osmo_bsc_vty.c
@@ -110,9 +110,9 @@
 	if (msc->bsc_key_present)
 		vty_out(vty, " auth-key %s%s",
 			osmo_hexdump(msc->bsc_key, sizeof(msc->bsc_key)), VTY_NEWLINE);
-	if (msc->core_ncc != -1)
+	if (msc->core_mnc != -1)
 		vty_out(vty, " core-mobile-network-code %d%s",
-			msc->core_ncc, VTY_NEWLINE);
+			msc->core_mnc, VTY_NEWLINE);
 	if (msc->core_mcc != -1)
 		vty_out(vty, " core-mobile-country-code %d%s",
 			msc->core_mcc, VTY_NEWLINE);
@@ -261,10 +261,10 @@
 DEFUN(cfg_net_bsc_ncc,
       cfg_net_bsc_ncc_cmd,
       "core-mobile-network-code <1-999>",
-      "Use this network code for the core network\n" "NCC value\n")
+      "Use this network code for the core network\n" "MNC value\n")
 {
 	struct osmo_msc_data *data = osmo_msc_data(vty);
-	data->core_ncc = atoi(argv[0]);
+	data->core_mnc = atoi(argv[0]);
 	return CMD_SUCCESS;
 }
 
