Commit Graph

1288 Commits

Author SHA1 Message Date
Szymon Janc
f3a0cd30b7 obexd: Remove unused static functions
This fix following build error:

obexd/src/manager.c: At top level:
obexd/src/manager.c:190:13: error:
     ‘dbus_message_iter_append_dict_entry’ defined but not used
     [-Werror=unused-function]
2013-10-04 14:10:33 +03:00
Szymon Janc
d606c25221 obexd/MAP: Remove unused mas_drivers variable
This fix following build error:

  CC     obexd/client/obexd-mns.o
obexd/client/mns.c:344:38: error: ‘mas_drivers’ defined but not used
    [-Werror=unused-variable]
cc1: all warnings being treated as errors
2013-10-04 14:10:33 +03:00
Szymon Janc
21d3b9c3b2 obexd/MAP: Fix missing include
This fix following build error:

  CC     obexd/client/obexd-mns.o
obexd/client/mns.c: In function ‘parse_event_report_handle’:
obexd/client/mns.c:187:2: error: implicit declaration of function
    ‘strtoull’ [-Werror=implicit-function-declaration]
2013-10-04 14:10:33 +03:00
Szymon Janc
fcc8b020d8 obexd/MAP: Fix missing include
This fix following build error:

  CC     obexd/client/obexd-mns.o
obexd/client/mns.c: In function ‘mns_connect’:
obexd/client/mns.c:105:2: error: implicit declaration of function
    ‘manager_register_session’ [-Werror=implicit-function-declaration]
obexd/client/mns.c: In function ‘mns_disconnect’:
obexd/client/mns.c:128:2: error: implicit declaration of function
    ‘manager_unregister_session’ [-Werror=implicit-function-declaration]
2013-10-04 14:10:16 +03:00
Szymon Janc
a78dae8289 obexd/bluetooth: Make dict_append_entry function static
This fix following build error:

  CC     obexd/plugins/obexd-bluetooth.o
obexd/plugins/bluetooth.c:242:6: error: no previous declaration for
     ‘dict_append_entry’ [-Werror=missing-declarations]
2013-10-04 12:21:52 +03:00
Szymon Janc
d0b3d72fea obexd/bluetooth: Remove unused local variables
This ix following build errors:

  CC     obexd/plugins/obexd-bluetooth.o
obexd/plugins/bluetooth.c: In function ‘register_profile_reply’:
obexd/plugins/bluetooth.c:202:10: error: unused variable ‘err’
    [-Werror=unused-variable]

obexd/plugins/bluetooth.c: In function ‘name_acquired’:
obexd/plugins/bluetooth.c:367:15: error: unused variable ‘uuid’
    [-Werror=unused-variable]

obexd/plugins/bluetooth.c: In function ‘name_released’:
obexd/plugins/bluetooth.c:389:15: error: unused variable ‘uuid’
    [-Werror=unused-variable]

obexd/plugins/bluetooth.c: In function ‘bluetooth_start’:
obexd/plugins/bluetooth.c:400:10: error: unused variable ‘ios’
    [-Werror=unused-variable]
2013-10-04 12:21:52 +03:00
Szymon Janc
c1ab916342 obexd/MAP: Fix invalid snprintf format string in map_msg_get()
obexd/client/map.c: In function ‘map_msg_get’:
obexd/client/map.c:446:2: warning: format ‘%u’ expects argument of type
     ‘unsigned int’, but argument 4 has type ‘uint64_t’ [-Wformat]
obexd/client/map.c:446:2: warning: format ‘%u’ expects argument of type
     ‘unsigned int’, but argument 4 has type ‘uint64_t’ [-Wformat]
2013-10-04 10:33:13 +03:00
Luiz Augusto von Dentz
de40e1d3b2 obexd/MAP: Store message handle in binary format
This is more efficient in terms of memory and hash lookups, it is also
not prone to string format bugs in remote stacks such as leading zeros
being treated as a different handle as can be experience with
Nokia N950 which sends events using a handle with leading zeros but
message listing don't have them.
2013-10-03 16:46:41 +03:00
Luiz Augusto von Dentz
27bb25c130 obexd/session: Fix crash while processing command queue
session_process_queue can call a callback which can cause the session to
be freed:
Invalid write of size 4
   at 0x4265C9: session_process (session.c:716)
   by 0x3D46047E05: g_main_context_dispatch (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x3D46048157: ??? (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x3D46048559: g_main_loop_run (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x40D55C: main (main.c:319)
 Address 0x4d658a8 is 104 bytes inside a block of size 120 free'd
   at 0x4A074C4: free (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
   by 0x3D4604D9AE: g_free (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x4265B1: session_process_queue (session.c:794)
   by 0x4265C8: session_process (session.c:714)
   by 0x3D46047E05: g_main_context_dispatch (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x3D46048157: ??? (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x3D46048559: g_main_loop_run (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x40D55C: main (main.c:319)
2013-10-03 16:46:41 +03:00
Christian Fetzer
8b6966a72f obexd: Prefix folders in event reports with leading slash
The internal representation of folder paths starts with a leading slash.
Therefore we have to prepend it to the folders received in event reports.
2013-10-03 16:46:41 +03:00
Christian Fetzer
c55ebae431 obexd: Handle message shift and message deleted events
Update Folder propery if the message has been shifted or deleted.
2013-10-03 16:46:41 +03:00
Christian Fetzer
0e346308d8 obexd: Handle message status events
For outgoing messages, the message status is changed when an event
indicates that the sending/delivery has failed or succeeded.
2013-10-03 16:46:41 +03:00
Christian Fetzer
d4d2b1a1dd obexd: Handle new message event
Register new org.bluez.obex.Message1 D-Bus object when a NewMessage
event report has arrived.
2013-10-03 16:46:40 +03:00
Christian Fetzer
4d96b9beed obexd: Fix emitting Type property changed signals for messages
In order to determine if the message Type property has changed,
the stored type needs to be compared with the parsed type and not with
the raw value received from the MSE.

This fixes the issue that the property changed signal for the Type
property is emitted for every message on every ListMessage call.
2013-10-02 15:27:22 +03:00
Luiz Augusto von Dentz
ed6baf1417 obexd/client: Fix not setting Transfer.Size for GET operations
GET operations may return the length header in the first response which
should be set as transfer Size property.
2013-09-29 17:01:07 +03:00
Luiz Augusto von Dentz
4b354f1c3d obexd/bluetooth: Fix memory leak when adapter is off
sdp_connect fails when Bluetooth adapter is off which leads to the
following leak:
37 bytes in 1 blocks are definitely lost in loss record 68 of 165
   at 0x4A06409: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
   by 0x3B03C4D89E: g_malloc (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x3B03C64BAE: g_strdup (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x427D5D: bluetooth_connect (bluetooth.c:410)
   by 0x426CC9: obc_session_create (session.c:454)
   by 0x425693: create_session (manager.c:203)
   by 0x43D8A3: process_message.isra.5 (object.c:259)
   by 0x3B0701CE85: ??? (in /usr/lib64/libdbus-1.so.3.7.4)
   by 0x3B0700FA30: dbus_connection_dispatch (in /usr/lib64/libdbus-1.so.3.7.4)
   by 0x43A627: message_dispatch (mainloop.c:76)
   by 0x3B03C48962: ??? (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x3B03C47E05: g_main_context_dispatch (in /usr/lib64/libglib-2.0.so.0.3600.3)
2013-09-26 15:53:37 +03:00
Christian Fetzer
f6e2691c08 obexd: Fix setting message folder for relative folder in ListMessages
The method ListMessages allows to specify a relative subfolder.
This subfolder needs to be added to the current path when registering
a new message interface.
2013-09-26 15:47:30 +03:00
Christian Fetzer
0c254a0415 obexd: Add folder property to map_msg_create
Message interfaces are not necessarily created for the current folder,
therefore the folder needs to be specified in a parameter.

For example, messages can be created for sub folders when using the folder
parameter in ListMessages.
2013-09-26 15:34:06 +03:00
Luiz Augusto von Dentz
f4374b0790 obexd/service: Fix possible leaking drivers list
When registering a new driver with obex_service_driver_register there
could exist another driver for the service which will cause the drivers
list to leak.
2013-09-25 11:40:12 +03:00
Luiz Augusto von Dentz
d6b20f4df6 obexd/server: Fix leaking drivers list
The leak can be detected by using G_SLICE=always-malloc which will
produce the following trace using valgrind:
112 bytes in 7 blocks are definitely lost in loss record 123 of 167
   at 0x4A06409: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
   by 0x3B03C4D89E: g_malloc (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x3B03C6344D: g_slice_alloc (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x3B03C647A5: g_slist_append (in /usr/lib64/libglib-2.0.so.0.3600.3)
   by 0x424DD3: obex_service_driver_list (service.c:76)
   by 0x42517F: obex_server_init (server.c:64)
   by 0x40D439: main (main.c:304)
2013-09-25 11:40:12 +03:00
Luiz Augusto von Dentz
6ae5bc7846 obexd/bluetooth: Fix memory leak
g_io_channel_unix_new creates a reference which is then passed to
obex_session_start which creates its on reference via g_io_channel_ref
leading to the following leak:

at 0x4A06409: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x3B03C4D89E: g_malloc (in /usr/lib64/libglib-2.0.so.0.3600.3)
by 0x3B03C88224: g_io_channel_unix_new (in /usr/lib64/libglib-2.0.so.0.3600.3)
by 0x418967: profile_new_connection (bluetooth.c:148)
by 0x43D763: process_message.isra.5 (object.c:259)
2013-09-16 13:35:10 +03:00
Christian Fetzer
829f5dc298 obexd: Remove msg from MAP session structure
The D-Bus message for a pending method call is now stored in the
pending_request struct.
2013-09-16 12:59:55 +03:00
Christian Fetzer
0416930e7e obexd: Use pending request in UpdateInbox 2013-09-16 12:59:54 +03:00
Christian Fetzer
1852ab4e7b obexd: Use pending request in ListMessages 2013-09-16 12:59:54 +03:00
Christian Fetzer
0b74a2e096 obexd: Use pending request in ListFolders 2013-09-16 12:59:54 +03:00
Christian Fetzer
0c182183c9 obexd: Use pending request in SetFolder 2013-09-16 12:59:54 +03:00
Christian Fetzer
762d523986 obexd: Add request struct to MAP
This adds a pending_request struct in order to store the D-Bus request
data.

The current version stores the received D-Bus message in the MAP session
struct. The stored message is overridden by intermediate D-Bus method
calls which can lead into a crash.

Trace:
  arguments to dbus_message_unref() were incorrect,
  assertion "!message->in_cache" failed in file dbus-message.c line 1618.

 0  0x00007ffff6a6a1c9 in raise () from /usr/lib/libc.so.6
 1  0x00007ffff6a6b5c8 in abort () from /usr/lib/libc.so.6
 2  0x00007ffff7313de5 in ?? () from /usr/lib/libdbus-1.so.3
 3  0x00007ffff730ab91 in ?? () from /usr/lib/libdbus-1.so.3
 4  0x000000000043721c in message_listing_cb (session=0x6a7d30,
    transfer=0x6a9450, err=0x0, user_data=0x6a9950) at obexd/client/map.c:1166
 5  0x000000000042f7af in session_terminate_transfer (session=0x6a7d30,
    transfer=0x6a9450, gerr=0x0) at obexd/client/session.c:830
 6  0x000000000042f83d in session_notify_complete (session=0x6a7d30,
    transfer=0x6a9450) at obexd/client/session.c:845
 7  0x000000000042f8dc in transfer_complete (transfer=0x6a9450, err=0x0,
    user_data=0x6a7d30) at obexd/client/session.c:865
 8  0x0000000000439ee7 in xfer_complete (obex=0x677250, err=0x0,
    user_data=0x6a9450) at obexd/client/transfer.c:577
 9  0x000000000043a05f in get_xfer_progress_first (obex=0x677250, err=0x0,
    rsp=0x678730, user_data=0x6a9450) at obexd/client/transfer.c:621
 10 0x0000000000413f08 in handle_response (obex=0x677250, err=0x0,
    rsp=0x678730) at gobex/gobex.c:949
 11 0x00000000004147db in incoming_data (io=0x6a8a00, cond=G_IO_IN,
    user_data=0x677250) at gobex/gobex.c:1192
 12 0x00007ffff702dda6 in g_main_context_dispatch ()
   from /usr/lib/libglib-2.0.so.0
 13 0x00007ffff702e0f8 in ?? () from /usr/lib/libglib-2.0.so.0
 14 0x00007ffff702e4fa in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
 15 0x0000000000427ce8 in main (argc=1, argv=0x7fffffffdd48)
    at obexd/src/main.c:319
2013-09-16 12:59:54 +03:00
Christian Fetzer
85d61d3e2d obexd: Use documented values in org.bluez.obex.Message1 Type property
This updates the values that are presented in the Type property to use
the values from the documentation ("email", "sms-gsm", "sms-cdma", "mms").
The existing code directly used the values as received in the messages
listing object ("EMAIL", "SMS_GSM", "SMS_CDMA", "MMS").
2013-09-13 12:51:28 +03:00
Andrei Emeltchenko
c64fd37802 codingstyle: Change __FUNCTION__ to __func__
The __func__ macro is part of the C99 standard whereas __FUNCTION__ is a
legacy gcc specific alias for it:

	http://gcc.gnu.org/onlinedocs/gcc/Function-Names.html

Additionally, checkpatch.pl that's commonly used to verify coding style
also recommends to use __func__ instead of __FUNCTION__.
2013-09-11 13:22:08 +03:00
Luiz Augusto von Dentz
18ce687813 obexd/bluetooth: Fix error on register_profile
The error happens whenever RegisterProfile fails the interface is not
unregistered causing any subsequent call to register_profile function
to fail:

obexd[944]: D-Bus failed to register /org/bluez/obex/00005005_0000_1000_8000_0002ee000001
obexd[944]: bluetooth: Failed to register profile (null)
2013-09-10 14:48:35 +03:00
Luiz Augusto von Dentz
6972187adf obexd: Make use of g_dbus_send_message*
This replaces dbus_connection_send* with g_dbus_send_message* which do
not alter message order.
2013-09-09 17:35:30 +03:00
Luiz Augusto von Dentz
361f5d4b6b obexd: Fix disconnecting underline transport before processing operations
The transport connection should only be dropped once all references to
the session are released otherwise some pending operations may not be
processed and the session will not be freed.
2013-09-02 13:29:43 +03:00
Christian Fetzer
904d3418a2 obexd: Add property changed signals for 'org.bluez.obex.Message1'
This patch adds property changed signal emissions in case message properties
change on the server.
2013-09-02 13:29:42 +03:00
Christian Fetzer
4fa9cbfeaa obexd: Add property Folder to MAP message 2013-09-02 13:13:16 +03:00
Christian Fetzer
02d6828e61 obexd: Add obc_session_get_folder function
This patch extends client session by the tracking of the current folder.
The current folder can be accessed by obc_session_get_current_folder.

This allows drivers to add a folder property to browsed objects so that
the application doesn't have to keep track of the folder an object
belongs to.
2013-09-02 13:13:16 +03:00
Christian Fetzer
ba83a3e071 obexd: Use g_dbus_get_properties when parsing MAP-msg-listing
Currently the message D-Bus properties for the ListMessages response are put
together manually in the parse_* functions unsing obex_dbus_dict_append.
This patch simplifies it by calling g_dbus_get_properties for every message.
2013-08-26 15:23:14 +03:00
Christian Fetzer
576fb290a5 obexd: Fix memleak when unregistering MAP event handler
96 bytes in 3 blocks are definitely lost in loss record 217 of 310
  at 0x4C29E84: calloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
  by 0x5977858: g_malloc0 (in /usr/lib/libglib-2.0.so.0.3600.3)
  by 0x433A87: map_register_event_handler (map-event.c:76)
  by 0x4324C1: set_notification_registration (map.c:1722)
  by 0x4325BB: map_probe (map.c:1801)
  by 0x42D55C: obc_session_register (session.c:862)
  by 0x42BE4B: create_callback (manager.c:100)
  by 0x42CA0D: connect_cb (session.c:281)
  by 0x4191CB: handle_response (gobex.c:949)
  by 0x4196F0: incoming_data (gobex.c:1192)
  by 0x5971DA5: g_main_context_dispatch (in /usr/lib/libglib-2.0.so.0.3600.3)
  by 0x59720F7: ??? (in /usr/lib/libglib-2.0.so.0.3600.3)
2013-08-26 14:56:39 +03:00
Luiz Augusto von Dentz
feb46c1d38 client/transfer: Add proper message to errors
This improve the error message when a transfer fails by using
g_obex_strerror to decode the response code to a human readable string.
2013-08-12 13:48:09 +03:00
Martin
ae672c6f3e obexd/client: Add Target property to Session interface
Target property is already documented property but it was not
implemented.
2013-07-08 18:48:53 +03:00
Christian Fetzer
831221dc5b obexd: Re-add D-Bus session properties
This got lost when switching to org.freedesktop.DBus.Properties.
2013-06-30 22:11:54 +03:00
Luiz Augusto von Dentz
6132e6eee0 obexd/MAP: Fix assigning pointer not value to 0
The fix introduced by 455fb131f0 would
leave err value uninitialized and set the pointer to 0 which doesn't
make any sense.
2013-06-26 16:19:30 +03:00
Luiz Augusto von Dentz
455fb131f0 obexd/MAP: Fix crash when receiving an event report
Conditional jump or move depends on uninitialised value(s)
   at 0x42C1AF: obex_put_stream_start (obex.c:869)
   by 0x428D1A: mns_put (mns.c:148)
   by 0x42B521: cmd_put (obex.c:982)
   by 0x419FB5: incoming_data (gobex.c:1022)
   by 0x3F31A47A54: g_main_context_dispatch (in /usr/lib64/libglib-2.0.so.0.3400.2)
   by 0x3F31A47D87: ??? (in /usr/lib64/libglib-2.0.so.0.3400.2)
   by 0x3F31A48181: g_main_loop_run (in /usr/lib64/libglib-2.0.so.0.3400.2)
   by 0x40DEE2: main (main.c:319)
 Uninitialised value was created by a stack allocation
   at 0x42C160: obex_put_stream_start (obex.c:862)
2013-06-25 16:44:57 +03:00
Christian Fetzer
c743b7830a obexd: Notify registered notification handlers in MNS 2013-06-25 16:12:47 +03:00
Christian Fetzer
cc68717c10 obexd: Register notification handler in the MAP client 2013-06-25 16:12:47 +03:00
Christian Fetzer
5a8f019229 obexd: Add MAP notification dispatching
The MAP specification allows to reuse one MNS server instance for all
local MAS client instances. This dispatching of event reports to the
correct MAS client instance is done by the MAS instance id and the
device address.

The dispatcher component allows MAS client instances to register a
notification handler. Events reports are forwarded by the MNS server using
map_dispatch_event.
2013-06-25 15:58:29 +03:00
Christian Fetzer
56de7139da obexd: Add function to get the destination from the obc_session 2013-06-25 15:04:42 +03:00
Christian Fetzer
7a8aeaf09c obexd: Fix crash when retrieving multiple MAP event reports
The remote address used for dispatching the MAP notifications is
initialized when the MNS is connected. Therefore it needs to be freed
when the session is destroyed and not after receiving an event report.

Trace:

  0  0x00007ffff6a6a1c9 in raise () from /usr/lib/libc.so.6
  1  0x00007ffff6a6b5c8 in abort () from /usr/lib/libc.so.6
  2  0x00007ffff6aa8037 in __libc_message () from /usr/lib/libc.so.6
  3  0x00007ffff6aad8ae in malloc_printerr () from /usr/lib/libc.so.6
  4  0x00007ffff6aae587 in _int_free () from /usr/lib/libc.so.6
  5  0x00000000004273b0 in event_report_close (obj=0x69a5b0)
     at obexd/client/mns.c:295
  6  0x0000000000429549 in os_reset_session (os=0x69c210)
     at obexd/src/obex.c:199
  7  0x000000000041bec6 in transfer_complete (transfer=0x69a9d0, err=0x0)
     at gobex/gobex-transfer.c:103
  8  0x000000000041c20c in transfer_put_req (obex=0x69b470,
     req=<optimized out>, user_data=0x69a9d0) at
       gobex/gobex-transfer.c:407
  9  0x000000000041988d in handle_request (req=0x69f3d0, obex=0x69b470)
     at gobex/gobex.c:1022
  10 incoming_data (io=<optimized out>, cond=<optimized out>,
     user_data=0x69b470) at gobex/gobex.c:1194
  11 0x00007ffff702de46 in g_main_context_dispatch ()
     from /usr/lib/libglib-2.0.so.0
  12 0x00007ffff702e198 in ?? () from /usr/lib/libglib-2.0.so.0
  13 0x00007ffff702e59a in g_main_loop_run () from
       /usr/lib/libglib-2.0.so.0
  14 0x000000000040dead in main (argc=1, argv=0x7fffffffddc8)
     at obexd/src/main.c:319
2013-06-18 14:45:09 +03:00
Christian Fetzer
2237294c8d obexd: Use correct callback in obc_session_mkdir
The function obc_session_mkdir needs to use file_op_complete as
callback.

  0  0x00007ffff72f7553 in ?? () from /usr/lib/libdbus-1.so.3
  1  0x00007ffff72f7dff in ?? () from /usr/lib/libdbus-1.so.3
  2  0x00007ffff72fef9a in dbus_message_get_sender ()
     from /usr/lib/libdbus-1.so.3
  3  0x00007ffff72feff9 in dbus_message_new_method_return ()
     from /usr/lib/libdbus-1.so.3
  4  0x000000000043c93f in async_cb (session=0x6a9d30, transfer=0x0,
       err=0x0,
     user_data=0x675660) at obexd/client/ftp.c:65
  5  0x0000000000438c7c in async_cb (obex=0x6aa980, err=0x0,
       rsp=0x67a690,
     user_data=0x67ced0) at obexd/client/session.c:1035
  6  0x000000000041cbcc in handle_response (obex=0x6aa980, err=0x0,
     rsp=0x67a690) at gobex/gobex.c:949
  7  0x000000000041d49f in incoming_data (io=0x67d0f0, cond=G_IO_IN,
     user_data=0x6aa980) at gobex/gobex.c:1192
  8  0x00007ffff702de46 in g_main_context_dispatch ()
     from /usr/lib/libglib-2.0.so.0
  9  0x00007ffff702e198 in ?? () from /usr/lib/libglib-2.0.so.0
  10 0x00007ffff702e59a in g_main_loop_run () from
       /usr/lib/libglib-2.0.so.0
  11 0x0000000000430a09 in main (argc=1, argv=0x7fffffffddc8)
     at obexd/src/main.c:319
2013-06-18 13:43:01 +03:00
Christian Fetzer
b402f99241 obexd: Fix file_op_complete callback
The file_op_complete callback added for the OBEX session command queuing
is called with a file_data parameter and not with a pending_request.

This fixes a crash when calling one of the file commands (like delete).

  0  0x0000000000438cd6 in file_op_complete (session=0x6a9d30,
       transfer=0x0,
     err=0x0, user_data=0x6762e0) at obexd/client/session.c:1054
  1  0x0000000000438c64 in async_cb (obex=0x6aa980, err=0x0,
       rsp=0x67a710,
     user_data=0x6ac2c0) at obexd/client/session.c:1035
  2  0x000000000041cbcc in handle_response (obex=0x6aa980, err=0x0,
     rsp=0x67a710) at gobex/gobex.c:949
  3  0x000000000041d49f in incoming_data (io=0x67d0f0, cond=G_IO_IN,
     user_data=0x6aa980) at gobex/gobex.c:1192
  4  0x00007ffff702de46 in g_main_context_dispatch ()
     from /usr/lib/libglib-2.0.so.0
  5  0x00007ffff702e198 in ?? () from /usr/lib/libglib-2.0.so.0
  6  0x00007ffff702e59a in g_main_loop_run () from
       /usr/lib/libglib-2.0.so.0
  7  0x00000000004309f0 in main (argc=1, argv=0x7fffffffddc8)
     at obexd/src/main.c:319
2013-06-18 13:43:00 +03:00
Christian Fetzer
4e16c256ed obexd: Call setpath_complete with the correct parameter
The function setpath_complete has to be called with a pending_request as
user_data. In one possible error case, the current code calls it
incorrectly with setpath_data.
2013-06-18 13:43:00 +03:00