Age | Commit message (Collapse) | Author | Files | Lines |
|
D-Bus method calls to may trigger pairing and/or pop up a dialog
in the remote Bluetooth device to which the user needs to react.
|
|
D-Bus method calls to Bluez 4 may trigger pairing and/or pop up a
dialog in the remote device to which the user needs to react.
|
|
PushOOB() method implementation. Currently only basic open/psk based
provisioning is supported.
|
|
Implement also RequestOOB() neard Agent method.
|
|
These properties are not needed here so ignore them.
|
|
|
|
|
|
|
|
|
|
|
|
Implement connect and disconnect functionality for a ConnMan network.
On network creation check the connection status of the Bluez 5 Network1
object and set the network to connected when needed.
|
|
Create ConnMan networks for those Bluez 5 org.bluez.Network1/Device1
objects that support PAN NAP. A network is created or removed in response
to the Network1/Device1 being created or when the Device1 object's UUID
changed.
The ConnMan network struct is added to and removed from the ConnMan
device when the device is created, enabled or disabled.
|
|
The network probed can belong to the new Bluez 5 bluetooth plugin or to
this plugin. Check if this plugin created the network and proceed
accordingly.
|
|
Set up functions monitoring Bluez 5 org.bluez.Network1 objects being
added and removed. Add a GDBusProxy for the org.bluez.Device1 object
that corresponds to the Network1 object. Set up functions monitoring
Network1 'Connected' and Device1 'UUID' properties.
|
|
Set up functions monitoring Bluez 5 objects being added and removed using
GDBusProxy. When an adapter appears, create a new device for it and set up
a watch function for the adapter's 'Powered' property.
Keep the adapter 'Powered' property in sync with the device state and if
they differ reset the adapter to the device state. Also update the Bluez 5
adapter 'Powered' property when the device is enabled or disabled.
|
|
|
|
|
|
Set the plugin priority to CONNMAN_PLUGIN_PRIORITY_LOW and the technology
priority to -10. Update strings to "bluetooth_legacy" and use ordinary
string instead of ident.
|
|
The string is only used for debugging purposes.
|
|
The string is only used for debugging purposes.
|
|
|
|
|
|
When running unit/test-session the following happens if SELinux is disabled but
--enable-session-policy-local is specified for ./configure:
connmand[6468]: src/session.c:__connman_session_create() owner :1.269
connmand[6468]: src/dbus.c:selinux_get_context_reply() Failed to retrieve SELinux context
connmand[6468]: src/session.c:session_create_cb() session 0x2388dc0 config (nil)
connmand[6468]: Aborting (signal 11) [src/connmand]
connmand[6468]: ++++++++ backtrace ++++++++
connmand[6468]: #0 0x7f5b2b8184f0 in /lib/x86_64-linux-gnu/libc.so.6
connmand[6468]: #1 0x4379b4 in policy_local_destroy() at plugins/session_policy_local.c:245
connmand[6468]: #2 0x46703f in free_session() at src/session.c:258
connmand[6468]: #3 0x468603 in session_create_cb() at src/session.c:1710
connmand[6468]: #4 0x4377e7 in selinux_context_reply() at plugins/session_policy_local.c:201
connmand[6468]: #5 0x461366 in selinux_get_context_reply() at src/dbus.c:475
connmand[6468]: #6 0x7f5b2c66b1ca in /lib/x86_64-linux-gnu/libdbus-1.so.3
connmand[6468]: #7 0x7f5b2c66e293 in /lib/x86_64-linux-gnu/libdbus-1.so.3
connmand[6468]: #8 0x410aa8 in message_dispatch() at gdbus/mainloop.c:76
connmand[6468]: #9 0x7f5b2c8eeeeb in /lib/x86_64-linux-gnu/libglib-2.0.so.0
connmand[6468]: #10 0x7f5b2c8ee355 in /lib/x86_64-linux-gnu/libglib-2.0.so.0
connmand[6468]: #11 0x7f5b2c8ee688 in /lib/x86_64-linux-gnu/libglib-2.0.so.0
connmand[6468]: #12 0x7f5b2c8eea82 in /lib/x86_64-linux-gnu/libglib-2.0.so.0
connmand[6468]: #13 0x410592 in main() at src/main.c:672
connmand[6468]: #14 0x7f5b2b804ead in /lib/x86_64-linux-gnu/libc.so.6
connmand[6468]: +++++++++++++++++++++++++++
|
|
Fixes BMC#25894
|
|
When creating a configuration, wait until both configuration and
connection has been done. Otherwise NULL user data is passed to the
callback which then cannot relay an error to the caller and the caller will
get a timeout waiting for a reply from D-Bus.
|
|
Instead of always setting the create callback function error to
-ECONNREFUSED, create a helper function to detect the two most often emitted
errors.
|
|
Create the policy directory as first thing. If we don't do this
adding a watch on the non existing directory will fail and the
whole plugin is not loaded.
We need to figure out later how permissive the MODE of the directory
should be. Currently, we play safe and have it tied down.
|
|
The default configuration will be created by the core if no
plugin is used. Therefore there is no need for this plugin.
|
|
On popular request the plugin is renamed. The plugin is reading
local files and has nothing to do with IVI.
|
|
Remove unused 'err' variable and properly initialize 'ident' for error cases.
|
|
Make sure that user callback data is cleared correctly
if vpn connect attempt fails.
|
|
|
|
We must keep the vpn connections hash alive as long as
connman is running. We must not remove the hash when
vpnd dies, otherwise we might feed null pointer to
various glib hash functions.
|
|
If config file should also be parsed and the values then stored in
the config object.
|
|
Monitor changes on the config files. Either create, modify or destroy
them according the events we get from the inotify interface.
|
|
Introduce the second hash table which tracks the config object lifetime
based on the file existens. The parsing of the file and creation of the
config object is part of the next patch.
|
|
The policy data object is refcounted because the policy data
object can be created either through the session core or
from the file based policy. In order to avoid complex logic
which tries to figure out when to is safe to destroy the object
we just fall back to refcountig.
polich_hash is the owner of the policy object. When a object is
created it is stored there. The key is the identitfier. Since the
session core does not know about the identifier we introduce
an additional hash table which maps from session pointer to the policy
object.
|
|
|
|
Add only the empty 'framework'. In the following patches we add
step by step the implementation.
|
|
|
|
Because the vpnd Create() in manager API only creates and does
not connect the vpn, we must do the connect part after the
vpn is created. This requires a callback which is called when
the connection is established. Eventually this patch becomes
obsolete because the CreateProvider() connman API is deprecated.
|
|
Needed as sometimes we do not know the path but know the ident.
|
|
|
|
The server and user route handling is refactored in order to
reflect the vpn dbus API changes. The routes are now array of
dicts in dbus API.
|
|
|
|
|
|
The device creation function should be part of device.c and
not inet.c. After this change the inet.c can be used by
separate vpn daemon.
|
|
Whenever the GPRS contextext is removed we need also to remove
the network object. Following sequence was observed:
cm_update_attached() /huawei_1 Attached 1
modem_changed() /huawei_1 Interfaces 0x07
Plugin creates network object and registers it at core
cm_update_attached() /huawei_1 Attached 0
service.c:run_auto_connect()
set_property() /huawei_1 path /huawei_1/context1 org.ofono.ConnectionContext.Active
Obviously, the context is not attached at this point so we get an
Failed to change property: /huawei_1/context1 org.ofono.ConnectionContext.Active: org.ofono.Error.NotAttached GPRS is not
attached
Fixes BMC#25725
|
|
If -ECONNABORTED is received from the gsupplicant network disconnect
callback, it's an indication that the interface has already been
removed from wpa_supplicant side. This can happen due to a race condition
between rtnl and wpa_supplicant interface removal when a USB WiFi dongle
is pulled out.
The pointers given to the callback can no longer be trusted, don't touch
them in the callback. The have been removed by other code at this point.
|
|
If service settings cannot be loaded, then skip that service.
Thanks for Felipe Tonello for reporting the issue.
|