mirror of git://git.sysmocom.de/ofono
Add utility to test for valid APN names
This commit is contained in:
parent
cc5701c76f
commit
ee92dc0b62
26
src/common.c
26
src/common.c
|
@ -641,3 +641,29 @@ const char *registration_tech_to_string(int tech)
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
gboolean is_valid_apn(const char *apn)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
int last_period = 0;
|
||||||
|
|
||||||
|
if (apn[0] == '.' || apn[0] == '\0')
|
||||||
|
return FALSE;
|
||||||
|
|
||||||
|
for (i = 0; apn[i] != '\0'; i++) {
|
||||||
|
if (g_ascii_isalnum(apn[i]))
|
||||||
|
continue;
|
||||||
|
|
||||||
|
if (apn[i] == '-')
|
||||||
|
continue;
|
||||||
|
|
||||||
|
if (apn[i] == '.' && (i - last_period) > 1) {
|
||||||
|
last_period = i;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
|
@ -138,3 +138,5 @@ gboolean is_valid_pin(const char *pin);
|
||||||
|
|
||||||
const char *registration_status_to_string(int status);
|
const char *registration_status_to_string(int status);
|
||||||
const char *registration_tech_to_string(int tech);
|
const char *registration_tech_to_string(int tech);
|
||||||
|
|
||||||
|
gboolean is_valid_apn(const char *apn);
|
||||||
|
|
Loading…
Reference in New Issue