Hi,
Thanks for working on this issue.
> @@ -4098,7 +4098,8 @@ static struct connman_service
> *lookup_by_identifier(const char *identifier)
> }
>
> static struct connman_network *create_hidden_wifi(struct connman_device
> *device,
> - const char *ssid, const char *mode, const char *security)
> + const char *ssid, const char *mode, const char *security,
> + const char *group)
> {
> struct connman_network *network;
> char *name;
> @@ -4109,7 +4110,7 @@ static struct connman_network
> *create_hidden_wifi(struct connman_device *device,
> if (ssid_len < 1)
> return NULL;
>
> - network = connman_network_create(NULL, CONNMAN_NETWORK_TYPE_WIFI);
> + network = connman_network_create(group, CONNMAN_NETWORK_TYPE_WIFI);
> if (network == NULL)
I am not sure if this is what you want to do. In connman_network_create
we do following:
struct connman_network *connman_network_create(const char *identifier,
enum connman_network_type type)
{
[...]
if (identifier == NULL) {
ident = g_strdup_printf("hidden_%d", hidden_counter++);
network->hidden = TRUE;
}
[...]
}
I have not followed through the whole call stack from here, but I am
assuming that in this case we don't need the network->hidden anymore and
also the corresponding code in service.
Samuel and I started to discuss this on IRC but we haven't found yet a
solution. My guts feeling tells me that create_hidden_wifi() should be
in the wifi plugin.
Reasoning: Since all networks and providers are created and maintained
now in the plugin layer it also should go there. If create_hidden_wife()
is in wifi, we can easily identify our own hidden networks when the
network_added() callback is running.
The downside of my proposal is that we would have to extend the struct
connman_network_driver somehow and passing all the arguments to the
plugin. Hmm, this wont be very generic then. Any better ideas?
cheers,
daniel
_______________________________________________
connman mailing list
[email protected]
http://lists.connman.net/listinfo/connman