summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJaehyun Kim <jeik01.kim@samsung.com>2021-09-08 06:44:53 +0000
committerGerrit Code Review <gerrit@review>2021-09-08 06:44:53 +0000
commite2aacb30e612fed1db0ab4a35b922b55d52e90ae (patch)
treedd6ad3ee1ef3a7671bf4a68d2677cec238199e4c
parenta57098c65678aa6f708215133099520fcb2ef815 (diff)
parentcef237e5250062e3943724b36c06f585cafee10b (diff)
downloadconnman-e2aacb30e612fed1db0ab4a35b922b55d52e90ae.tar.gz
connman-e2aacb30e612fed1db0ab4a35b922b55d52e90ae.tar.bz2
connman-e2aacb30e612fed1db0ab4a35b922b55d52e90ae.zip
Merge "vpn: Make domain parameter optional" into tizen
-rw-r--r--doc/vpn-config-format.txt2
-rwxr-xr-xvpn/vpn-config.c4
-rwxr-xr-xvpn/vpn-provider.c16
3 files changed, 13 insertions, 9 deletions
diff --git a/doc/vpn-config-format.txt b/doc/vpn-config-format.txt
index 91e2a636..f2adf299 100644
--- a/doc/vpn-config-format.txt
+++ b/doc/vpn-config-format.txt
@@ -38,7 +38,7 @@ Allowed fields:
VPN related parameters (M = mandatory, O = optional):
- Name: A user defined name for the VPN (M)
- Host: VPN server IP address (M)
-- Domain: Domain name for the VPN service (M)
+- Domain: Domain name for the VPN service (O)
- Networks: The networks behind the VPN link can be defined here. This can
be missing if all traffic should go via VPN tunnel. If there are more
than one network, then separate them by comma. Format of the entry
diff --git a/vpn/vpn-config.c b/vpn/vpn-config.c
index 2fe03077..97e072c6 100755
--- a/vpn/vpn-config.c
+++ b/vpn/vpn-config.c
@@ -234,11 +234,11 @@ static int load_provider(GKeyFile *keyfile, const char *group,
host = get_string(config_provider, "Host");
domain = get_string(config_provider, "Domain");
#if !defined TIZEN_EXT
- if (host && domain) {
+ if (host) {
char *id = __vpn_provider_create_identifier(host, domain);
#else
name = get_string(config_provider, "Name");
- if (host && domain && name) {
+ if (host && name) {
char *id = __vpn_provider_create_identifier(host, domain, name);
#endif
diff --git a/vpn/vpn-provider.c b/vpn/vpn-provider.c
index 8d2836ef..d29b0186 100755
--- a/vpn/vpn-provider.c
+++ b/vpn/vpn-provider.c
@@ -2167,9 +2167,10 @@ char *__vpn_provider_create_identifier(const char *host, const char *domain)
{
char *ident;
- ident = g_strdup_printf("%s_%s", host, domain);
- if (!ident)
- return NULL;
+ if (domain)
+ ident = g_strdup_printf("%s_%s", host, domain);
+ else
+ ident = g_strdup_printf("%s", host);
provider_dbus_ident(ident);
@@ -2180,7 +2181,10 @@ char *__vpn_provider_create_identifier(const char *host, const char *domain, con
{
char *ident;
- ident = g_strdup_printf("%s_%s_%s", host, domain, name);
+ if (domain)
+ ident = g_strdup_printf("%s_%s_%s", host, domain, name);
+ else
+ ident = g_strdup_printf("%s_%s", host, name);
if (!ident)
return NULL;
@@ -2234,7 +2238,7 @@ int __vpn_provider_create(DBusMessage *msg)
dbus_message_iter_next(&array);
}
- if (!host || !domain)
+ if (!host)
return -EINVAL;
DBG("Type %s name %s networks %p", type, name, networks);
@@ -2423,7 +2427,7 @@ int __vpn_provider_create_from_config(GHashTable *settings,
networks_str = get_string(settings, "Networks");
networks = parse_user_networks(networks_str);
- if (!host || !domain) {
+ if (!host) {
err = -EINVAL;
goto fail;
}