Age | Commit message (Collapse) | Author |
|
|
|
A sample OOB plugin that directly exposes OOB functionality over D-Bus.
|
|
|
|
|
|
|
|
Reconnections of data channels should be indicated to others
applications by using the appropriate signal.
|
|
|
|
This should avoid doing too much implicity and should improve the
readability of the code.
|
|
Instead of directly add/remove and owner to transport list do it in a
separate function.
|
|
This make it possible for the owners to synchronize its state if the
transport is going to be suspended.
Note that client which don't want to wait for Release can just ignore/
not wait for its reply.
|
|
Response on AT+BLDN command in maemo6 telephony driver is added to be
sent after confirmation from csd back-end. Both ERROR or OK codes are
sent only after asynchronous response on D-Bus call is available.
|
|
Handling of pending D-Bus calls to csd back-end is added maemo6
telephony driver.
|
|
Add simple SAP client python implementation and a test script.
To run test-sap-server you need Python 2.6 or newer (tested with 2.6 only)
and PyBluez package installed.
|
|
In situations where application wants to switch profiles e.g HFP to A2DP
it normally needs to wait SCO to be disconnected to resume A2DP due to
resource limitations on headset.
There seems to be an issue in the kernel side which prevent this to work
properly, apparently shutdown does not wait the link to be disconnected,
but it is under investigation.
|
|
Error message should indicate the transport correctly which is SCO
not RFCOMM.
|
|
|
|
If an attribute requires authorization, Insuficient Authorization
will be returned by the attribute server until the Agent supports
a method to authorize attribute access.
|
|
After releasing the endpoint should not be used anymore.
|
|
|
|
g_dbus_unregister_interface is removed from maemo6 telephony driver.
Interface com.nokia.MaemoTelephony is not used as result of changes
in csd back-end. CreateWith was replaced by Create and CreateFromLast
method calls, and set last number is implemented directly in csd.
Registration of this interface was removed due to these changes.
|
|
|
|
|
|
This patch changes type of the "pending" variable to uint32_t. A pointer
to this variable is passed to the hci_clear_bit function as void * and
then cast to uint32_t * again.
Previously the unsigned long type could cause some unexpected behavior
due to violating strict aliasing rules. This patch fixes this problem by
making sure that the same integer type is used in all places.
This solution is simpler than the other option of changing the types of
all other places (from uint32_t to unsigned long, including changing
type for casting in hci_*_bit function family). Also, not all places can
be changed, like the hci_dev_info struct, since it would violate
compatibility rules between the kernel and user space.
|
|
Some health devices without IO capabilities can't connect to MCAP
instances when security level is set to HIGH. This patch enables above
devices to connect to Health instances avoiding the MITM problem.
|
|
All sessions should be released when adapter is switched off. Then a new
RequestSession method call always results in change from power off to
power on such ensuring operational mode. Otherwise, it is possible to
end up in adapter state being powered off after RequestSession succeded.
g_slist_free is not called after g_slist_foreach because the list is
updated using g_slist_remove inside of session_free, which is called for
each element by g_slist_foreach.
|
|
|
|
This patch fix the error code in the Error Response PDU. If an attribute
requires authentication and the link security level doesn't meet the
requirements the server should reply Insufficient Authentication(0x05).
|
|
Add SAP dummy driver implementation and extend configure
with --with-sap=<driver>.
|
|
Add new protocol features:
* transfer APDu request/response
* get ATR request/response
* power sim of/on request/response
* card reader status
* set transport protocol
|
|
Add support for SAP protocol features:
* connect and disconnect requests
* connect and disconnect responses
* disconnect indication
* timeouts for the valid connection
|
|
Since media driver uses a2dp to register its sep and store a pointer,
this pointer may be invalid/freed when media driver is unregistered.
To fix this now a2dp will also release any sep registered using media
API.
It also protect from future changes on the order of drivers removal by
checking if pointers (sep or endpoint) are still available in the list
before removing them.
|
|
This forces recalculating the remote SEP if the local SEP's codec type
is no longer the same as the remote SEP's codec type. This can happen
after we issue a BT_STOP_STREAM+BT_CLOSE followed by a
BT_SET_CONFIGURATION with a new SEID.
|
|
|
|
Previously resetting STATE_RESOLVNAME for adapter was missing.
This was causing problems with discovering devices when discovery
was quickly turned off/on during resolving name.
|
|
|
|
|
|
Prior to this commit, there were local buffers inside GATT functions.
Now, a single buffer is used, to make sure the MTU limit is respected.
|
|
The new buffer is allocated in g_attrib_new() and it will be used to
send/receive PDUs. The buffer size is the MTU read from L2CAP channel
limited to ATT_MAX_MTU. Functions to handle the buffer size were also
created.
|
|
|
|
An initial implementation was sent as RFC.
|
|
|
|
This check is necessary to avoid inserting attributes with same handle.
|
|
attrib_db_update() uses g_try_realloc(), which means the memory address
of the updated attribute may change. Callers may need to update
references to the old address.
The new struct attribute pointer is returned to caller by the "attr"
paramater.
|
|
attrib_db_update() uses g_try_realloc() only to expand/shrink space for
the variable "data" field. Therefore existing fields (like handle) are
guaranteed to remain unchanged.
|
|
A NULL uuid_t pointer means that the UUID should remain unchanged. This
simplifies most attrib_db_update() calls which do not change the
attribute UUID.
|
|
This will help debugging issues with registration of GATT services.
|
|
According to the specification the characteristics discover and
characteristics discover by UUID use the same opcode and the result
should be filtered by callback.
|
|
'Protocol not supported' error code is added to the registration of A2DP
end-points. Error response org.bluez.Error.NotSupported instead of
org.bluez.Error.InvalidArguments is used when SEP registration fails due
to disabled corresponding interface in audio.conf.
|
|
With some kernels and the right timing it is possible to get into the
state where we get the local name but haven't yet gotten a DEVUP event.
In such a case it is *not* ok to call init_adapter.
|
|
|