diff --git a/meta-webos/recipes-connectivity/connman/connman/0004-Support-WPS-PBC-and-PIN-mode.patch b/meta-webos/recipes-connectivity/connman/connman/0001-Add-support-for-the-WPS-PBS-and-PIN-mode.patch similarity index 90% rename from meta-webos/recipes-connectivity/connman/connman/0004-Support-WPS-PBC-and-PIN-mode.patch rename to meta-webos/recipes-connectivity/connman/connman/0001-Add-support-for-the-WPS-PBS-and-PIN-mode.patch index 680f392eb..3b776f75d 100644 --- a/meta-webos/recipes-connectivity/connman/connman/0004-Support-WPS-PBC-and-PIN-mode.patch +++ b/meta-webos/recipes-connectivity/connman/connman/0001-Add-support-for-the-WPS-PBS-and-PIN-mode.patch @@ -1,4 +1,4 @@ -From 1886b233b6c8ab77066b4a58a88c31738c23fff0 Mon Sep 17 00:00:00 2001 +From 3220782200bcb40d4f906733b5e4d0f96f5bb312 Mon Sep 17 00:00:00 2001 From: Vibhanshu Dhote Date: Wed, 21 Feb 2018 16:36:23 +0530 Subject: [PATCH] Add support for the WPS PBS and PIN mode @@ -16,21 +16,20 @@ another method to the technology interface which starts the WPS connection process without requiring a specific SSID. Upstream-Status : Inappropriate [webOS specific] - --- gsupplicant/gsupplicant.h | 5 + - gsupplicant/supplicant.c | 66 ++++++++ + gsupplicant/supplicant.c | 66 +++++++ include/device.h | 2 + include/technology.h | 2 + - plugins/wifi.c | 387 +++++++++++++++++++++++++++++++++++++++++++--- - src/connman.h | 2 + - src/device.c | 116 ++++++++++++++ + plugins/wifi.c | 387 ++++++++++++++++++++++++++++++++++++-- + src/connman.h | 3 + + src/device.c | 116 ++++++++++++ src/service.c | 2 + - src/technology.c | 49 ++++++ - 9 files changed, 611 insertions(+), 20 deletions(-) + src/technology.c | 49 +++++ + 9 files changed, 612 insertions(+), 20 deletions(-) diff --git a/gsupplicant/gsupplicant.h b/gsupplicant/gsupplicant.h -index db61595..77dfe56 100644 +index db61595b..77dfe56e 100644 --- a/gsupplicant/gsupplicant.h +++ b/gsupplicant/gsupplicant.h @@ -268,6 +268,10 @@ int g_supplicant_interface_disconnect(GSupplicantInterface *interface, @@ -53,7 +52,7 @@ index db61595..77dfe56 100644 void (*disconnect_reasoncode)(GSupplicantInterface *interface, int reasoncode); diff --git a/gsupplicant/supplicant.c b/gsupplicant/supplicant.c -index 4f79012..736cee3 100644 +index 5246c80b..1a35d00a 100644 --- a/gsupplicant/supplicant.c +++ b/gsupplicant/supplicant.c @@ -699,6 +699,17 @@ static void remove_group(gpointer data) @@ -74,7 +73,7 @@ index 4f79012..736cee3 100644 static void remove_interface(gpointer data) { GSupplicantInterface *interface = data; -@@ -2907,6 +2918,8 @@ static void signal_wps_event(const char *path, DBusMessageIter *iter) +@@ -2945,6 +2956,8 @@ static void signal_wps_event(const char *path, DBusMessageIter *iter) dbus_message_iter_next(iter); supplicant_dbus_property_foreach(iter, wps_event_args, interface); @@ -83,7 +82,7 @@ index 4f79012..736cee3 100644 } static void create_peer_identifier(GSupplicantPeer *peer) -@@ -5028,6 +5041,59 @@ int g_supplicant_interface_connect(GSupplicantInterface *interface, +@@ -5066,6 +5079,59 @@ int g_supplicant_interface_connect(GSupplicantInterface *interface, return -EINPROGRESS; } @@ -144,11 +143,11 @@ index 4f79012..736cee3 100644 DBusMessageIter *iter, void *user_data) { diff --git a/include/device.h b/include/device.h -index 9ac800a..140f9bc 100644 +index 5a3ddc22..ceb50a29 100644 --- a/include/device.h +++ b/include/device.h -@@ -126,6 +126,8 @@ struct connman_device_driver { - const char *security, void *user_data); +@@ -129,6 +129,8 @@ struct connman_device_driver { + struct connman_device *device); int (*set_regdom) (struct connman_device *device, const char *alpha2); + int (*start_wps) (struct connman_device *device, const char *pin); @@ -157,7 +156,7 @@ index 9ac800a..140f9bc 100644 int connman_device_driver_register(struct connman_device_driver *driver); diff --git a/include/technology.h b/include/technology.h -index 97db660..54f3b4d 100644 +index 97db6607..54f3b4da 100644 --- a/include/technology.h +++ b/include/technology.h @@ -46,6 +46,8 @@ bool connman_technology_get_wifi_tethering(const char **ssid, @@ -170,7 +169,7 @@ index 97db660..54f3b4d 100644 const char *name; enum connman_service_type type; diff --git a/plugins/wifi.c b/plugins/wifi.c -index 2b28c50..5d6cbb9 100644 +index 46e4cca4..06b01ee6 100644 --- a/plugins/wifi.c +++ b/plugins/wifi.c @@ -61,6 +61,7 @@ @@ -180,8 +179,8 @@ index 2b28c50..5d6cbb9 100644 +#define WPS_CONNECT_TIMEOUT 120 /* in seconds */ #define BGSCAN_DEFAULT "simple:30:-45:300" - #define AUTOSCAN_DEFAULT "exponential:3:300" -@@ -76,6 +77,8 @@ + #define AUTOSCAN_EXPONENTIAL "exponential:3:300" +@@ -77,6 +78,8 @@ static struct connman_technology *wifi_technology = NULL; static struct connman_technology *p2p_technology = NULL; @@ -190,7 +189,7 @@ index 2b28c50..5d6cbb9 100644 enum wifi_ap_capability{ WIFI_AP_UNKNOWN = 0, WIFI_AP_SUPPORTED = 1, -@@ -153,6 +156,11 @@ struct wifi_data { +@@ -160,6 +163,11 @@ struct wifi_data { int servicing; int disconnect_code; int assoc_code; @@ -202,7 +201,7 @@ index 2b28c50..5d6cbb9 100644 }; static GList *iface_list = NULL; -@@ -199,6 +207,17 @@ static bool is_p2p_connecting(void) +@@ -206,6 +214,17 @@ static bool is_p2p_connecting(void) return false; } @@ -220,7 +219,7 @@ index 2b28c50..5d6cbb9 100644 static void add_pending_wifi_device(struct wifi_data *wifi) { if (g_list_find(pending_wifi_device, wifi)) -@@ -779,6 +798,9 @@ static int wifi_probe(struct connman_device *device) +@@ -786,6 +805,9 @@ static int wifi_probe(struct connman_device *device) wifi->watch = connman_rtnl_add_newlink_watch(wifi->index, wifi_newlink, device); @@ -230,7 +229,7 @@ index 2b28c50..5d6cbb9 100644 if (is_p2p_connecting()) add_pending_wifi_device(wifi); else -@@ -1938,6 +1960,217 @@ static int wifi_set_regdom(struct connman_device *device, const char *alpha2) +@@ -2033,6 +2055,217 @@ static int wifi_set_regdom(struct connman_device *device, const char *alpha2) return ret; } @@ -448,16 +447,16 @@ index 2b28c50..5d6cbb9 100644 static struct connman_device_driver wifi_ng_driver = { .name = "wifi", .type = CONNMAN_DEVICE_TYPE_WIFI, -@@ -1948,6 +2181,8 @@ static struct connman_device_driver wifi_ng_driver = { - .disable = wifi_disable, +@@ -2044,6 +2277,8 @@ static struct connman_device_driver wifi_ng_driver = { .scan = wifi_scan, + .stop_scan = wifi_stop_scan, .set_regdom = wifi_set_regdom, + .start_wps = wifi_start_wps, + .cancel_wps = wifi_cancel_wps }; static void system_ready(void) -@@ -1972,6 +2207,23 @@ static int network_probe(struct connman_network *network) +@@ -2068,6 +2303,23 @@ static int network_probe(struct connman_network *network) return 0; } @@ -481,7 +480,7 @@ index 2b28c50..5d6cbb9 100644 static void network_remove(struct connman_network *network) { struct connman_device *device = connman_network_get_device(network); -@@ -1985,6 +2237,10 @@ static void network_remove(struct connman_network *network) +@@ -2081,6 +2333,10 @@ static void network_remove(struct connman_network *network) if (wifi->network != network) return; @@ -492,7 +491,7 @@ index 2b28c50..5d6cbb9 100644 wifi->network = NULL; } -@@ -2102,6 +2358,9 @@ static int network_connect(struct connman_network *network) +@@ -2198,6 +2454,9 @@ static int network_connect(struct connman_network *network) if (!wifi) return -ENODEV; @@ -502,7 +501,7 @@ index 2b28c50..5d6cbb9 100644 ssid = g_try_malloc0(sizeof(GSupplicantSSID)); if (!ssid) return -ENOMEM; -@@ -2145,12 +2404,10 @@ static void disconnect_callback(int result, GSupplicantInterface *interface, +@@ -2240,12 +2499,10 @@ static void disconnect_callback(int result, GSupplicantInterface *interface, wifi->disconnecting = false; wifi->connected = false; @@ -518,7 +517,7 @@ index 2b28c50..5d6cbb9 100644 } static int network_disconnect(struct connman_network *network) -@@ -2285,20 +2542,22 @@ static bool handle_wps_completion(GSupplicantInterface *interface, +@@ -2380,20 +2637,22 @@ static bool handle_wps_completion(GSupplicantInterface *interface, unsigned int ssid_len, wps_ssid_len; const char *wps_key; @@ -555,7 +554,7 @@ index 2b28c50..5d6cbb9 100644 } wps_key = g_supplicant_interface_get_wps_key(interface); -@@ -2353,6 +2612,65 @@ static bool handle_4way_handshake_failure(GSupplicantInterface *interface, +@@ -2448,6 +2707,65 @@ static bool handle_4way_handshake_failure(GSupplicantInterface *interface, return false; } @@ -621,7 +620,7 @@ index 2b28c50..5d6cbb9 100644 static void interface_state(GSupplicantInterface *interface) { struct connman_network *network; -@@ -2360,7 +2678,10 @@ static void interface_state(GSupplicantInterface *interface) +@@ -2455,7 +2773,10 @@ static void interface_state(GSupplicantInterface *interface) struct wifi_data *wifi; GSupplicantState state = g_supplicant_interface_get_state(interface); bool wps; @@ -632,7 +631,7 @@ index 2b28c50..5d6cbb9 100644 wifi = g_supplicant_interface_get_data(interface); -@@ -2391,6 +2712,23 @@ static void interface_state(GSupplicantInterface *interface) +@@ -2489,6 +2810,23 @@ static void interface_state(GSupplicantInterface *interface) if (!network) return; @@ -656,7 +655,7 @@ index 2b28c50..5d6cbb9 100644 switch (state) { case G_SUPPLICANT_STATE_SCANNING: if (wifi->connected) -@@ -2402,6 +2740,7 @@ static void interface_state(GSupplicantInterface *interface) +@@ -2500,6 +2838,7 @@ static void interface_state(GSupplicantInterface *interface) case G_SUPPLICANT_STATE_ASSOCIATING: stop_autoscan(device); @@ -664,7 +663,7 @@ index 2b28c50..5d6cbb9 100644 if (!wifi->connected) connman_network_set_associating(network, true); -@@ -2411,6 +2750,7 @@ static void interface_state(GSupplicantInterface *interface) +@@ -2509,6 +2848,7 @@ static void interface_state(GSupplicantInterface *interface) /* though it should be already stopped: */ stop_autoscan(device); @@ -672,7 +671,7 @@ index 2b28c50..5d6cbb9 100644 if (!handle_wps_completion(interface, network, device, wifi)) break; -@@ -2419,6 +2759,7 @@ static void interface_state(GSupplicantInterface *interface) +@@ -2517,6 +2857,7 @@ static void interface_state(GSupplicantInterface *interface) wifi->disconnect_code = 0; wifi->assoc_code = 0; wifi->load_shaping_retries = 0; @@ -680,8 +679,8 @@ index 2b28c50..5d6cbb9 100644 break; case G_SUPPLICANT_STATE_DISCONNECTED: -@@ -2464,7 +2805,12 @@ static void interface_state(GSupplicantInterface *interface) - connman_network_set_associating(network, false); +@@ -2565,7 +2906,12 @@ static void interface_state(GSupplicantInterface *interface) + } wifi->disconnecting = false; - start_autoscan(device); @@ -694,7 +693,7 @@ index 2b28c50..5d6cbb9 100644 break; -@@ -3076,6 +3422,7 @@ static const GSupplicantCallbacks callbacks = { +@@ -3215,6 +3561,7 @@ static const GSupplicantCallbacks callbacks = { .peer_lost = peer_lost, .peer_changed = peer_changed, .peer_request = peer_request, @@ -703,24 +702,25 @@ index 2b28c50..5d6cbb9 100644 .disconnect_reasoncode = disconnect_reasoncode, .assoc_status_code = assoc_status_code, diff --git a/src/connman.h b/src/connman.h -index da4446a..2622825 100644 +index 82e77d37..9dd22157 100644 --- a/src/connman.h +++ b/src/connman.h -@@ -560,6 +560,8 @@ void __connman_device_list(DBusMessageIter *iter, void *user_data); +@@ -562,6 +562,9 @@ void __connman_device_list(DBusMessageIter *iter, void *user_data); enum connman_service_type __connman_device_get_service_type(struct connman_device *device); struct connman_device *__connman_device_find_device(enum connman_service_type type); int __connman_device_request_scan(enum connman_service_type type); ++int __connman_device_request_scan_full(enum connman_service_type type); +int __connman_device_request_start_wps(enum connman_service_type type, const char *pin); +int __connman_device_request_cancel_wps(enum connman_service_type type); int __connman_device_request_hidden_scan(struct connman_device *device, const char *ssid, unsigned int ssid_len, const char *identity, const char *passphrase, diff --git a/src/device.c b/src/device.c -index a563f46..874e21f 100644 +index 5d343ae8..661523b9 100644 --- a/src/device.c +++ b/src/device.c -@@ -1108,6 +1108,122 @@ int __connman_device_request_hidden_scan(struct connman_device *device, - passphrase, security, user_data); +@@ -1154,6 +1154,122 @@ void __connman_device_stop_scan(enum connman_service_type type) + } } +static int device_start_wps(struct connman_device *device, const char *pin) @@ -843,10 +843,10 @@ index a563f46..874e21f 100644 { struct ifreq ifr; diff --git a/src/service.c b/src/service.c -index 02cd51f..13902ba 100644 +index 733c0728..0376f519 100644 --- a/src/service.c +++ b/src/service.c -@@ -49,6 +49,8 @@ static unsigned int vpn_autoconnect_timeout = 0; +@@ -49,6 +49,8 @@ static unsigned int vpn_autoconnect_id = 0; static struct connman_service *current_default = NULL; static bool services_dirty = false; @@ -856,10 +856,10 @@ index 02cd51f..13902ba 100644 bool valid; bool enabled; diff --git a/src/technology.c b/src/technology.c -index d2f0ae2..b735011 100644 +index 4c1cbbbb..a92bc43f 100644 --- a/src/technology.c +++ b/src/technology.c -@@ -1092,6 +1092,50 @@ static DBusMessage *scan(DBusConnection *conn, DBusMessage *msg, void *data) +@@ -1090,6 +1090,50 @@ static DBusMessage *scan(DBusConnection *conn, DBusMessage *msg, void *data) return NULL; } @@ -910,7 +910,7 @@ index d2f0ae2..b735011 100644 static const GDBusMethodTable technology_methods[] = { { GDBUS_DEPRECATED_METHOD("GetProperties", NULL, GDBUS_ARGS({ "properties", "a{sv}" }), -@@ -1100,12 +1144,17 @@ static const GDBusMethodTable technology_methods[] = { +@@ -1098,12 +1142,17 @@ static const GDBusMethodTable technology_methods[] = { GDBUS_ARGS({ "name", "s" }, { "value", "v" }), NULL, set_property) }, { GDBUS_ASYNC_METHOD("Scan", NULL, NULL, scan) }, diff --git a/meta-webos/recipes-connectivity/connman/connman/0006-Fix-Unable-to-reconnect-to-same-Wi-Fi.patch b/meta-webos/recipes-connectivity/connman/connman/0002-Set-IPv6-state-same-as-IPV4-on-disconnect.patch similarity index 84% rename from meta-webos/recipes-connectivity/connman/connman/0006-Fix-Unable-to-reconnect-to-same-Wi-Fi.patch rename to meta-webos/recipes-connectivity/connman/connman/0002-Set-IPv6-state-same-as-IPV4-on-disconnect.patch index b145f8801..10d200816 100644 --- a/meta-webos/recipes-connectivity/connman/connman/0006-Fix-Unable-to-reconnect-to-same-Wi-Fi.patch +++ b/meta-webos/recipes-connectivity/connman/connman/0002-Set-IPv6-state-same-as-IPV4-on-disconnect.patch @@ -1,4 +1,4 @@ -From 7408cc223cb168da0d426cb6286ec7f0f920915c Mon Sep 17 00:00:00 2001 +From c34a9f6930852b7dd0aac7e3ce0d1898476701e4 Mon Sep 17 00:00:00 2001 From: "krishna.konwar" Date: Fri, 3 Aug 2018 16:17:00 +0530 Subject: [PATCH] Set IPv6 state same as IPV4 on disconnect @@ -12,16 +12,15 @@ During disconnect it was set as ready because IPv6 state is ready. Which causes a new profile creation in adapter. Upstream-Status : Inappropriate [webOS specific] - --- src/service.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/service.c b/src/service.c -index 768426b..9bac0d5 100644 +index 0376f519..6788cbd9 100644 --- a/src/service.c +++ b/src/service.c -@@ -5803,8 +5803,10 @@ int __connman_service_ipconfig_indicate_state(struct connman_service *service, +@@ -6161,8 +6161,10 @@ int __connman_service_ipconfig_indicate_state(struct connman_service *service, if (service->state == CONNMAN_SERVICE_STATE_IDLE) return -EINVAL; @@ -33,6 +32,3 @@ index 768426b..9bac0d5 100644 break; --- -2.7.4 - diff --git a/meta-webos/recipes-connectivity/connman/connman/0007-Fix-for-wifi-network-switching-and-unable-to-connect.patch b/meta-webos/recipes-connectivity/connman/connman/0003-Fix-for-wifi-network-switching-and-unable-to-connect.patch similarity index 85% rename from meta-webos/recipes-connectivity/connman/connman/0007-Fix-for-wifi-network-switching-and-unable-to-connect.patch rename to meta-webos/recipes-connectivity/connman/connman/0003-Fix-for-wifi-network-switching-and-unable-to-connect.patch index d1b85f160..27835d224 100644 --- a/meta-webos/recipes-connectivity/connman/connman/0007-Fix-for-wifi-network-switching-and-unable-to-connect.patch +++ b/meta-webos/recipes-connectivity/connman/connman/0003-Fix-for-wifi-network-switching-and-unable-to-connect.patch @@ -1,4 +1,4 @@ -From b39c2a95428dbc1d827691f1c4ffeb860b875120 Mon Sep 17 00:00:00 2001 +From b50fce91f038453863675c2c4790ba2c2e54bee5 Mon Sep 17 00:00:00 2001 From: Vasu Kantubukta Date: Wed, 19 Dec 2018 21:02:59 +0530 Subject: [PATCH] Fix for wifi network switching and unable to connect to open @@ -27,17 +27,16 @@ Verified the image. appears instead of Password prompt. Upstream-Status: Inappropriate [webOS specific] - --- plugins/wifi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/wifi.c b/plugins/wifi.c -index 2798de3..863ee97 100644 +index 06b01ee6..d335f583 100644 --- a/plugins/wifi.c +++ b/plugins/wifi.c -@@ -2792,7 +2792,7 @@ static void interface_state(GSupplicantInterface *interface) - connman_network_set_associating(network, false); +@@ -2906,7 +2906,7 @@ static void interface_state(GSupplicantInterface *interface) + } wifi->disconnecting = false; - if (perform_deferred_connect_after_disconnect(wifi) == FALSE) @@ -45,6 +44,3 @@ index 2798de3..863ee97 100644 { /* Set connected to false to allow autoscan to start. */ wifi->connected = FALSE; --- -2.7.4 - diff --git a/meta-webos/recipes-connectivity/connman/connman/0008-Multiple-wi-fi-networks-are-connected-via-WPS-PIN.patch b/meta-webos/recipes-connectivity/connman/connman/0004-Multiple-wi-fi-networks-are-connected-via-WPS-PIN.patch similarity index 88% rename from meta-webos/recipes-connectivity/connman/connman/0008-Multiple-wi-fi-networks-are-connected-via-WPS-PIN.patch rename to meta-webos/recipes-connectivity/connman/connman/0004-Multiple-wi-fi-networks-are-connected-via-WPS-PIN.patch index 5c6f10bec..6524758b4 100644 --- a/meta-webos/recipes-connectivity/connman/connman/0008-Multiple-wi-fi-networks-are-connected-via-WPS-PIN.patch +++ b/meta-webos/recipes-connectivity/connman/connman/0004-Multiple-wi-fi-networks-are-connected-via-WPS-PIN.patch @@ -1,4 +1,4 @@ -From 6bd89c26bd20ce1c61d38282e7359a970674652f Mon Sep 17 00:00:00 2001 +From 4b07ec34baca9ac07b1e9814dc0f06c1662f8dd2 Mon Sep 17 00:00:00 2001 From: "sachin.shetty" Date: Mon, 24 Jun 2019 16:55:43 +0530 Subject: [PATCH] Multiple wi-fi networks are connected via WPS PIN. @@ -29,10 +29,10 @@ Upstream-Status: Inappropriate [webOS specific] 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gsupplicant/supplicant.c b/gsupplicant/supplicant.c -index 736cee3..452492a 100644 +index 1a35d00a..a8460783 100644 --- a/gsupplicant/supplicant.c +++ b/gsupplicant/supplicant.c -@@ -2356,7 +2356,7 @@ static void interface_property(const char *key, DBusMessageIter *iter, +@@ -2370,7 +2370,7 @@ static void interface_property(const char *key, DBusMessageIter *iter, g_strdup(interface->ifname), g_strdup(str)); } } else if (g_strcmp0(key, "CurrentBSS") == 0) { @@ -41,6 +41,3 @@ index 736cee3..452492a 100644 } else if (g_strcmp0(key, "CurrentNetwork") == 0) { interface_network_added(iter, interface); } else if (g_strcmp0(key, "BSSs") == 0) { --- -2.7.4 - diff --git a/meta-webos/recipes-connectivity/connman/connman/0009-Support-additional-feature-for-tethering.patch b/meta-webos/recipes-connectivity/connman/connman/0005-Support-additional-feature-for-tethering.patch similarity index 94% rename from meta-webos/recipes-connectivity/connman/connman/0009-Support-additional-feature-for-tethering.patch rename to meta-webos/recipes-connectivity/connman/connman/0005-Support-additional-feature-for-tethering.patch index 13517d584..4e0cd03ec 100644 --- a/meta-webos/recipes-connectivity/connman/connman/0009-Support-additional-feature-for-tethering.patch +++ b/meta-webos/recipes-connectivity/connman/connman/0005-Support-additional-feature-for-tethering.patch @@ -1,4 +1,4 @@ -From 1714caa8ce21c5e83d737980df11d6be08d6e3c3 Mon Sep 17 00:00:00 2001 +From 1570cd449f62128bcdcdac0f0fade3ef804d7738 Mon Sep 17 00:00:00 2001 From: "sungmok.shin" Date: Tue, 25 Jun 2019 13:11:11 +0900 Subject: [PATCH] Support additional feature for tethering @@ -7,14 +7,14 @@ Support additional feature for tethering --- gdhcp/server.c | 3 ++ include/technology.h | 1 + - plugins/wifi.c | 11 ++++- + plugins/wifi.c | 11 +++- src/connman.h | 1 + - src/technology.c | 119 +++++++++++++++++++++++++++++++++++++++++++++--- - src/tethering.c | 125 +++++++++++++++++++++++++++++++++++++++++++++++++++ + src/technology.c | 119 +++++++++++++++++++++++++++++++++++++--- + src/tethering.c | 125 +++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 252 insertions(+), 8 deletions(-) diff --git a/gdhcp/server.c b/gdhcp/server.c -index f7795f7..c39e98f 100644 +index 85405f19..2a400692 100644 --- a/gdhcp/server.c +++ b/gdhcp/server.c @@ -255,6 +255,9 @@ static uint32_t find_free_or_expired_nip(GDHCPServer *dhcp_server, @@ -28,7 +28,7 @@ index f7795f7..c39e98f 100644 if (lease) continue; diff --git a/include/technology.h b/include/technology.h -index 54f3b4d..d24d765 100644 +index 54f3b4da..d24d7655 100644 --- a/include/technology.h +++ b/include/technology.h @@ -44,6 +44,7 @@ void connman_technology_regdom_notify(struct connman_technology *technology, @@ -40,10 +40,10 @@ index 54f3b4d..d24d765 100644 void connman_technology_wps_failed_notify(struct connman_technology *technology); diff --git a/plugins/wifi.c b/plugins/wifi.c -index bf22a5d..cbe86a2 100644 +index d335f583..ffda170d 100644 --- a/plugins/wifi.c +++ b/plugins/wifi.c -@@ -3444,16 +3444,25 @@ static void tech_remove(struct connman_technology *technology) +@@ -3583,16 +3583,25 @@ static void tech_remove(struct connman_technology *technology) static GSupplicantSSID *ssid_ap_init(const char *ssid, const char *passphrase) { GSupplicantSSID *ap; @@ -71,10 +71,10 @@ index bf22a5d..cbe86a2 100644 if (!passphrase || strlen(passphrase) == 0) { ap->security = G_SUPPLICANT_SECURITY_NONE; diff --git a/src/connman.h b/src/connman.h -index 2622825..f617425 100644 +index 9dd22157..e23fc288 100644 --- a/src/connman.h +++ b/src/connman.h -@@ -631,6 +631,7 @@ void __connman_tethering_cleanup(void); +@@ -635,6 +635,7 @@ void __connman_tethering_cleanup(void); const char *__connman_tethering_get_bridge(void); int __connman_tethering_set_enabled(void); void __connman_tethering_set_disabled(void); @@ -83,7 +83,7 @@ index 2622825..f617425 100644 int __connman_private_network_request(DBusMessage *msg, const char *owner); int __connman_private_network_release(const char *path); diff --git a/src/technology.c b/src/technology.c -index b735011..75e75ae 100644 +index a92bc43f..27386dd6 100644 --- a/src/technology.c +++ b/src/technology.c @@ -66,6 +66,8 @@ struct connman_technology { @@ -194,7 +194,7 @@ index b735011..75e75ae 100644 connman_dbus_dict_close(iter, &dict); } -@@ -942,10 +988,19 @@ static DBusMessage *set_property(DBusConnection *conn, +@@ -943,10 +989,19 @@ static DBusMessage *set_property(DBusConnection *conn, if (technology->type != CONNMAN_SERVICE_TYPE_WIFI) return __connman_error_not_supported(msg); @@ -218,7 +218,7 @@ index b735011..75e75ae 100644 if (g_strcmp0(technology->tethering_passphrase, str) != 0) { g_free(technology->tethering_passphrase); -@@ -958,6 +1013,55 @@ static DBusMessage *set_property(DBusConnection *conn, +@@ -959,6 +1014,55 @@ static DBusMessage *set_property(DBusConnection *conn, DBUS_TYPE_STRING, &technology->tethering_passphrase); } @@ -274,7 +274,7 @@ index b735011..75e75ae 100644 } else if (g_str_equal(name, "Powered")) { dbus_bool_t enable; -@@ -1230,6 +1334,7 @@ static void technology_put(struct connman_technology *technology) +@@ -1228,6 +1332,7 @@ static void technology_put(struct connman_technology *technology) g_free(technology->regdom); g_free(technology->tethering_ident); g_free(technology->tethering_passphrase); @@ -283,7 +283,7 @@ index b735011..75e75ae 100644 } diff --git a/src/tethering.c b/src/tethering.c -index f3cb36f..69fb7a1 100644 +index f3cb36f4..69fb7a17 100644 --- a/src/tethering.c +++ b/src/tethering.c @@ -47,6 +47,7 @@ @@ -425,6 +425,3 @@ index f3cb36f..69fb7a1 100644 static void setup_tun_interface(unsigned int flags, unsigned change, void *data) { --- -1.9.1 - diff --git a/meta-webos/recipes-connectivity/connman/connman/0010-Support-channel-frequency-of-scanned-AP.patch b/meta-webos/recipes-connectivity/connman/connman/0006-Support-channel-frequency-of-scanned-AP.patch similarity index 91% rename from meta-webos/recipes-connectivity/connman/connman/0010-Support-channel-frequency-of-scanned-AP.patch rename to meta-webos/recipes-connectivity/connman/connman/0006-Support-channel-frequency-of-scanned-AP.patch index 241323b06..5e682d90b 100644 --- a/meta-webos/recipes-connectivity/connman/connman/0010-Support-channel-frequency-of-scanned-AP.patch +++ b/meta-webos/recipes-connectivity/connman/connman/0006-Support-channel-frequency-of-scanned-AP.patch @@ -1,10 +1,9 @@ -From 5c558b979b6ac3bb7a1e35b0be989cac0135d738 Mon Sep 17 00:00:00 2001 +From f16a23d3a88d76c651fe9bc8f728f16dab0382d7 Mon Sep 17 00:00:00 2001 From: "sungmok.shin" Date: Wed, 28 Aug 2019 15:35:45 +0900 Subject: [PATCH] Support channel frequency of scanned AP Support channel frequency of scanned AP - --- gsupplicant/gsupplicant.h | 19 +++++ gsupplicant/supplicant.c | 154 ++++++++++++++++++++++++++++++++++++++ @@ -55,7 +54,7 @@ index 77dfe56e..3520ee73 100644 const char *g_supplicant_peer_get_path(GSupplicantPeer *peer); const char *g_supplicant_peer_get_identifier(GSupplicantPeer *peer); diff --git a/gsupplicant/supplicant.c b/gsupplicant/supplicant.c -index 452492af..fc6074c6 100644 +index a8460783..5f92182a 100644 --- a/gsupplicant/supplicant.c +++ b/gsupplicant/supplicant.c @@ -169,6 +169,10 @@ struct _GSupplicantInterface { @@ -69,7 +68,7 @@ index 452492af..fc6074c6 100644 bool p2p_support; bool p2p_finding; bool ap_create_in_progress; -@@ -1115,6 +1119,38 @@ unsigned int g_supplicant_interface_get_max_scan_ssids( +@@ -1117,6 +1121,38 @@ unsigned int g_supplicant_interface_get_max_scan_ssids( return interface->max_scan_ssids; } @@ -108,7 +107,7 @@ index 452492af..fc6074c6 100644 static void set_network_enabled(DBusMessageIter *iter, void *user_data) { dbus_bool_t enable = *(dbus_bool_t *)user_data; -@@ -1264,6 +1300,46 @@ dbus_bool_t g_supplicant_network_is_wps_advertizing(GSupplicantNetwork *network) +@@ -1266,6 +1302,46 @@ dbus_bool_t g_supplicant_network_is_wps_advertizing(GSupplicantNetwork *network) return FALSE; } @@ -155,7 +154,7 @@ index 452492af..fc6074c6 100644 GSupplicantInterface *g_supplicant_peer_get_interface(GSupplicantPeer *peer) { if (!peer) -@@ -2241,6 +2317,36 @@ static void wps_property(const char *key, DBusMessageIter *iter, +@@ -2255,6 +2331,36 @@ static void wps_property(const char *key, DBusMessageIter *iter, } @@ -192,7 +191,7 @@ index 452492af..fc6074c6 100644 static void interface_property(const char *key, DBusMessageIter *iter, void *user_data) { -@@ -2368,6 +2474,9 @@ static void interface_property(const char *key, DBusMessageIter *iter, +@@ -2382,6 +2488,9 @@ static void interface_property(const char *key, DBusMessageIter *iter, } else if (g_strcmp0(key, "Networks") == 0) { supplicant_dbus_array_foreach(iter, interface_network_added, interface); @@ -202,7 +201,7 @@ index 452492af..fc6074c6 100644 } else if (g_strcmp0(key, "DisconnectReason") == 0) { int reason_code; if (dbus_message_iter_get_arg_type(iter) != DBUS_TYPE_INVALID) { -@@ -5875,3 +5984,48 @@ void g_supplicant_unregister(const GSupplicantCallbacks *callbacks) +@@ -5913,3 +6022,48 @@ void g_supplicant_unregister(const GSupplicantCallbacks *callbacks) callbacks_pointer = NULL; eap_methods = 0; } @@ -252,7 +251,7 @@ index 452492af..fc6074c6 100644 + return ret; +} diff --git a/include/device.h b/include/device.h -index 140f9bcf..04eb35de 100644 +index ceb50a29..76878262 100644 --- a/include/device.h +++ b/include/device.h @@ -72,6 +72,7 @@ void connman_device_set_index(struct connman_device *device, int index); @@ -263,7 +262,7 @@ index 140f9bcf..04eb35de 100644 void connman_device_set_ident(struct connman_device *device, const char *ident); -@@ -90,6 +91,11 @@ int connman_device_set_string(struct connman_device *device, +@@ -91,6 +92,11 @@ int connman_device_set_string(struct connman_device *device, const char *connman_device_get_string(struct connman_device *device, const char *key); @@ -275,7 +274,7 @@ index 140f9bcf..04eb35de 100644 int connman_device_add_network(struct connman_device *device, struct connman_network *network); struct connman_network *connman_device_get_network(struct connman_device *device, -@@ -111,6 +117,14 @@ struct connman_device *connman_device_create_from_index(int index); +@@ -112,6 +118,14 @@ struct connman_device *connman_device_create_from_index(int index); struct connman_device *connman_device_find_by_index(int index); int connman_device_reconnect_service(struct connman_device *device); @@ -290,7 +289,7 @@ index 140f9bcf..04eb35de 100644 struct connman_device_driver { const char *name; enum connman_device_type type; -@@ -128,6 +142,7 @@ struct connman_device_driver { +@@ -131,6 +145,7 @@ struct connman_device_driver { const char *alpha2); int (*start_wps) (struct connman_device *device, const char *pin); int (*cancel_wps) (struct connman_device *device); @@ -337,10 +336,10 @@ index 4fc20c1c..ed61718e 100644 const char *name); int connman_network_set_strength(struct connman_network *network, diff --git a/plugins/wifi.c b/plugins/wifi.c -index de45e011..c909a2de 100644 +index ffda170d..47694bc2 100644 --- a/plugins/wifi.c +++ b/plugins/wifi.c -@@ -164,6 +164,12 @@ struct wifi_data { +@@ -170,6 +170,12 @@ struct wifi_data { bool wps_start_deferred; }; @@ -353,7 +352,7 @@ index de45e011..c909a2de 100644 static GList *iface_list = NULL; static GList *pending_wifi_device = NULL; -@@ -175,6 +181,27 @@ static int tech_set_tethering(struct connman_technology *technology, +@@ -181,6 +187,27 @@ static int tech_set_tethering(struct connman_technology *technology, const char *identifier, const char *passphrase, const char *bridge, bool enabled); @@ -381,7 +380,7 @@ index de45e011..c909a2de 100644 static int p2p_tech_probe(struct connman_technology *technology) { p2p_technology = technology; -@@ -2172,6 +2199,52 @@ static int wifi_cancel_wps(struct connman_device *device) +@@ -2266,6 +2293,52 @@ static int wifi_cancel_wps(struct connman_device *device) return cancel_wps(wifi); } @@ -434,8 +433,8 @@ index de45e011..c909a2de 100644 static struct connman_device_driver wifi_ng_driver = { .name = "wifi", .type = CONNMAN_DEVICE_TYPE_WIFI, -@@ -2183,7 +2256,8 @@ static struct connman_device_driver wifi_ng_driver = { - .scan = wifi_scan, +@@ -2278,7 +2351,8 @@ static struct connman_device_driver wifi_ng_driver = { + .stop_scan = wifi_stop_scan, .set_regdom = wifi_set_regdom, .start_wps = wifi_start_wps, - .cancel_wps = wifi_cancel_wps @@ -444,7 +443,7 @@ index de45e011..c909a2de 100644 }; static void system_ready(void) -@@ -3008,6 +3082,7 @@ static void network_added(GSupplicantNetwork *supplicant_network) +@@ -3108,6 +3182,7 @@ static void network_added(GSupplicantNetwork *supplicant_network) bool wps_pbc; bool wps_ready; bool wps_advertizing; @@ -452,7 +451,7 @@ index de45e011..c909a2de 100644 mode = g_supplicant_network_get_mode(supplicant_network); identifier = g_supplicant_network_get_identifier(supplicant_network); -@@ -3027,6 +3102,7 @@ static void network_added(GSupplicantNetwork *supplicant_network) +@@ -3127,6 +3202,7 @@ static void network_added(GSupplicantNetwork *supplicant_network) wps_ready = g_supplicant_network_is_wps_active(supplicant_network); wps_advertizing = g_supplicant_network_is_wps_advertizing( supplicant_network); @@ -460,7 +459,7 @@ index de45e011..c909a2de 100644 if (!wifi) return; -@@ -3091,6 +3167,11 @@ static void network_added(GSupplicantNetwork *supplicant_network) +@@ -3193,6 +3269,11 @@ static void network_added(GSupplicantNetwork *supplicant_network) wifi->hidden = NULL; } } @@ -472,10 +471,10 @@ index de45e011..c909a2de 100644 } static void network_removed(GSupplicantNetwork *network) -@@ -3126,11 +3207,13 @@ static void network_changed(GSupplicantNetwork *network, const char *property) - struct wifi_data *wifi; +@@ -3229,11 +3310,13 @@ static void network_changed(GSupplicantNetwork *network, const char *property) const char *name, *identifier; struct connman_network *connman_network; + bool update_needed; + GHashTable *bss_table; interface = g_supplicant_network_get_interface(network); @@ -486,7 +485,7 @@ index de45e011..c909a2de 100644 DBG("name %s", name); -@@ -3141,6 +3224,11 @@ static void network_changed(GSupplicantNetwork *network, const char *property) +@@ -3244,6 +3327,11 @@ static void network_changed(GSupplicantNetwork *network, const char *property) if (!connman_network) return; @@ -495,11 +494,11 @@ index de45e011..c909a2de 100644 + if (bss_table) + g_hash_table_foreach(bss_table, bss_foreach, connman_network); + - if (g_str_equal(property, "Signal")) { - connman_network_set_strength(connman_network, - calculate_strength(network)); + if (g_str_equal(property, "WPSCapabilities")) { + bool wps; + bool wps_pbc; diff --git a/src/device.c b/src/device.c -index 874e21f7..3e45413b 100644 +index 661523b9..2a343397 100644 --- a/src/device.c +++ b/src/device.c @@ -68,6 +68,11 @@ struct connman_device { @@ -514,7 +513,7 @@ index 874e21f7..3e45413b 100644 }; static void clear_pending_trigger(struct connman_device *device) -@@ -536,6 +541,14 @@ void connman_device_set_interface(struct connman_device *device, +@@ -558,6 +563,14 @@ void connman_device_set_interface(struct connman_device *device, } } @@ -529,7 +528,7 @@ index 874e21f7..3e45413b 100644 /** * connman_device_set_ident: * @device: device structure -@@ -778,6 +791,25 @@ int connman_device_set_string(struct connman_device *device, +@@ -816,6 +829,25 @@ int connman_device_set_string(struct connman_device *device, return 0; } @@ -555,7 +554,7 @@ index 874e21f7..3e45413b 100644 /** * connman_device_get_string: * @device: device structure -@@ -804,6 +836,23 @@ const char *connman_device_get_string(struct connman_device *device, +@@ -842,6 +874,23 @@ const char *connman_device_get_string(struct connman_device *device, return NULL; } @@ -579,7 +578,7 @@ index 874e21f7..3e45413b 100644 /** * connman_device_add_network: * @device: device structure -@@ -1224,6 +1273,18 @@ int __connman_device_request_cancel_wps(enum connman_service_type type) +@@ -1270,6 +1319,18 @@ int __connman_device_request_cancel_wps(enum connman_service_type type) return last_err; } @@ -599,10 +598,10 @@ index 874e21f7..3e45413b 100644 { struct ifreq ifr; diff --git a/src/network.c b/src/network.c -index ed56210f..cbbcd91d 100644 +index 4757d0d7..9bd2d910 100644 --- a/src/network.c +++ b/src/network.c -@@ -44,6 +44,12 @@ +@@ -51,6 +51,12 @@ static GSList *network_list = NULL; static GSList *driver_list = NULL; @@ -615,7 +614,7 @@ index ed56210f..cbbcd91d 100644 struct connman_network { int refcount; enum connman_network_type type; -@@ -53,6 +59,7 @@ struct connman_network { +@@ -60,6 +66,7 @@ struct connman_network { uint8_t strength; uint16_t frequency; char *identifier; @@ -623,15 +622,15 @@ index ed56210f..cbbcd91d 100644 char *name; char *node; char *group; -@@ -92,6 +99,7 @@ struct connman_network { - bool wps; +@@ -100,6 +107,7 @@ struct connman_network { + bool wps_advertizing; bool use_wps; char *pin_wps; + GHashTable *bss; } wifi; }; -@@ -905,15 +913,18 @@ static void network_destruct(struct connman_network *network) +@@ -914,15 +922,18 @@ static void network_destruct(struct connman_network *network) g_free(network->wifi.private_key_passphrase); g_free(network->wifi.phase2_auth); g_free(network->wifi.pin_wps); @@ -650,7 +649,7 @@ index ed56210f..cbbcd91d 100644 g_free(network); } -@@ -946,6 +957,7 @@ struct connman_network *connman_network_create(const char *identifier, +@@ -955,6 +966,7 @@ struct connman_network *connman_network_create(const char *identifier, network->type = type; network->identifier = ident; @@ -658,7 +657,7 @@ index ed56210f..cbbcd91d 100644 network_list = g_slist_prepend(network_list, network); -@@ -1707,6 +1719,90 @@ int connman_network_set_domain(struct connman_network *network, +@@ -1716,6 +1728,90 @@ int connman_network_set_domain(struct connman_network *network, return 0; } @@ -750,10 +749,10 @@ index ed56210f..cbbcd91d 100644 * connman_network_set_name: * @network: network structure diff --git a/src/service.c b/src/service.c -index c7074c9c..319ecf58 100644 +index 6788cbd9..6c593000 100644 --- a/src/service.c +++ b/src/service.c -@@ -141,6 +141,7 @@ static struct connman_ipconfig *create_ip4config(struct connman_service *service +@@ -145,6 +145,7 @@ static struct connman_ipconfig *create_ip4config(struct connman_service *service static struct connman_ipconfig *create_ip6config(struct connman_service *service, int index); static void dns_changed(struct connman_service *service); @@ -761,7 +760,7 @@ index c7074c9c..319ecf58 100644 struct find_data { const char *path; -@@ -1558,6 +1559,13 @@ static void strength_changed(struct connman_service *service) +@@ -1573,6 +1574,13 @@ static void strength_changed(struct connman_service *service) connman_dbus_property_changed_basic(service->path, CONNMAN_SERVICE_INTERFACE, "Strength", DBUS_TYPE_BYTE, &service->strength); @@ -775,7 +774,7 @@ index c7074c9c..319ecf58 100644 } static void favorite_changed(struct connman_service *service) -@@ -2340,6 +2348,57 @@ int __connman_service_iterate_services(service_iterate_cb cb, void *user_data) +@@ -2416,6 +2424,57 @@ int __connman_service_iterate_services(service_iterate_cb cb, void *user_data) return 0; } @@ -833,7 +832,7 @@ index c7074c9c..319ecf58 100644 static void append_properties(DBusMessageIter *dict, dbus_bool_t limited, struct connman_service *service) { -@@ -2405,9 +2464,21 @@ static void append_properties(DBusMessageIter *dict, dbus_bool_t limited, +@@ -2481,9 +2540,21 @@ static void append_properties(DBusMessageIter *dict, dbus_bool_t limited, append_ethernet, service); break; case CONNMAN_SERVICE_TYPE_WIFI: @@ -857,7 +856,7 @@ index c7074c9c..319ecf58 100644 append_ethernet, service); break; diff --git a/src/technology.c b/src/technology.c -index 75e75ae5..13c64fee 100644 +index 27386dd6..3c51f92c 100644 --- a/src/technology.c +++ b/src/technology.c @@ -77,6 +77,7 @@ struct connman_technology { @@ -900,7 +899,7 @@ index 75e75ae5..13c64fee 100644 if (technology->tethering_ident) connman_dbus_dict_append_basic(&dict, "TetheringIdentifier", DBUS_TYPE_STRING, -@@ -1240,6 +1259,51 @@ static DBusMessage *cancel_wps(DBusConnection *conn, DBusMessage *msg, void *dat +@@ -1238,6 +1257,51 @@ static DBusMessage *cancel_wps(DBusConnection *conn, DBusMessage *msg, void *dat return g_dbus_create_reply(msg, DBUS_TYPE_INVALID); } @@ -952,6 +951,3 @@ index 75e75ae5..13c64fee 100644 static const GDBusMethodTable technology_methods[] = { { GDBUS_DEPRECATED_METHOD("GetProperties", NULL, GDBUS_ARGS({ "properties", "a{sv}" }), --- -2.17.1 - diff --git a/meta-webos/recipes-connectivity/connman/connman/0011-Provide-station-information-when-AP-mode.patch b/meta-webos/recipes-connectivity/connman/connman/0007-Provide-station-information-when-AP-mode.patch similarity index 89% rename from meta-webos/recipes-connectivity/connman/connman/0011-Provide-station-information-when-AP-mode.patch rename to meta-webos/recipes-connectivity/connman/connman/0007-Provide-station-information-when-AP-mode.patch index b51ef39f6..38dce8baa 100644 --- a/meta-webos/recipes-connectivity/connman/connman/0011-Provide-station-information-when-AP-mode.patch +++ b/meta-webos/recipes-connectivity/connman/connman/0007-Provide-station-information-when-AP-mode.patch @@ -1,23 +1,22 @@ -From f79b5418cc2cff7127d702170c4f2cf11eda213e Mon Sep 17 00:00:00 2001 +From 883d68ced06559f820532eb192abeb578b74ec04 Mon Sep 17 00:00:00 2001 From: "sungmok.shin" Date: Sat, 31 Aug 2019 14:41:49 +0900 Subject: [PATCH] Provide station information when AP mode Provide station information when AP mode - --- gsupplicant/gsupplicant.h | 2 + - gsupplicant/supplicant.c | 53 +++++++++++++++++++++++++++ + gsupplicant/supplicant.c | 53 ++++++++++++++++++++++ include/technology.h | 2 + - plugins/wifi.c | 21 +++++++++++ - src/connman.h | 11 ++++++ - src/manager.c | 21 +++++++++++ - src/technology.c | 36 ++++++++++++++++++ - src/tethering.c | 93 +++++++++++++++++++++++++++++++++++++++++++++++ + plugins/wifi.c | 21 +++++++++ + src/connman.h | 11 +++++ + src/manager.c | 21 +++++++++ + src/technology.c | 36 +++++++++++++++ + src/tethering.c | 93 +++++++++++++++++++++++++++++++++++++++ 8 files changed, 239 insertions(+) diff --git a/gsupplicant/gsupplicant.h b/gsupplicant/gsupplicant.h -index 3520ee7..a3e5d51 100644 +index 3520ee73..a3e5d517 100644 --- a/gsupplicant/gsupplicant.h +++ b/gsupplicant/gsupplicant.h @@ -375,6 +375,8 @@ struct _GSupplicantCallbacks { @@ -30,10 +29,10 @@ index 3520ee7..a3e5d51 100644 void (*peer_lost) (GSupplicantPeer *peer); void (*peer_changed) (GSupplicantPeer *peer, diff --git a/gsupplicant/supplicant.c b/gsupplicant/supplicant.c -index fc6074c..f9f75a5 100644 +index 5f92182a..059e187a 100644 --- a/gsupplicant/supplicant.c +++ b/gsupplicant/supplicant.c -@@ -3031,6 +3031,56 @@ static void signal_wps_event(const char *path, DBusMessageIter *iter) +@@ -3069,6 +3069,56 @@ static void signal_wps_event(const char *path, DBusMessageIter *iter) callback_wps_state(interface); } @@ -48,7 +47,7 @@ index fc6074c..f9f75a5 100644 + return; + + if (g_strcmp0(path, "/") == 0) -+ return ; ++ return; + + interface = g_hash_table_lookup(interface_table, path); + if (interface == NULL) @@ -90,7 +89,7 @@ index fc6074c..f9f75a5 100644 static void create_peer_identifier(GSupplicantPeer *peer) { const unsigned char test[ETH_ALEN] = {}; -@@ -3591,6 +3641,9 @@ static struct { +@@ -3629,6 +3679,9 @@ static struct { { SUPPLICANT_INTERFACE ".Interface", "NetworkAdded", signal_network_added }, { SUPPLICANT_INTERFACE ".Interface", "NetworkRemoved", signal_network_removed }, @@ -101,7 +100,7 @@ index fc6074c..f9f75a5 100644 { SUPPLICANT_INTERFACE ".Interface.WPS", "Credentials", signal_wps_credentials }, diff --git a/include/technology.h b/include/technology.h -index d24d765..d5c08e4 100644 +index d24d7655..d5c08e4f 100644 --- a/include/technology.h +++ b/include/technology.h @@ -38,6 +38,8 @@ struct connman_technology; @@ -114,10 +113,10 @@ index d24d765..d5c08e4 100644 void connman_technology_regdom_notify(struct connman_technology *technology, const char *alpha2); diff --git a/plugins/wifi.c b/plugins/wifi.c -index c909a2d..f35337f 100644 +index 47694bc2..5bb211c8 100644 --- a/plugins/wifi.c +++ b/plugins/wifi.c -@@ -3287,6 +3287,25 @@ static void network_associated(GSupplicantNetwork *network) +@@ -3425,6 +3425,25 @@ static void network_associated(GSupplicantNetwork *network) interface_state(interface); } @@ -143,7 +142,7 @@ index c909a2d..f35337f 100644 static void apply_peer_services(GSupplicantPeer *peer, struct connman_peer *connman_peer) { -@@ -3507,6 +3526,8 @@ static const GSupplicantCallbacks callbacks = { +@@ -3645,6 +3664,8 @@ static const GSupplicantCallbacks callbacks = { .network_removed = network_removed, .network_changed = network_changed, .network_associated = network_associated, @@ -153,10 +152,10 @@ index c909a2d..f35337f 100644 .peer_lost = peer_lost, .peer_changed = peer_changed, diff --git a/src/connman.h b/src/connman.h -index f617425..8d7aeb0 100644 +index e23fc288..2fffe40d 100644 --- a/src/connman.h +++ b/src/connman.h -@@ -625,10 +625,21 @@ bool __connman_config_get_bool(GKeyFile *key_file, +@@ -629,10 +629,21 @@ bool __connman_config_get_bool(GKeyFile *key_file, bool __connman_config_address_provisioned(const char *address, const char *netmask); @@ -179,7 +178,7 @@ index f617425..8d7aeb0 100644 void __connman_tethering_set_disabled(void); int __connman_tethering_set_enabled_with_ip(const char *ip); diff --git a/src/manager.c b/src/manager.c -index d15ce20..758ac70 100644 +index d15ce203..758ac709 100644 --- a/src/manager.c +++ b/src/manager.c @@ -138,6 +138,24 @@ static DBusMessage *get_technologies(DBusConnection *conn, @@ -218,10 +217,10 @@ index d15ce20..758ac70 100644 GDBUS_ARGS({ "provider", "o" }), NULL, remove_provider) }, diff --git a/src/technology.c b/src/technology.c -index c31c5fc..9dc95f4 100644 +index 3c51f92c..d5454673 100644 --- a/src/technology.c +++ b/src/technology.c -@@ -2118,3 +2118,39 @@ void __connman_technology_cleanup(void) +@@ -2072,3 +2072,39 @@ void __connman_technology_cleanup(void) dbus_connection_unref(connection); } @@ -262,7 +261,7 @@ index c31c5fc..9dc95f4 100644 + DBUS_TYPE_STRING, append_station_mac, NULL); +} diff --git a/src/tethering.c b/src/tethering.c -index 3ed3522..75d08f2 100644 +index 69fb7a17..26d71b45 100644 --- a/src/tethering.c +++ b/src/tethering.c @@ -29,6 +29,7 @@ @@ -272,8 +271,8 @@ index 3ed3522..75d08f2 100644 +#include #include #include - #include -@@ -53,6 +54,9 @@ + #include +@@ -51,6 +52,9 @@ #define DEFAULT_MTU 1500 @@ -283,7 +282,7 @@ index 3ed3522..75d08f2 100644 static char *private_network_primary_dns = NULL; static char *private_network_secondary_dns = NULL; -@@ -61,6 +65,7 @@ static GDHCPServer *tethering_dhcp_server = NULL; +@@ -59,6 +63,7 @@ static GDHCPServer *tethering_dhcp_server = NULL; static struct connman_ippool *dhcp_ippool = NULL; static DBusConnection *connection; static GHashTable *pn_hash; @@ -291,7 +290,7 @@ index 3ed3522..75d08f2 100644 struct connman_private_network { char *owner; -@@ -77,6 +82,89 @@ struct connman_private_network { +@@ -75,6 +80,89 @@ struct connman_private_network { char *secondary_dns; }; @@ -381,7 +380,7 @@ index 3ed3522..75d08f2 100644 const char *__connman_tethering_get_bridge(void) { int sk, err; -@@ -663,6 +751,9 @@ int __connman_tethering_init(void) +@@ -661,6 +749,9 @@ int __connman_tethering_init(void) pn_hash = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, remove_private_network); @@ -391,7 +390,7 @@ index 3ed3522..75d08f2 100644 return 0; } -@@ -683,5 +774,7 @@ void __connman_tethering_cleanup(void) +@@ -681,5 +772,7 @@ void __connman_tethering_cleanup(void) return; g_hash_table_destroy(pn_hash); @@ -399,6 +398,3 @@ index 3ed3522..75d08f2 100644 + g_hash_table_destroy(sta_hash); dbus_connection_unref(connection); } --- -1.9.1 - diff --git a/meta-webos/recipes-connectivity/connman/connman/0012-Fix-compile-error-regarding-connman_tethering_get_st.patch b/meta-webos/recipes-connectivity/connman/connman/0008-Fix-compile-error-regarding-connman_tethering_get_st.patch similarity index 76% rename from meta-webos/recipes-connectivity/connman/connman/0012-Fix-compile-error-regarding-connman_tethering_get_st.patch rename to meta-webos/recipes-connectivity/connman/connman/0008-Fix-compile-error-regarding-connman_tethering_get_st.patch index 7ff3779c5..595c956e9 100644 --- a/meta-webos/recipes-connectivity/connman/connman/0012-Fix-compile-error-regarding-connman_tethering_get_st.patch +++ b/meta-webos/recipes-connectivity/connman/connman/0008-Fix-compile-error-regarding-connman_tethering_get_st.patch @@ -1,20 +1,19 @@ -From 3ed6869711c99640cf70e791e668d31085de34e0 Mon Sep 17 00:00:00 2001 +From b739b0002c4b9b9d16fd58caf23df6277aa7de7a Mon Sep 17 00:00:00 2001 From: "sungmok.shin" Date: Mon, 23 Sep 2019 23:08:32 +0900 Subject: [PATCH] Fix compile error regarding connman_tethering_get_sta_hash Fix compile error regarding connman_tethering_get_sta_hash - --- src/technology.c | 3 +++ src/tethering.c | 2 ++ 2 files changed, 5 insertions(+) diff --git a/src/technology.c b/src/technology.c -index 9dc95f4..951f150 100644 +index d5454673..8ce0e338 100644 --- a/src/technology.c +++ b/src/technology.c -@@ -2123,6 +2123,9 @@ static void append_station_mac(DBusMessageIter *iter, void *user_data) +@@ -2077,6 +2077,9 @@ static void append_station_mac(DBusMessageIter *iter, void *user_data) { GHashTable *sta_hash = __connman_tethering_get_sta_hash(); @@ -25,10 +24,10 @@ index 9dc95f4..951f150 100644 gpointer key, value; g_hash_table_iter_init (&iterator, sta_hash); diff --git a/src/tethering.c b/src/tethering.c -index 75d08f2..d27f15b 100644 +index 26d71b45..a0a9a9d7 100644 --- a/src/tethering.c +++ b/src/tethering.c -@@ -163,6 +163,8 @@ GHashTable *__connman_tethering_get_sta_hash() +@@ -161,6 +161,8 @@ GHashTable *__connman_tethering_get_sta_hash() { if (sta_hash != NULL) return sta_hash; @@ -37,6 +36,3 @@ index 75d08f2..d27f15b 100644 } const char *__connman_tethering_get_bridge(void) --- -1.9.1 - diff --git a/meta-webos/recipes-connectivity/connman/connman_%.bbappend b/meta-webos/recipes-connectivity/connman/connman_%.bbappend index 9e66181d1..1a6353189 100644 --- a/meta-webos/recipes-connectivity/connman/connman_%.bbappend +++ b/meta-webos/recipes-connectivity/connman/connman_%.bbappend @@ -6,14 +6,14 @@ EXTENDPRAUTO_append = "webos9" SYSTEMD_SERVICE_${PN}_remove = "connman.service" SRC_URI += " \ - file://0004-Support-WPS-PBC-and-PIN-mode.patch \ - file://0006-Fix-Unable-to-reconnect-to-same-Wi-Fi.patch \ - file://0007-Fix-for-wifi-network-switching-and-unable-to-connect.patch \ - file://0008-Multiple-wi-fi-networks-are-connected-via-WPS-PIN.patch \ - file://0009-Support-additional-feature-for-tethering.patch \ - file://0010-Support-channel-frequency-of-scanned-AP.patch \ - file://0011-Provide-station-information-when-AP-mode.patch \ - file://0012-Fix-compile-error-regarding-connman_tethering_get_st.patch \ + file://0001-Add-support-for-the-WPS-PBS-and-PIN-mode.patch \ + file://0002-Set-IPv6-state-same-as-IPV4-on-disconnect.patch \ + file://0003-Fix-for-wifi-network-switching-and-unable-to-connect.patch \ + file://0004-Multiple-wi-fi-networks-are-connected-via-WPS-PIN.patch \ + file://0005-Support-additional-feature-for-tethering.patch \ + file://0006-Support-channel-frequency-of-scanned-AP.patch \ + file://0007-Provide-station-information-when-AP-mode.patch \ + file://0008-Fix-compile-error-regarding-connman_tethering_get_st.patch \ " do_install_append() {