| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There are two functions in phonebook-dummy that were returning
'int's instead of 'struct dummy_data'
phonebook_create_cache
phonebook_get_entry
As a result, when an obex-client sends the GetSize command, the obexd
on the server segfaults.
Fix this by storing the id and returning the dummy_data struct.
The GetSize test now passes correctly.
|
|
|
|
|
|
|
|
|
|
| |
When the remote device sends the 'CreateFolder' command, obexd
first tries to verify the path in ftp_setpath(). Because we are
creating a new directory, the verify_path() is expected to fail (it does
not exist yet; ENOENT).
Trap that special case and cause the function to fail directly to the
create directory path.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When client queries for the size of a phonebook we fall into a
indefinite loop as g_obex_apparam_encode always returns the same
number of items added to the buffer regardless how often it is
called. In former times where this code wasn't using GObexApparams
a array was reduced each time the headers where added and so we could
easily find out when we've added all headers. However today we need
to solve this a bit differently by also setting the firstpacket flag
when we receive the phonebook size result from the phonebook
implementation which then lets us correctly go through without
falling into a indefinite loop.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The default path is /etc/bluetooth/vcard.vcf which obexd
is not able to access.
obexd[11654]: obexd/src/obex.c:cmd_get() session 0x64edff0
obexd[11654]: GET(0x3), (null)(0xffffffff)
obexd[11654]: obexd/src/obex.c:parse_type() TYPE: text/x-vcard
obexd[11654]: open(/etc/bluetooth/vcard.vcf): Operation not permitted (1)
obexd[11654]: GET(0x3), NOT_FOUND(0x44)
After making this path as obex root folder,
it is able to succeed.
obexd[12246]: obexd/src/obex.c:cmd_get() session 0x64ed830
obexd[12246]: GET(0x3), (null)(0xffffffff)
obexd[12246]: obexd/src/obex.c:parse_type() TYPE: text/x-vcard
obexd[12246]: obexd/src/obex.c:driver_get_headers() name=(null) type=text/x-vcard object=0x8
obexd[12246]: GET(0x3), CONTINUE(0x10)
obexd[12246]: obexd/src/obex.c:send_data() name=(null) type=text/x-vcard file=0x8 size=3061
obexd[12246]: obexd/src/obex.c:driver_read() 73 read
obexd[12246]: obexd/src/obex.c:send_data() name=(null) type=text/x-vcard file=0x8 size=3066
obexd[12246]: obexd/src/obex.c:driver_read() 0 read
obexd[12246]: obexd/src/obex.c:transfer_complete()
|
|
|
|
|
| |
This fix compilation error with musl due to missing (now not needed)
stdint.h include.
|
|
|
|
| |
NULL pointer check for name is done before using the same.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
As described in coding style M10.
|
|
|
|
|
| |
As per spec(5.3.4.4) when MaxListCount headser is missing then
PSE should assume MaxListCount value as MAX (65535)
|
|
|
|
|
| |
Changes made to emit transfer completed to .Transfer1 interface on
ftp reset.
|
|
|
|
| |
This enables transfer management for FTP connections.
|
|
|
|
| |
Changes made to handle method open for mime_notification_registration
|
|
|
|
|
| |
Changes made to add support for MSE local time and timezone offset
parameter along with GetMessageListing response.
|
|
|
|
| |
Add support for the speed-dial and favorite folders.
|
|
|
|
|
|
|
|
|
|
|
|
| |
CC obexd/plugins/obexd-filesystem.o
In file included from obexd/plugins/filesystem.c:40:0:
/usr/include/wait.h:1:2: error: #warning redirecting incorrect
#include <wait.h> to <sys/wait.h> [-Werror=cpp]
#warning redirecting incorrect #include <wait.h> to <sys/wait.h>
^
cc1: all warnings being treated as errors
Makefile:6447: recipe for target 'obexd/plugins/obexd-filesystem.o' failed
make[1]: *** [obexd/plugins/obexd-filesystem.o] Error 1
|
|
|
|
|
| |
outparams can be NULL meaning no application parameters should be added
to the response.
|
|
|
|
|
| |
Some commands don't have any mandatory application parameter which means
inparams can be NULL which should not be treated as a bad request.
|
|
|
|
|
| |
As g_obex_apparam_set_uint16() converts data to big-endian format
internally, do not call htons() prior to it.
|
| |
|
|
|
|
|
|
| |
The old macro PB_LUID_FOLDER had the folder luid on the second level:
/telecom/luid. But the luid folder occurs per IrMC spec on level three
e.g. /telecom/pb/luid.
|
|
|
|
|
|
|
|
| |
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]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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]
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
| |
This replaces dbus_connection_send* with g_dbus_send_message* which do
not alter message order.
|
|
|
|
|
|
|
|
|
| |
The fd needs to be checked as it may not be valid which cause the
following warnings:
==8162== Warning: invalid file descriptor 1031 in syscall fcntl(DUPFD_CLOEXEC)()
(obexd:8162): GLib-WARNING **: giounix.c:412Error while getting flags for FD: Bad file descriptor (9)
|
| |
|
|
|
|
| |
The Session interface wasn't registered when a new transfer arrives.
|
|
|
|
|
| |
Use plain int instead of gint. In glib gint is always a typedef to int,
so it's safe to use it even for callbacks with glib.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Use a helper function to void code duplication.
|
|
|
|
| |
Transfer path should use the session path as prefix
|
|
|
|
|
| |
This plugin is not longer maintained and used to work only in meego
times.
|
| |
|
|
|
|
| |
Standart service records are already supported by bluetoothd
|
|
|
|
| |
Standart service records are already supported by bluetoothd
|
|
|
|
| |
Standart service records are already supported by bluetoothd
|
|
|
|
| |
Standart service records are already supported by bluetoothd
|
|
|
|
| |
Standart service records are already supported by bluetoothd
|
|
|
|
|
| |
Services such as pcsuite and syncml use custom records not defined by
Bluetooth SIG so they have to be registered using ServiceRecord entry.
|
| |
|
| |
|
|
|
|
| |
This changes obexd to use ProfileManager.RegisterProfile
|