summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2019-08-25 15:27:37 +0200
committerLubomir Rintel <lkundrak@v3.sk>2019-09-11 14:32:05 +0200
commitadf02543693c49357631f746e562f5ab30968c42 (patch)
treebb293a38c10ca390d54d43e6402f2ea5c0967bc4
parentb92193236ae989aca3baf1208f0684d7b432218e (diff)
downloadNetworkManager-adf02543693c49357631f746e562f5ab30968c42.tar.gz
setting-gsm: allow empty apn property in verify()
NetworkManager treats "gsm.apn" %NULL as setting an empty APN (""). At least with ModemManager. With oFono, a %NULL APN means not to set the "AccessPointName", so oFono implementation treats %NULL different from "". Soon the meaning will change to allow %NULL to automatically obtain the APN from the mobile-broadband-provider-info. That will be a change in behavior how to treat %NULL. Anyway, since %NULL is accepted and in fact means to actually use "", the empty word should be also accepted to explicitly choose this behavior. This is especially important in combination with changing the meaning of %NULL.
-rw-r--r--libnm-core/nm-setting-gsm.c2
-rw-r--r--libnm-core/tests/test-general.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/libnm-core/nm-setting-gsm.c b/libnm-core/nm-setting-gsm.c
index cb482095e5..b4ca97e6d8 100644
--- a/libnm-core/nm-setting-gsm.c
+++ b/libnm-core/nm-setting-gsm.c
@@ -295,7 +295,7 @@ verify (NMSetting *setting, NMConnection *connection, GError **error)
gsize apn_len = strlen (priv->apn);
gsize i;
- if (apn_len < 1 || apn_len > 64) {
+ if (apn_len > 64) {
g_set_error (error,
NM_CONNECTION_ERROR,
NM_CONNECTION_ERROR_INVALID_PROPERTY,
diff --git a/libnm-core/tests/test-general.c b/libnm-core/tests/test-general.c
index 4df97b3469..c477844c55 100644
--- a/libnm-core/tests/test-general.c
+++ b/libnm-core/tests/test-general.c
@@ -1747,7 +1747,7 @@ test_setting_gsm_apn_bad_chars (void)
/* 0 characters long */
g_object_set (s_gsm, NM_SETTING_GSM_APN, "", NULL);
- g_assert (!nm_setting_verify (NM_SETTING (s_gsm), NULL, NULL));
+ g_assert (nm_setting_verify (NM_SETTING (s_gsm), NULL, NULL));
/* 65-character long */
g_object_set (s_gsm, NM_SETTING_GSM_APN, "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijkl1", NULL);