5 #include <osmocom/networks.h>
9 struct gsm_networks gsm_networks[] = {
12 { 262, 0, "Germany" },
13 { 262, 1, "T-Mobile" },
14 { 262, 2, "Vodafone" },
17 { 262, 10, "DB Systel GSM-R" },
18 { 262, 42, "OpenBSC" },
19 { 238, 0, "Denmark" },
20 { 238, 1, "TDC Mobil" },
21 { 238, 2, "Sonofon" },
22 { 238, 3, "MIGway A/S" },
24 { 238, 7, "Barablue Mobile Ltd." },
25 { 238, 10, "TDC Mobil" },
26 { 238, 12, "Lycamobile Denmark" },
28 { 238, 30, "Telia Mobile" },
33 const char *gsm_get_mcc(uint16_t mcc)
36 static char unknown[4] = "000";
38 for (i = 0; gsm_networks[i].name; i++)
39 if (!gsm_networks[i].mnc && gsm_networks[i].mcc == mcc)
40 return gsm_networks[i].name;
42 snprintf(unknown, 3, "%03d", mcc);
46 const char *gsm_get_mnc(uint16_t mcc, uint16_t mnc)
49 static char unknown[4] = "000";
51 for (i = 0; gsm_networks[i].name; i++)
52 if (gsm_networks[i].mcc == mcc && gsm_networks[i].mnc == mnc)
53 return gsm_networks[i].name;
55 snprintf(unknown, 3, "%02d", mnc);