framework/connectivity/neard.git
11 years agonfc_copy: Add LLCP socket option names
Samuel Ortiz [Fri, 22 Feb 2013 10:51:02 +0000 (11:51 +0100)]
nfc_copy: Add LLCP socket option names

11 years agop2p: Remove client data from the server client list when channel closes
Samuel Ortiz [Thu, 21 Feb 2013 16:37:29 +0000 (17:37 +0100)]
p2p: Remove client data from the server client list when channel closes

11 years agonfctool: Close sniffer socket when getting IO errors
Samuel Ortiz [Thu, 21 Feb 2013 16:28:49 +0000 (17:28 +0100)]
nfctool: Close sniffer socket when getting IO errors

11 years agosnep-validation: Remove DBG statement from init and exit routines
Samuel Ortiz [Thu, 21 Feb 2013 11:27:23 +0000 (12:27 +0100)]
snep-validation: Remove DBG statement from init and exit routines

11 years agodevice: Do not double free the device records list
Samuel Ortiz [Fri, 15 Feb 2013 16:59:07 +0000 (17:59 +0100)]
device: Do not double free the device records list

Typo from the previous commit...

11 years agodevice: Do not open code the records freeing routine
Samuel Ortiz [Fri, 15 Feb 2013 15:25:58 +0000 (16:25 +0100)]
device: Do not open code the records freeing routine

Use near_ndef_records_free instead.

11 years agomonitor-near: Monitor Tags and Devices properties
Samuel Ortiz [Fri, 15 Feb 2013 15:24:48 +0000 (16:24 +0100)]
monitor-near: Monitor Tags and Devices properties

11 years agotag: Send PropertyChanged signal when new records are added
Samuel Ortiz [Fri, 15 Feb 2013 15:24:25 +0000 (16:24 +0100)]
tag: Send PropertyChanged signal when new records are added

11 years agodevice: Send PropertyChanged signal when new records are added
Samuel Ortiz [Fri, 15 Feb 2013 15:23:50 +0000 (16:23 +0100)]
device: Send PropertyChanged signal when new records are added

11 years agop2p: Do not try to bind if LLCP is not supported
Samuel Ortiz [Fri, 15 Feb 2013 15:15:02 +0000 (16:15 +0100)]
p2p: Do not try to bind if LLCP is not supported

11 years agogdbus: Add g_dbus_proxy_set_removed_watch
Denis Kenzior [Thu, 7 Feb 2013 16:22:57 +0000 (10:22 -0600)]
gdbus: Add g_dbus_proxy_set_removed_watch

11 years agogdbus: Fix missing PropertiesChanged signal
Vinicius Costa Gomes [Thu, 7 Feb 2013 17:40:31 +0000 (14:40 -0300)]
gdbus: Fix missing PropertiesChanged signal

If D-Bus ObjectManager is not supported, InterfacesAdded signal
checking needs to be ignored otherwise PropertiesChanged signal
will never be sent.

11 years agonfctype3: Do not call write callback if the initial write command succeeds
Olivier Guiter [Thu, 14 Feb 2013 15:19:50 +0000 (16:19 +0100)]
nfctype3: Do not call write callback if the initial write command succeeds

When write-tag on a type 3 tag, the command returns
with "Invalid arguments", though it actually writes successfully.

11 years agosnep: Fix Android's handover over SNEP support
Olivier Guiter [Mon, 11 Feb 2013 15:52:33 +0000 (16:52 +0100)]
snep: Fix Android's handover over SNEP support

Android does handover over SNEP and recent changes broke the offset used
to check the handover frame validity.

11 years agohandover: Reply with no ACs when getting an Hr with an empty AC list
Olivier Guiter [Mon, 11 Feb 2013 15:52:32 +0000 (16:52 +0100)]
handover: Reply with no ACs when getting an Hr with an empty AC list

This fixes handover validation test #2.

If the Hr comes with no alternative carriers, the Hs AC list should be
empty as well.

11 years agondef: Send empty Hs when an Hr carries a single unknow type carrier
Olivier Guiter [Mon, 11 Feb 2013 15:52:31 +0000 (16:52 +0100)]
ndef: Send empty Hs when an Hr carries a single unknow type carrier

This fixes handover validation test #6.

Check that the remote handover server returns a select message
without alternative carriers if a single carrier of unknown type was
sent with the handover request.

11 years agondef: Send empty Hs frame when the Hr version check fails
Olivier Guiter [Mon, 11 Feb 2013 15:52:30 +0000 (16:52 +0100)]
ndef: Send empty Hs frame when the Hr version check fails

This fixes handover validation test #3.

Verify that the remote handover server handles historic and future
handover request version numbers. The test failed on step 4
(Check version 15.0).

11 years agondef: Do not build a reply to handover select messages
Olivier Guiter [Mon, 11 Feb 2013 14:33:52 +0000 (15:33 +0100)]
ndef: Do not build a reply to handover select messages

Handover select frames must not be replied to.

This fixes the following bt-handover error:
"ERROR:dbus.connection:Exception in handler for D-Bus signal"

11 years agogdbus: Don't call property changed callback during client init
Marcel Holtmann [Mon, 11 Feb 2013 19:19:10 +0000 (20:19 +0100)]
gdbus: Don't call property changed callback during client init

When the client uses ObjectManager to init properties, do not call
property changed callbacks. They should only be called once the proxy
added has been successfully signaled since the proxy itself provides
a full copy of available properties.

11 years agotest: Update handover agent register/unregister tests
Ravi kumar Veeramally [Fri, 8 Feb 2013 12:01:50 +0000 (14:01 +0200)]
test: Update handover agent register/unregister tests

To match the new API.

11 years agoagent: Add an extra parameter to the handover registration agent api
Ravi kumar Veeramally [Fri, 8 Feb 2013 12:01:49 +0000 (14:01 +0200)]
agent: Add an extra parameter to the handover registration agent api

Current handover registration apis does not support for carrier
specific registration. Added an extra parameter (carrier type) to
RegisterHandoverAgent and UnregisterHandoverAgent. This is an initial
patch for wifi handover agent registration. WiFi NDEF message handling
will be supported soon.

11 years agonear: Rename struct name bt_data to carrier_data
Ravi kumar Veeramally [Fri, 8 Feb 2013 12:01:48 +0000 (14:01 +0200)]
near: Rename struct name bt_data to carrier_data

To be more generic, renaming structure name from bt_data to
carrier_data.

11 years agoadapter: Disconnect from the target when data read fails to start
Samuel Ortiz [Wed, 6 Feb 2013 08:00:04 +0000 (09:00 +0100)]
adapter: Disconnect from the target when data read fails to start

11 years agounit: Rename test-ndef to test-ndef-parse
Samuel Ortiz [Sun, 3 Feb 2013 20:09:20 +0000 (21:09 +0100)]
unit: Rename test-ndef to test-ndef-parse

11 years agounit: Add initial NDEF building test
Samuel Ortiz [Sun, 3 Feb 2013 20:07:11 +0000 (21:07 +0100)]
unit: Add initial NDEF building test

11 years agogdbus: Fix unpublished interface signal emission
Johan Hedberg [Fri, 1 Feb 2013 15:03:22 +0000 (09:03 -0600)]
gdbus: Fix unpublished interface signal emission

If we haven't published an interface yet (i.e. it's in the data->added
list), we should just ignore any property changed indications as the
values for the properties will anyway be part of the InterfacesAdded
signal.

11 years agoinclude: Add a copy of the NFC kernel header
Samuel Ortiz [Thu, 31 Jan 2013 09:06:16 +0000 (10:06 +0100)]
include: Add a copy of the NFC kernel header

With the netlink kernel API changes, including a copy of the NFC header and
not relying on the system one will allow clean builds. The drawback could
be missing runtime features but that's better than not being able to run
the daemon at all.

11 years agodevice: Fix free order in push_ndef
Szymon Janc [Fri, 4 Jan 2013 15:10:38 +0000 (16:10 +0100)]
device: Fix free order in push_ndef

ndef was freed before ndef->data.

Invalid read of size 8
   at 0x41CF58: push_ndef (device.c:287)
   by 0x40B850: process_message.isra.4 (object.c:285)
   by 0x5143C40: ??? (in /lib/x86_64-linux-gnu/libdbus-1.so.3.5.8)
   by 0x5135B0F: dbus_connection_dispatch (in /lib/x86_64-linux-gnu/libdbus-1.so.3.5.8)
   by 0x409247: message_dispatch (mainloop.c:76)
   by 0x4E7A91A: ??? (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3)
   by 0x4E79D52: g_main_context_dispatch (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3)
   by 0x4E7A09F: ??? (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3)
   by 0x4E7A499: g_main_loop_run (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3)
   by 0x408D8E: main (main.c:221)
 Address 0x6847fb0 is 16 bytes inside a block of size 24 free'd
   at 0x4C2A82E: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
   by 0x41CF57: push_ndef (device.c:286)
   by 0x40B850: process_message.isra.4 (object.c:285)
   by 0x5143C40: ??? (in /lib/x86_64-linux-gnu/libdbus-1.so.3.5.8)
   by 0x5135B0F: dbus_connection_dispatch (in /lib/x86_64-linux-gnu/libdbus-1.so.3.5.8)
   by 0x409247: message_dispatch (mainloop.c:76)
   by 0x4E7A91A: ??? (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3)
   by 0x4E79D52: g_main_context_dispatch (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3)
   by 0x4E7A09F: ??? (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3)
   by 0x4E7A499: g_main_loop_run (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3)
   by 0x408D8E: main (main.c:221)

11 years agop2p: Fix memory leak in p2p_listener_event
Szymon Janc [Fri, 4 Jan 2013 15:10:37 +0000 (16:10 +0100)]
p2p: Fix memory leak in p2p_listener_event

g_io_add_watch keeps own reference to iochannel so local reference
should be dropped before leaving.

882 (840 direct, 42 indirect) bytes in 7 blocks are definitely lost in loss record 177 of 192
   at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
   by 0x4E7FA78: g_malloc (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3)
   by 0x4EB66F4: g_io_channel_unix_new (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3)
   by 0x416C6F: p2p_listener_event (p2p.c:187)
   by 0x4E79D52: g_main_context_dispatch (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3)
   by 0x4E7A09F: ??? (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3)
   by 0x4E7A499: g_main_loop_run (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3)
   by 0x408DDE: main (main.c:221)

11 years agondef: Fix error message in near_ndef_prepare_handover_record
Szymon Janc [Fri, 4 Jan 2013 15:10:36 +0000 (16:10 +0100)]
ndef: Fix error message in near_ndef_prepare_handover_record

This function is used to create both Hs and Hr records.

11 years agosnep: Check ndef length before applying Android workaround
Szymon Janc [Wed, 23 Jan 2013 07:50:46 +0000 (08:50 +0100)]
snep: Check ndef length before applying Android workaround

With crafted NDEF message data outside of buffer could be read from
and write to. Potentially leading to segmentation fault or some other
undefined behaviour.

11 years agondef: Fix checking for error in parse_mime_type
Szymon Janc [Fri, 4 Jan 2013 15:10:34 +0000 (16:10 +0100)]
ndef: Fix checking for error in parse_mime_type

Upper layer don't know if action will be held or not when providing
ndef_message for reply. It is possible that reply was provided but
not used and this is not always an error

11 years agondef: Remove not needed AC payload creation in build_ho_record
Szymon Janc [Fri, 4 Jan 2013 15:10:33 +0000 (16:10 +0100)]
ndef: Remove not needed AC payload creation in build_ho_record

It was not used to create ndef message as AC recors is created inside
near_ndef_prepare_handover_record based on response from HO agent.

11 years agondef: Use stack variable for record in build_ho_record
Szymon Janc [Fri, 4 Jan 2013 15:10:32 +0000 (16:10 +0100)]
ndef: Use stack variable for record in build_ho_record

There is no need to dynamically allocate record as it is not used
after build_ho_record returns.

11 years agondef: Fix memory leak in build_ho_record
Szymon Janc [Fri, 4 Jan 2013 15:10:31 +0000 (16:10 +0100)]
ndef: Fix memory leak in build_ho_record

record data needs to be freed before returning ndef.

144 (80 direct, 64 indirect) bytes in 1 blocks are definitely lost in loss record 142 of 190
   at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
   by 0x4E7FBFD: g_try_malloc0 (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3)
   by 0x424477: __ndef_build_from_message (ndef.c:2950)
   by 0x41CEE3: push_ndef (device.c:276)
   by 0x40B850: process_message.isra.4 (object.c:285)
   by 0x5143C40: ??? (in /lib/x86_64-linux-gnu/libdbus-1.so.3.5.8)
   by 0x5135B0F: dbus_connection_dispatch (in /lib/x86_64-linux-gnu/libdbus-1.so.3.5.8)
   by 0x409247: message_dispatch (mainloop.c:76)
   by 0x4E7A91A: ??? (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3)
   by 0x4E79D52: g_main_context_dispatch (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3)
   by 0x4E7A09F: ??? (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3)
   by 0x4E7A499: g_main_loop_run (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3)

11 years agobluetooth: Track adapter properties changes
Szymon Janc [Fri, 4 Jan 2013 15:10:30 +0000 (16:10 +0100)]
bluetooth: Track adapter properties changes

Watch for PropertyChanged signal to keep track of changed properties.
Only properties used for EIR creation are tracked (name, cod, powered).

11 years agotest: Add 'State' support for handover-agent
Szymon Janc [Fri, 4 Jan 2013 15:10:29 +0000 (16:10 +0100)]
test: Add 'State' support for handover-agent

This allows to pass power state hint with handover-agent.

11 years agondef: Prepare ac record with proper BT power state
Szymon Janc [Fri, 4 Jan 2013 15:10:28 +0000 (16:10 +0100)]
ndef: Prepare ac record with proper BT power state

When adding AC record for BT handover user state provided in bt_data
to properly indicate BT carrier power state.

11 years agoagent: Set carrier power state from hint in parse_reply
Szymon Janc [Fri, 4 Jan 2013 15:10:27 +0000 (16:10 +0100)]
agent: Set carrier power state from hint in parse_reply

Set carrier power state in struct bt_data if HO agent provided power
state hint in RequestOOB reply.

11 years agoagent: Set carrier power state hint in prepare_bt_data
Szymon Janc [Fri, 4 Jan 2013 15:10:26 +0000 (16:10 +0100)]
agent: Set carrier power state hint in prepare_bt_data

If alternative carrier is power state is known add it to dictionary.

11 years agoAdd carrier power state to struct bt_data
Szymon Janc [Fri, 4 Jan 2013 15:10:25 +0000 (16:10 +0100)]
Add carrier power state to struct bt_data

Add state to bt_data and set it according to power state received in
Hs/Hr messages.

11 years agondef: Validate CPS when parsing AC record
Szymon Janc [Fri, 4 Jan 2013 15:10:24 +0000 (16:10 +0100)]
ndef: Validate CPS when parsing AC record

CPS is 2-bit field so mask out reserved bits from first byte of AC
record.

11 years agondef: Move carrier_power_state definition to header file
Szymon Janc [Fri, 4 Jan 2013 15:10:23 +0000 (16:10 +0100)]
ndef: Move carrier_power_state definition to header file

It will be also used by handover agent implementation

11 years agodoc: Remove not really needed errors from Handover Agent API
Szymon Janc [Fri, 4 Jan 2013 15:10:22 +0000 (16:10 +0100)]
doc: Remove not really needed errors from Handover Agent API

Only InProgress error is really usefull as in such case neard could
retry operation. Other errors don't give any useful information
comparing to simply returning Failed with proper error message.

11 years agodoc: Add 'State' field to handover agent API
Szymon Janc [Fri, 4 Jan 2013 15:10:21 +0000 (16:10 +0100)]
doc: Add 'State' field to handover agent API

This will allow both agent and neard to be informed about power state
of carrier. It is up to agent to decide what to do with information
provided e.g. in case of 'activating' state it could delay connection
attempt. This will also allow to properly set Carrier Power State in
ac record.

11 years agogdbus: Check for valid path before handling properties
Marcel Holtmann [Mon, 21 Jan 2013 02:25:12 +0000 (18:25 -0800)]
gdbus: Check for valid path before handling properties

11 years agobuild: Add unit tests during distribution building
Marcel Holtmann [Tue, 15 Jan 2013 23:51:41 +0000 (15:51 -0800)]
build: Add unit tests during distribution building

11 years agounit: Fix includes for build testing
Marcel Holtmann [Tue, 15 Jan 2013 23:51:23 +0000 (15:51 -0800)]
unit: Fix includes for build testing

11 years agobuild: Header files are also part of the build material
Marcel Holtmann [Tue, 15 Jan 2013 23:49:15 +0000 (15:49 -0800)]
build: Header files are also part of the build material

11 years agobuild: Add unit/test-ndef to .gitignore list
Marcel Holtmann [Tue, 15 Jan 2013 23:40:08 +0000 (15:40 -0800)]
build: Add unit/test-ndef to .gitignore list

11 years agobuild: Include unit test in make check run
Marcel Holtmann [Tue, 15 Jan 2013 23:39:27 +0000 (15:39 -0800)]
build: Include unit test in make check run

11 years agounit: Hide all g_print statements behind g_test_verbose switch
Marcel Holtmann [Tue, 15 Jan 2013 23:35:31 +0000 (15:35 -0800)]
unit: Hide all g_print statements behind g_test_verbose switch

11 years agoRelease 0.9
Samuel Ortiz [Fri, 11 Jan 2013 16:29:32 +0000 (17:29 +0100)]
Release 0.9

11 years agobuild: Do not use deprecated AM_CONFIG_HEADER
Lucas De Marchi [Thu, 10 Jan 2013 15:18:14 +0000 (13:18 -0200)]
build: Do not use deprecated AM_CONFIG_HEADER

The long-obsoleted AM_CONFIG_HEADER macro was removed in automake 1.13.
Use AC_CONFIG_HEADERS instead.

11 years agobuild: Use AM_CPPFLAGS instead of INCLUDES
Lucas De Marchi [Thu, 10 Jan 2013 15:18:13 +0000 (13:18 -0200)]
build: Use AM_CPPFLAGS instead of INCLUDES

Makefile.am:50: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')

11 years agotypes: Fix build error due to unaligned memory access
Olivier Guiter [Wed, 9 Jan 2013 12:42:37 +0000 (13:42 +0100)]
types: Fix build error due to unaligned memory access

This fix number of build error on architectures that can't handle
unaligned memory access (eg. ARM).

Most of the code was originally written in BlueZ's bluetooth.h.

11 years agosnep: SNEP validation test server implementation
Olivier Guiter [Wed, 9 Jan 2013 14:15:12 +0000 (15:15 +0100)]
snep: SNEP validation test server implementation

NFC forum defined a SNEP Validation specification. This set of patches
makes neard to pass all the SNEP test cases, providing a SNEP validation
server as a default one.

11 years agosnep: Separate snep default server code from snep core
Olivier Guiter [Wed, 9 Jan 2013 14:15:11 +0000 (15:15 +0100)]
snep: Separate snep default server code from snep core

In order to introduce the SNEP Validation server, we separate core
functions from snep default server code. This split leads to factorize
some parts of the process.
This code also improves the SNEP fragmentation code, more specifically
in snep_core_response_with_info.

11 years agondef: Add records comparison helpers
Olivier Guiter [Wed, 9 Jan 2013 14:15:10 +0000 (15:15 +0100)]
ndef: Add records comparison helpers

These functions propose to check ndef records for specific fields
like mime type or ID field in record header.

11 years agounit: Add Title and URI records SmartPoster NDEF unit test
Samuel Ortiz [Wed, 9 Jan 2013 11:10:57 +0000 (12:10 +0100)]
unit: Add Title and URI records SmartPoster NDEF unit test

11 years agounit: URI NDEF test should check for the field length
Samuel Ortiz [Wed, 9 Jan 2013 10:36:20 +0000 (11:36 +0100)]
unit: URI NDEF test should check for the field length

11 years agounit: Add single record SmartPoster NDEF unit test
Samuel Ortiz [Wed, 9 Jan 2013 10:34:58 +0000 (11:34 +0100)]
unit: Add single record SmartPoster NDEF unit test

11 years agounit: Add Text NDEF record unit test
Samuel Ortiz [Wed, 9 Jan 2013 09:56:22 +0000 (10:56 +0100)]
unit: Add Text NDEF record unit test

11 years agounit: Add test-ndef unit test
Samuel Ortiz [Tue, 8 Jan 2013 23:49:38 +0000 (00:49 +0100)]
unit: Add test-ndef unit test

test-ndef checks for the URI record parsing validity.

11 years agotest: Remove the NDEF argument from ndef-agent
Samuel Ortiz [Tue, 8 Jan 2013 23:45:49 +0000 (00:45 +0100)]
test: Remove the NDEF argument from ndef-agent

Since ndef-agent won't implement the handover agent API, no need to
specify the NDEF argument.

11 years agotest: Rename simple-agent to ndef-agent
Samuel Ortiz [Tue, 8 Jan 2013 18:36:32 +0000 (19:36 +0100)]
test: Rename simple-agent to ndef-agent

11 years agonfctool: Fix build failure with libnl v1
Samuel Ortiz [Tue, 8 Jan 2013 15:12:13 +0000 (16:12 +0100)]
nfctool: Fix build failure with libnl v1

With libnl v1 neard fails to build with:

tools/nfctool/netlink.c: In function ‘nl_send_msg’:
tools/nfctool/netlink.c:135:2: error: passing argument 1 of
‘nl_send_auto_complete’ from incompatible pointer type [-Werror]
/usr/include/netlink/netlink.h:48:14: note: expected ‘struct nl_handle *’ but
argument is of type ‘struct nl_sock *’
tools/nfctool/netlink.c:153:3: error: passing argument 1 of ‘nl_recvmsgs’ from
incompatible pointer type [-Werror]
/usr/include/netlink/netlink.h:58:14: note: expected ‘struct nl_handle *’ but
argument is of type ‘struct nl_sock *’
tools/nfctool/netlink.c: In function ‘nl_get_multicast_id’:
tools/nfctool/netlink.c:212:2: error: passing argument 1 of
‘genl_ctrl_resolve’ from incompatible pointer type [-Werror]
/usr/include/netlink/genl/ctrl.h:29:14: note: expected ‘struct nl_handle *’
but argument is of type ‘struct nl_sock *’
[...]

Adding the regular compatibility layer fixes it.

11 years agoadapter: Fix memory leaks on adapter free
Szymon Janc [Fri, 30 Nov 2012 09:40:45 +0000 (10:40 +0100)]
adapter: Fix memory leaks on adapter free

Destroy hash tables when removing adapter.

184 (88 direct, 96 indirect) bytes in 1 blocks are definitely lost in loss record 132 of 156
   at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
   by 0x4E7FA78: g_malloc (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3)
   by 0x4E92CA2: g_slice_alloc (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3)
   by 0x4E69A02: g_hash_table_new_full (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3)
   by 0x418AD7: __near_adapter_create (adapter.c:613)
   by 0x41790F: __near_manager_adapter_add (manager.c:79)
   by 0x41D1CB: get_devices_handler (netlink.c:173)
   by 0x579A4A9: nl_recvmsgs (in /lib/libnl-3.so.200.3.0)
   by 0x41C562: nl_send_msg (netlink.c:136)
   by 0x41D38A: __near_netlink_get_adapters (netlink.c:200)
   by 0x4084F1: main (main.c:210)

184 (88 direct, 96 indirect) bytes in 1 blocks are definitely lost in loss record 133 of 156
   at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
   by 0x4E7FA78: g_malloc (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3)
   by 0x4E92CA2: g_slice_alloc (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3)
   by 0x4E69A02: g_hash_table_new_full (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3)
   by 0x418AF8: __near_adapter_create (adapter.c:617)
   by 0x41790F: __near_manager_adapter_add (manager.c:79)
   by 0x41D1CB: get_devices_handler (netlink.c:173)
   by 0x579A4A9: nl_recvmsgs (in /lib/libnl-3.so.200.3.0)
   by 0x41C562: nl_send_msg (netlink.c:136)
   by 0x41D38A: __near_netlink_get_adapters (netlink.c:200)
   by 0x4084F1: main (main.c:210)

11 years agogdbus: Fix memory leak on properties_set()
Anderson Lizardo [Sun, 6 Jan 2013 00:47:46 +0000 (20:47 -0400)]
gdbus: Fix memory leak on properties_set()

The pointer returned by dbus_message_iter_get_signature() must be freed
with dbus_free().

Fixes this memory leak:

==1857== 16 bytes in 1 blocks are definitely lost in loss record 104 of
251
==1857==    at 0x402BF52: realloc (in
/usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==1857==    by 0x415E286: dbus_realloc (in
/lib/i386-linux-gnu/libdbus-1.so.3.5.8)
==1857==    by 0x415E70B: ??? (in
/lib/i386-linux-gnu/libdbus-1.so.3.5.8)
==1857==    by 0x415F17B: ??? (in
/lib/i386-linux-gnu/libdbus-1.so.3.5.8)
==1857==    by 0x414CB33: dbus_message_iter_get_signature (in
/lib/i386-linux-gnu/libdbus-1.so.3.5.8)
==1857==    by 0x8053239: properties_set (object.c:899)
==1857==    by 0x5FFFFF: ???
==1857==

11 years agoneard: nfctool: Add LLCP frame decoding support
Thierry Escande [Fri, 14 Dec 2012 14:34:01 +0000 (15:34 +0100)]
neard: nfctool: Add LLCP frame decoding support

nfctool now dumps LLCP frames in a human readable manner

11 years agoneard: nfctool: Add LLCP traffic sniffing feature
Thierry Escande [Fri, 14 Dec 2012 14:34:00 +0000 (15:34 +0100)]
neard: nfctool: Add LLCP traffic sniffing feature

nfctool -d nfcX --sniffer
This dumps LLCP frames to stdout (Hex+ASCII display)

nfctool -d nfcX --sniffer --pcap-file FILENAME
This saves LLCP frames in pcap format to file FILENAME. This pcap file
can be opened in wireshark (v>=1.8.2) with the wireshark-nfc plugin
available at http://code.google.com/p/wireshark-nfc/

11 years agoneard: nfctool: Add an option to set LTO, RW, and MIUX parameters
Thierry Escande [Fri, 14 Dec 2012 14:33:59 +0000 (15:33 +0100)]
neard: nfctool: Add an option to set LTO, RW, and MIUX parameters

nfctool --device nfcX --set-param lto=x,rw=y,miux=z
This sets one or more of the LTO, RW, or MIUX parameters for device nfcX

11 years agoneard: nfctool: Add start_poll command
Thierry Escande [Fri, 14 Dec 2012 14:33:58 +0000 (15:33 +0100)]
neard: nfctool: Add start_poll command

nfctool --device nfcX --poll [Initiator|Target|Both]
This starts polling on device nfcX as initiator, target, or both.

11 years agoneard: Add nfctool native application
Thierry Escande [Fri, 14 Dec 2012 14:33:57 +0000 (15:33 +0100)]
neard: Add nfctool native application

nfctool is a native application used as a tool box for various nfc related
operations. First goal is to be able to do such operations on embedded
platforms that don't have a python interpretor (since all neard test tools
are pyhton scripts)

This initial release can list nfc adapters, targets, etc.

11 years agoAUTHORS: Mention Christophe's contributions
Samuel Ortiz [Thu, 13 Dec 2012 12:19:02 +0000 (13:19 +0100)]
AUTHORS: Mention Christophe's contributions

11 years agotest: Support writing SMS and e-mail address to a tag
Christophe Prigent [Wed, 12 Dec 2012 16:14:59 +0000 (17:14 +0100)]
test: Support writing SMS and e-mail address to a tag

11 years agogdbus: Check signature of property value before calling setter
Marcel Holtmann [Sat, 5 Jan 2013 04:28:07 +0000 (20:28 -0800)]
gdbus: Check signature of property value before calling setter

11 years agogdbus: Don't include just added interfaces in GetManagedObjects
Lucas De Marchi [Fri, 4 Jan 2013 03:33:44 +0000 (01:33 -0200)]
gdbus: Don't include just added interfaces in GetManagedObjects

If we received a call to ObjectManager.GetManagedObject we should not
include in the response the interfaces in data->added. This is because
it's not guaranteed that those interfaces will trigger an
InterfacesAdded signal, which is the case if the interface is removed in
the same mainloop iteration.

11 years agogdbus: Simplify generated introspection
Lucas De Marchi [Fri, 4 Jan 2013 01:21:04 +0000 (23:21 -0200)]
gdbus: Simplify generated introspection

The generated introspection is not supposed to be read as is by human,
so there's no point in printing the indentation or writing more code to
use auto-close tags.

If it's desired to read the raw xml file, user can always use other
tools to transform the output such as "xmllint --format".

This also fixes a missing </property> when property is deprecated.

11 years agogdbus: Hold client reference during get name owner reply
Marcel Holtmann [Wed, 2 Jan 2013 15:35:53 +0000 (07:35 -0800)]
gdbus: Hold client reference during get name owner reply

11 years agogdbus: Call check_signals when sending signals with g_dbus_send_message
Luiz Augusto von Dentz [Fri, 28 Dec 2012 12:51:03 +0000 (14:51 +0200)]
gdbus: Call check_signals when sending signals with g_dbus_send_message

If message passed to g_dbus_send_message is a signal verify if it is a
valid and there really exists an interface with respective signal name.

11 years agogdbus: Check if the interface being registered is valid
Luiz Augusto von Dentz [Fri, 28 Dec 2012 12:51:02 +0000 (14:51 +0200)]
gdbus: Check if the interface being registered is valid

This prevent registering interfaces that are empty or have all members
marked as experiemental.

11 years agogdbus: Introduce G_DBUS_PROPERTY_FLAG_EXPERIMENTAL
Luiz Augusto von Dentz [Fri, 28 Dec 2012 12:51:01 +0000 (14:51 +0200)]
gdbus: Introduce G_DBUS_PROPERTY_FLAG_EXPERIMENTAL

This flag can be used to mark properties as experimental, marked
properties are disabled by default and can be enabled by setting
G_DBUS_FLAG_ENABLE_EXPERIMENTAL using g_dbus_set_flags.

11 years agogdbus: Introduce G_DBUS_SIGNAL_FLAG_EXPERIMENTAL
Luiz Augusto von Dentz [Fri, 28 Dec 2012 12:51:00 +0000 (14:51 +0200)]
gdbus: Introduce G_DBUS_SIGNAL_FLAG_EXPERIMENTAL

This flag can be used to mark signals as experimental, marked
signals are disabled by default and can be enabled by setting
G_DBUS_FLAG_ENABLE_EXPERIMENTAL using g_dbus_set_flags.

11 years agogdbus: Introduce G_DBUS_METHOD_FLAG_EXPERIMENTAL
Luiz Augusto von Dentz [Fri, 28 Dec 2012 12:50:59 +0000 (14:50 +0200)]
gdbus: Introduce G_DBUS_METHOD_FLAG_EXPERIMENTAL

This flag can be used to mark methods as experimental, marked
methods are disable by default and can be enabled by setting
G_DBUS_FLAG_ENABLE_EXPERIMENTAL using g_dbus_set_flags.

11 years agogdbus: Include changed properties only once per signal
Marcel Holtmann [Sun, 30 Dec 2012 08:58:04 +0000 (00:58 -0800)]
gdbus: Include changed properties only once per signal

11 years agogdbus: Update properties on D-Bus client re-connections
Marcel Holtmann [Sat, 29 Dec 2012 21:42:51 +0000 (13:42 -0800)]
gdbus: Update properties on D-Bus client re-connections

11 years agogdbus: Add function to manually refresh properties
Marcel Holtmann [Sat, 29 Dec 2012 21:24:17 +0000 (13:24 -0800)]
gdbus: Add function to manually refresh properties

11 years agogdbus: Add support for proxy property change notifications
Marcel Holtmann [Sat, 29 Dec 2012 20:29:50 +0000 (12:29 -0800)]
gdbus: Add support for proxy property change notifications

11 years agogdbus: Fix handling of client connect/disconnect signals
Marcel Holtmann [Sat, 29 Dec 2012 20:27:33 +0000 (12:27 -0800)]
gdbus: Fix handling of client connect/disconnect signals

11 years agogdbus: Protect standalone proxy creation with client reference
Marcel Holtmann [Sat, 29 Dec 2012 19:57:05 +0000 (11:57 -0800)]
gdbus: Protect standalone proxy creation with client reference

11 years agogdbus: Use object manager only if callback functions are set
Marcel Holtmann [Fri, 28 Dec 2012 05:30:06 +0000 (21:30 -0800)]
gdbus: Use object manager only if callback functions are set

11 years agogdbus: Use client service name and not hardcoded org.bluez
Marcel Holtmann [Fri, 28 Dec 2012 05:21:16 +0000 (21:21 -0800)]
gdbus: Use client service name and not hardcoded org.bluez

11 years agogdbus: Add support for creating D-Bus proxies without object manager
Marcel Holtmann [Fri, 28 Dec 2012 05:19:31 +0000 (21:19 -0800)]
gdbus: Add support for creating D-Bus proxies without object manager

11 years agogdbus: Avoid using g_ptr_array_new_full convenience function
Marcel Holtmann [Sat, 22 Dec 2012 20:05:59 +0000 (12:05 -0800)]
gdbus: Avoid using g_ptr_array_new_full convenience function

The g_ptr_array_new_full function only got introduced with GLib 2.30
and to avoid requiring a newer GLib use g_ptr_array_set_free_func instead.

11 years agobuild: Compile support for new D-Bus client helpers
Marcel Holtmann [Wed, 19 Dec 2012 02:46:18 +0000 (03:46 +0100)]
build: Compile support for new D-Bus client helpers

11 years agogdbus: Increase the method call timeout to 5 minutes
Marcel Holtmann [Tue, 18 Dec 2012 04:27:09 +0000 (05:27 +0100)]
gdbus: Increase the method call timeout to 5 minutes

11 years agogdbus: Add helper for sending async error replies
Marcel Holtmann [Tue, 18 Dec 2012 04:09:59 +0000 (05:09 +0100)]
gdbus: Add helper for sending async error replies

11 years agogdbus: Fix race condition with creating duplicate client proxies
Marcel Holtmann [Sun, 16 Dec 2012 00:16:28 +0000 (01:16 +0100)]
gdbus: Fix race condition with creating duplicate client proxies

11 years agogdbus: Fix issue with unref of client while parsing interfaces
Marcel Holtmann [Sun, 16 Dec 2012 00:06:33 +0000 (01:06 +0100)]
gdbus: Fix issue with unref of client while parsing interfaces