Hi All,
I am currently working on MAP implementation in BlueZ.
I am trying below things to make MAS connect with remote MCE client.
Below are the steps we followed;
On MCE device:
--> MAS search
--> MAS connect
--> SET PATH (/)
On Bluez, obexd:
--> Run "bluetoothd"
--> Run "obexd"
--> On SET_PATH command it sends the obex session value as NULL.
obexd[32713]: obexd/plugins/bluetooth.c:profile_new_connection() device
/org/bluez/hci0/dev_00_1B_DC_07_33_4E
obexd[32713]: obexd/src/obex.c:obex_session_start()
obexd[32713]: obexd/src/obex.c:cmd_connect()
obexd[32713]: CONNECT(0x0), (null)(0xffffffff)
obexd[32713]: obexd/src/obex.c:cmd_connect() Selected driver: Message Access
server
obexd[32713]: obexd/plugins/mas.c:mas_connect()
obexd[32713]: CONNECT(0x0), (null)(0x0)
obexd[32713]: obexd/src/obex.c:cmd_setpath()
obexd[32713]: obexd/src/obex.c:cmd_setpath() (null)
obexd[32713]: SETPATH(0x5), (null)(0xffffffff)
obexd[32713]: obexd/src/obex.c:parse_name() NAME:
obexd[32713]: obexd/plugins/mas.c:mas_setpath() SETPATH: name nonhdr 0x20
obexd[32713]: SETPATH(0x5), NOT_FOUND(0x44)
Do we need to configure or run anything else before starting up obexd?
Hi,
On Wed, Aug 6, 2014 at 2:30 PM, Gowtham Anandha Babu
<[email protected]> wrote:
> Hi All,
>
> I am currently working on MAP implementation in BlueZ.
> I am trying below things to make MAS connect with remote MCE client.
>
> Below are the steps we followed;
>
> On MCE device:
> --> MAS search
> --> MAS connect
> --> SET PATH (/)
>
> On Bluez, obexd:
> --> Run "bluetoothd"
> --> Run "obexd"
> --> On SET_PATH command it sends the obex session value as NULL.
>
>
> obexd[32713]: obexd/plugins/bluetooth.c:profile_new_connection() device
> /org/bluez/hci0/dev_00_1B_DC_07_33_4E
> obexd[32713]: obexd/src/obex.c:obex_session_start()
> obexd[32713]: obexd/src/obex.c:cmd_connect()
> obexd[32713]: CONNECT(0x0), (null)(0xffffffff)
> obexd[32713]: obexd/src/obex.c:cmd_connect() Selected driver: Message Access
> server
> obexd[32713]: obexd/plugins/mas.c:mas_connect()
> obexd[32713]: CONNECT(0x0), (null)(0x0)
> obexd[32713]: obexd/src/obex.c:cmd_setpath()
> obexd[32713]: obexd/src/obex.c:cmd_setpath() (null)
> obexd[32713]: SETPATH(0x5), (null)(0xffffffff)
> obexd[32713]: obexd/src/obex.c:parse_name() NAME:
> obexd[32713]: obexd/plugins/mas.c:mas_setpath() SETPATH: name nonhdr 0x20
> obexd[32713]: SETPATH(0x5), NOT_FOUND(0x44)
>
> Do we need to configure or run anything else before starting up obexd?
You are probably missing a backend implementation for your message
database, currently we are building with dummy as backend but the idea
is that we switch to a runtime solution probably we a D-Bus agent
interface to interact with these requests using a file descriptor to
optimize the data transfer. iirc samsung has done a D-Bus backend for
BlueZ 4 in Tizen perhaps you can star by looking what kind of
interface is there.
--
Luiz Augusto von Dentz
Hi,
> -----Original Message-----
> From: [email protected] [mailto:linux-bluetooth-
> [email protected]] On Behalf Of Luiz Augusto von Dentz
> Sent: Wednesday, September 03, 2014 5:49 PM
> To: Gowtham Anandha Babu
> Cc: [email protected]
> Subject: Re: Query regarding MAP 1.2 implementation
>
> Hi,
>
> On Wed, Sep 3, 2014 at 3:18 PM, Gowtham Anandha Babu
> <[email protected]> wrote:
> > Hi,
> >
> >> -----Original Message-----
> >> From: Luiz Augusto von Dentz [mailto:[email protected]]
> >> Sent: Wednesday, September 03, 2014 5:34 PM
> >> To: Gowtham Anandha Babu
> >> Cc: [email protected]; Bharat Panda
> >> Subject: Re: Query regarding MAP 1.2 implementation
> >>
> >> Hi,
> >>
> >> On Wed, Sep 3, 2014 at 2:35 PM, Gowtham Anandha Babu
> >> <[email protected]> wrote:
> >> > Hi,
> >> >
> >> >> -----Original Message-----
> >> >> From: Luiz Augusto von Dentz [mailto:[email protected]]
> >> >> Sent: Wednesday, September 03, 2014 3:57 PM
> >> >> To: Gowtham Anandha Babu
> >> >> Cc: [email protected]
> >> >> Subject: Re: Query regarding MAP 1.2 implementation
> >> >>
> >> >> Hi,
> >> >>
> >> >> On Tue, Sep 2, 2014 at 11:28 AM, Luiz Augusto von Dentz
> >> >> <[email protected]> wrote:
> >> >> > Hi,
> >> >> >
> >> >> > On Tue, Sep 2, 2014 at 8:22 AM, Gowtham Anandha Babu
> >> >> > <[email protected]> wrote:
> >> >> >>
> >> >> >> Hi Luiz,
> >> >> >>
> >> >> >>> -----Original Message-----
> >> >> >>> From: [email protected]
> >> >> >>> [mailto:linux-bluetooth- [email protected]] On Behalf Of
> >> >> >>> Luiz Augusto von Dentz
> >> >> >>> Sent: Monday, September 01, 2014 6:37 PM
> >> >> >>> To: Gowtham Anandha Babu
> >> >> >>> Cc: [email protected]; Bharat Panda
> >> >> >>> Subject: Re: Query regarding MAP 1.2 implementation
> >> >> >>>
> >> >> >>> Hi,
> >> >> >>>
> >> >> >>> On Mon, Sep 1, 2014 at 3:29 PM, Gowtham Anandha Babu
> >> >> >>> <[email protected]> wrote:
> >> >> >>>
> >> >> >>> > The current message-dummy.c looks like, it is creating a
> >> >> >>> > virtual folder in the
> >> >> >>> system (Ex. Home/PC-NAME/map-messages/).
> >> >> >>> > So, I created the map-messages directory in home/PC-NAME/.
> >> Then
> >> >> >>> > I tried
> >> >> >>> SETPATH (mentioned in the previous thread).
> >> >> >>> > The output is...
> >> >> >>> >
> >> >> >>> > obexd[29146]: obexd/src/obex.c:cmd_setpath()
> >> >> >>> > obexd[29146]: SETPATH(0x5), (null)(0xffffffff)
> >> >> >>> > obexd[29146]: obexd/src/obex.c:parse_name() NAME:
> >> >> >>> > obexd[29146]: obexd/plugins/mas.c:mas_setpath() SETPATH:
> >> >> >>> > name
> >> >> >>> nonhdr
> >> >> >>> > 0x20
> >> >> >>> > obexd[29146]: SETPATH(0x5), SUCCESS(0x20)
> >> >> >>> >
> >> >> >>> > But When I tried to call GetFolderListing() The output is...
> >> >> >>> >
> >> >> >>> > obexd[29146]: obexd/src/obex.c:cmd_get() session 0x1008c40
> >> >> >>> > obexd[29146]: GET(0x3), (null)(0xffffffff)
> >> >> >>> > obexd[29146]: obexd/src/obex.c:parse_type() TYPE:
> >> >> >>> > x-obex/folder-listing
> >> >> >>> > obexd[29146]: obexd/plugins/mas.c:mas_get() GET: name (null)
> >> >> >>> > type x-obex/folder-listing mas 0x1015c00
> >> >> >>> > obexd[29146]: obexd/plugins/mas.c:get_params() Error when
> >> >> >>> > parsing
> >> >> >>> parameters!
> >> >> >>> > obexd[29146]: GET(0x3), BAD_REQUEST(0x40)
> >> >> >>> >
> >> >> >>> > But I had few folders created inside the map-messages.
> >> >> >>>
> >> >> >>> Bad request is normally when there is something wrong with the
> >> >> >>> command itself, the error comes from here:
> >> >> >>>
> >> >> >>> mas->inparams = g_obex_apparam_decode(buffer, size);
> >> >> >>> if (mas->inparams == NULL) {
> >> >> >>> DBG("Error when parsing parameters!");
> >> >> >>> return -EBADR;
> >> >> >>> }
> >> >> >>>
> >> >> >>> I suspect the problem is that there is no application
> >> >> >>> parameters set which is fine since all the parameters of
> >> >> >>> GetFolderListing are optional, please try with the attached
> >> >> >>> patch I will send it shortly as a
> >> >> proper patch to the mailing list.
> >> >> >>>
> >> >> >>>
> >> >> >>> --
> >> >> >>> Luiz Augusto von Dentz
> >> >> >>
> >> >> >>
> >> >> >> I applied the patch which was attached in the previous reply.
> >> >> >> Still I am
> >> >> getting the same error.
> >> >> >> I tried printing the "size" inside the get_params function. Its
> >> >> >> value is '0' for
> >> >> GetFolderListing request.
> >> >> >> If size=0, then g_obex_apparam_decode() function always return
> >> >> >> NULL,
> >> >> which leads to "Error when parsing parameters!".
> >> >> >
> >> >> > My bad, the check should be size <= 0 otherwise it will still
> >> >> > cause this problem.
> >> >>
> >> >> Let me know if you can test the patch, I would like to push it
> >> >> asap if it
> >> works.
> >> >>
> >> >>
> >> >> --
> >> >> Luiz Augusto von Dentz
> >> >
> >> >
> >> > Now I am not getting the BAD_REQUEST error. But when I call the
> >> > folder-
> >> listing, it abruptly ends or terminate.
> >> >
> >> > The below one -- mas-connect
> >> >
> >> > obexd[14651]: obexd/plugins/bluetooth.c:profile_new_connection()
> >> > device /org/bluez/hci0/dev_00_1B_DC_07_33_4E
> >> > obexd[14651]: obexd/src/obex.c:obex_session_start()
> >> > obexd[14651]: obexd/src/obex.c:cmd_connect()
> >> > obexd[14651]: CONNECT(0x0), (null)(0xffffffff)
> >> > obexd[14651]: obexd/src/obex.c:cmd_connect() Selected driver:
> >> > Message Access server
> >> > obexd[14651]: obexd/plugins/mas.c:mas_connect()
> >> > obexd[14651]: CONNECT(0x0), (null)(0x0)
> >> >
> >> > The below one -- mas-setpath
> >> >
> >> > obexd[14651]: obexd/src/obex.c:cmd_setpath()
> >> > obexd[14651]: SETPATH(0x5), (null)(0xffffffff)
> >> > obexd[14651]: obexd/src/obex.c:parse_name() NAME:
> >> > obexd[14651]: obexd/plugins/mas.c:mas_setpath() SETPATH: name
> >> nonhdr
> >> > 0x20
> >> > obexd[14651]: SETPATH(0x5), SUCCESS(0x20)
> >> >
> >> > The below one -- mas-getFolderListing
> >> >
> >> > obexd[14651]: obexd/src/obex.c:cmd_get() session 0x1ecbd80
> >> > obexd[14651]: GET(0x3), (null)(0xffffffff)
> >> > obexd[14651]: obexd/src/obex.c:parse_type() TYPE:
> >> > x-obex/folder-listing
> >> > obexd[14651]: obexd/plugins/mas.c:mas_get() GET: name (null) type
> >> > x-obex/folder-listing mas 0x1ecbc00
> >> > obexd[14651]: obexd/plugins/mas.c:folder_listing_open() name =
> >> > (null)
> >> > obexd[14651]: obexd/src/obex.c:driver_get_headers() name=(null)
> >> > type=x-obex/folder-listing object=0x1ecbc00
> >> > obexd[14651]: obexd/plugins/mas.c:any_get_next_header()
> >> > obexd[14651]: get_next_header(): Resource temporarily unavailable
> >> > (11)
> >> > obexd[14651]: obexd/src/obex.c:driver_get_headers() name=(null)
> >> > type=x-obex/folder-listing object=0x1ecbc00
> >> > obexd[14651]: obexd/plugins/mas.c:any_get_next_header()
> >> > gowtham.ab@gowtham-ab:~/latest_bluez/bluez$
> >>
> >> I think I know what is the problem, outparams can also be NULL if no
> >> application parameter has to be added to the response causing
> >> g_obex_apparam_encode to crash, check with attached patch. Btw next
> >> time please send the backtrace either using gdb or valgrind is highly
> >> recommended.
> >>
> >> --
> >> Luiz Augusto von Dentz
> >
> > Sorry, I didn’t see any patch attached.
>
> There it go.
>
> --
> Luiz Augusto von Dentz
Finally It worked!!! Before moving on to msg-listing function implementation, we need bMessage parser to check the messages. I saw in the below link
http://comments.gmane.org/gmane.linux.bluez.kernel/22126
that someone had already implemented the parser it seems.
Btw Do we need to implement the D-Bus Api's for this? or a simple function implementation that retrieves and parse all the messages from the system directory, since we don’t have any message service running at the back-end.
Regards,
Gowtham
Hi,
On Wed, Sep 3, 2014 at 3:18 PM, Gowtham Anandha Babu
<[email protected]> wrote:
> Hi,
>
>> -----Original Message-----
>> From: Luiz Augusto von Dentz [mailto:[email protected]]
>> Sent: Wednesday, September 03, 2014 5:34 PM
>> To: Gowtham Anandha Babu
>> Cc: [email protected]; Bharat Panda
>> Subject: Re: Query regarding MAP 1.2 implementation
>>
>> Hi,
>>
>> On Wed, Sep 3, 2014 at 2:35 PM, Gowtham Anandha Babu
>> <[email protected]> wrote:
>> > Hi,
>> >
>> >> -----Original Message-----
>> >> From: Luiz Augusto von Dentz [mailto:[email protected]]
>> >> Sent: Wednesday, September 03, 2014 3:57 PM
>> >> To: Gowtham Anandha Babu
>> >> Cc: [email protected]
>> >> Subject: Re: Query regarding MAP 1.2 implementation
>> >>
>> >> Hi,
>> >>
>> >> On Tue, Sep 2, 2014 at 11:28 AM, Luiz Augusto von Dentz
>> >> <[email protected]> wrote:
>> >> > Hi,
>> >> >
>> >> > On Tue, Sep 2, 2014 at 8:22 AM, Gowtham Anandha Babu
>> >> > <[email protected]> wrote:
>> >> >>
>> >> >> Hi Luiz,
>> >> >>
>> >> >>> -----Original Message-----
>> >> >>> From: [email protected]
>> >> >>> [mailto:linux-bluetooth- [email protected]] On Behalf Of Luiz
>> >> >>> Augusto von Dentz
>> >> >>> Sent: Monday, September 01, 2014 6:37 PM
>> >> >>> To: Gowtham Anandha Babu
>> >> >>> Cc: [email protected]; Bharat Panda
>> >> >>> Subject: Re: Query regarding MAP 1.2 implementation
>> >> >>>
>> >> >>> Hi,
>> >> >>>
>> >> >>> On Mon, Sep 1, 2014 at 3:29 PM, Gowtham Anandha Babu
>> >> >>> <[email protected]> wrote:
>> >> >>>
>> >> >>> > The current message-dummy.c looks like, it is creating a
>> >> >>> > virtual folder in the
>> >> >>> system (Ex. Home/PC-NAME/map-messages/).
>> >> >>> > So, I created the map-messages directory in home/PC-NAME/.
>> Then
>> >> >>> > I tried
>> >> >>> SETPATH (mentioned in the previous thread).
>> >> >>> > The output is...
>> >> >>> >
>> >> >>> > obexd[29146]: obexd/src/obex.c:cmd_setpath()
>> >> >>> > obexd[29146]: SETPATH(0x5), (null)(0xffffffff)
>> >> >>> > obexd[29146]: obexd/src/obex.c:parse_name() NAME:
>> >> >>> > obexd[29146]: obexd/plugins/mas.c:mas_setpath() SETPATH: name
>> >> >>> nonhdr
>> >> >>> > 0x20
>> >> >>> > obexd[29146]: SETPATH(0x5), SUCCESS(0x20)
>> >> >>> >
>> >> >>> > But When I tried to call GetFolderListing() The output is...
>> >> >>> >
>> >> >>> > obexd[29146]: obexd/src/obex.c:cmd_get() session 0x1008c40
>> >> >>> > obexd[29146]: GET(0x3), (null)(0xffffffff)
>> >> >>> > obexd[29146]: obexd/src/obex.c:parse_type() TYPE:
>> >> >>> > x-obex/folder-listing
>> >> >>> > obexd[29146]: obexd/plugins/mas.c:mas_get() GET: name (null)
>> >> >>> > type x-obex/folder-listing mas 0x1015c00
>> >> >>> > obexd[29146]: obexd/plugins/mas.c:get_params() Error when
>> >> >>> > parsing
>> >> >>> parameters!
>> >> >>> > obexd[29146]: GET(0x3), BAD_REQUEST(0x40)
>> >> >>> >
>> >> >>> > But I had few folders created inside the map-messages.
>> >> >>>
>> >> >>> Bad request is normally when there is something wrong with the
>> >> >>> command itself, the error comes from here:
>> >> >>>
>> >> >>> mas->inparams = g_obex_apparam_decode(buffer, size);
>> >> >>> if (mas->inparams == NULL) {
>> >> >>> DBG("Error when parsing parameters!");
>> >> >>> return -EBADR;
>> >> >>> }
>> >> >>>
>> >> >>> I suspect the problem is that there is no application parameters
>> >> >>> set which is fine since all the parameters of GetFolderListing
>> >> >>> are optional, please try with the attached patch I will send it
>> >> >>> shortly as a
>> >> proper patch to the mailing list.
>> >> >>>
>> >> >>>
>> >> >>> --
>> >> >>> Luiz Augusto von Dentz
>> >> >>
>> >> >>
>> >> >> I applied the patch which was attached in the previous reply.
>> >> >> Still I am
>> >> getting the same error.
>> >> >> I tried printing the "size" inside the get_params function. Its
>> >> >> value is '0' for
>> >> GetFolderListing request.
>> >> >> If size=0, then g_obex_apparam_decode() function always return
>> >> >> NULL,
>> >> which leads to "Error when parsing parameters!".
>> >> >
>> >> > My bad, the check should be size <= 0 otherwise it will still cause
>> >> > this problem.
>> >>
>> >> Let me know if you can test the patch, I would like to push it asap if it
>> works.
>> >>
>> >>
>> >> --
>> >> Luiz Augusto von Dentz
>> >
>> >
>> > Now I am not getting the BAD_REQUEST error. But when I call the folder-
>> listing, it abruptly ends or terminate.
>> >
>> > The below one -- mas-connect
>> >
>> > obexd[14651]: obexd/plugins/bluetooth.c:profile_new_connection()
>> > device /org/bluez/hci0/dev_00_1B_DC_07_33_4E
>> > obexd[14651]: obexd/src/obex.c:obex_session_start()
>> > obexd[14651]: obexd/src/obex.c:cmd_connect()
>> > obexd[14651]: CONNECT(0x0), (null)(0xffffffff)
>> > obexd[14651]: obexd/src/obex.c:cmd_connect() Selected driver: Message
>> > Access server
>> > obexd[14651]: obexd/plugins/mas.c:mas_connect()
>> > obexd[14651]: CONNECT(0x0), (null)(0x0)
>> >
>> > The below one -- mas-setpath
>> >
>> > obexd[14651]: obexd/src/obex.c:cmd_setpath()
>> > obexd[14651]: SETPATH(0x5), (null)(0xffffffff)
>> > obexd[14651]: obexd/src/obex.c:parse_name() NAME:
>> > obexd[14651]: obexd/plugins/mas.c:mas_setpath() SETPATH: name
>> nonhdr
>> > 0x20
>> > obexd[14651]: SETPATH(0x5), SUCCESS(0x20)
>> >
>> > The below one -- mas-getFolderListing
>> >
>> > obexd[14651]: obexd/src/obex.c:cmd_get() session 0x1ecbd80
>> > obexd[14651]: GET(0x3), (null)(0xffffffff)
>> > obexd[14651]: obexd/src/obex.c:parse_type() TYPE:
>> > x-obex/folder-listing
>> > obexd[14651]: obexd/plugins/mas.c:mas_get() GET: name (null) type
>> > x-obex/folder-listing mas 0x1ecbc00
>> > obexd[14651]: obexd/plugins/mas.c:folder_listing_open() name = (null)
>> > obexd[14651]: obexd/src/obex.c:driver_get_headers() name=(null)
>> > type=x-obex/folder-listing object=0x1ecbc00
>> > obexd[14651]: obexd/plugins/mas.c:any_get_next_header()
>> > obexd[14651]: get_next_header(): Resource temporarily unavailable (11)
>> > obexd[14651]: obexd/src/obex.c:driver_get_headers() name=(null)
>> > type=x-obex/folder-listing object=0x1ecbc00
>> > obexd[14651]: obexd/plugins/mas.c:any_get_next_header()
>> > gowtham.ab@gowtham-ab:~/latest_bluez/bluez$
>>
>> I think I know what is the problem, outparams can also be NULL if no
>> application parameter has to be added to the response causing
>> g_obex_apparam_encode to crash, check with attached patch. Btw next
>> time please send the backtrace either using gdb or valgrind is highly
>> recommended.
>>
>> --
>> Luiz Augusto von Dentz
>
> Sorry, I didn’t see any patch attached.
There it go.
--
Luiz Augusto von Dentz
Hi,
> -----Original Message-----
> From: Luiz Augusto von Dentz [mailto:[email protected]]
> Sent: Wednesday, September 03, 2014 5:34 PM
> To: Gowtham Anandha Babu
> Cc: [email protected]; Bharat Panda
> Subject: Re: Query regarding MAP 1.2 implementation
>
> Hi,
>
> On Wed, Sep 3, 2014 at 2:35 PM, Gowtham Anandha Babu
> <[email protected]> wrote:
> > Hi,
> >
> >> -----Original Message-----
> >> From: Luiz Augusto von Dentz [mailto:[email protected]]
> >> Sent: Wednesday, September 03, 2014 3:57 PM
> >> To: Gowtham Anandha Babu
> >> Cc: [email protected]
> >> Subject: Re: Query regarding MAP 1.2 implementation
> >>
> >> Hi,
> >>
> >> On Tue, Sep 2, 2014 at 11:28 AM, Luiz Augusto von Dentz
> >> <[email protected]> wrote:
> >> > Hi,
> >> >
> >> > On Tue, Sep 2, 2014 at 8:22 AM, Gowtham Anandha Babu
> >> > <[email protected]> wrote:
> >> >>
> >> >> Hi Luiz,
> >> >>
> >> >>> -----Original Message-----
> >> >>> From: [email protected]
> >> >>> [mailto:linux-bluetooth- [email protected]] On Behalf Of Luiz
> >> >>> Augusto von Dentz
> >> >>> Sent: Monday, September 01, 2014 6:37 PM
> >> >>> To: Gowtham Anandha Babu
> >> >>> Cc: [email protected]; Bharat Panda
> >> >>> Subject: Re: Query regarding MAP 1.2 implementation
> >> >>>
> >> >>> Hi,
> >> >>>
> >> >>> On Mon, Sep 1, 2014 at 3:29 PM, Gowtham Anandha Babu
> >> >>> <[email protected]> wrote:
> >> >>>
> >> >>> > The current message-dummy.c looks like, it is creating a
> >> >>> > virtual folder in the
> >> >>> system (Ex. Home/PC-NAME/map-messages/).
> >> >>> > So, I created the map-messages directory in home/PC-NAME/.
> Then
> >> >>> > I tried
> >> >>> SETPATH (mentioned in the previous thread).
> >> >>> > The output is...
> >> >>> >
> >> >>> > obexd[29146]: obexd/src/obex.c:cmd_setpath()
> >> >>> > obexd[29146]: SETPATH(0x5), (null)(0xffffffff)
> >> >>> > obexd[29146]: obexd/src/obex.c:parse_name() NAME:
> >> >>> > obexd[29146]: obexd/plugins/mas.c:mas_setpath() SETPATH: name
> >> >>> nonhdr
> >> >>> > 0x20
> >> >>> > obexd[29146]: SETPATH(0x5), SUCCESS(0x20)
> >> >>> >
> >> >>> > But When I tried to call GetFolderListing() The output is...
> >> >>> >
> >> >>> > obexd[29146]: obexd/src/obex.c:cmd_get() session 0x1008c40
> >> >>> > obexd[29146]: GET(0x3), (null)(0xffffffff)
> >> >>> > obexd[29146]: obexd/src/obex.c:parse_type() TYPE:
> >> >>> > x-obex/folder-listing
> >> >>> > obexd[29146]: obexd/plugins/mas.c:mas_get() GET: name (null)
> >> >>> > type x-obex/folder-listing mas 0x1015c00
> >> >>> > obexd[29146]: obexd/plugins/mas.c:get_params() Error when
> >> >>> > parsing
> >> >>> parameters!
> >> >>> > obexd[29146]: GET(0x3), BAD_REQUEST(0x40)
> >> >>> >
> >> >>> > But I had few folders created inside the map-messages.
> >> >>>
> >> >>> Bad request is normally when there is something wrong with the
> >> >>> command itself, the error comes from here:
> >> >>>
> >> >>> mas->inparams = g_obex_apparam_decode(buffer, size);
> >> >>> if (mas->inparams == NULL) {
> >> >>> DBG("Error when parsing parameters!");
> >> >>> return -EBADR;
> >> >>> }
> >> >>>
> >> >>> I suspect the problem is that there is no application parameters
> >> >>> set which is fine since all the parameters of GetFolderListing
> >> >>> are optional, please try with the attached patch I will send it
> >> >>> shortly as a
> >> proper patch to the mailing list.
> >> >>>
> >> >>>
> >> >>> --
> >> >>> Luiz Augusto von Dentz
> >> >>
> >> >>
> >> >> I applied the patch which was attached in the previous reply.
> >> >> Still I am
> >> getting the same error.
> >> >> I tried printing the "size" inside the get_params function. Its
> >> >> value is '0' for
> >> GetFolderListing request.
> >> >> If size=0, then g_obex_apparam_decode() function always return
> >> >> NULL,
> >> which leads to "Error when parsing parameters!".
> >> >
> >> > My bad, the check should be size <= 0 otherwise it will still cause
> >> > this problem.
> >>
> >> Let me know if you can test the patch, I would like to push it asap if it
> works.
> >>
> >>
> >> --
> >> Luiz Augusto von Dentz
> >
> >
> > Now I am not getting the BAD_REQUEST error. But when I call the folder-
> listing, it abruptly ends or terminate.
> >
> > The below one -- mas-connect
> >
> > obexd[14651]: obexd/plugins/bluetooth.c:profile_new_connection()
> > device /org/bluez/hci0/dev_00_1B_DC_07_33_4E
> > obexd[14651]: obexd/src/obex.c:obex_session_start()
> > obexd[14651]: obexd/src/obex.c:cmd_connect()
> > obexd[14651]: CONNECT(0x0), (null)(0xffffffff)
> > obexd[14651]: obexd/src/obex.c:cmd_connect() Selected driver: Message
> > Access server
> > obexd[14651]: obexd/plugins/mas.c:mas_connect()
> > obexd[14651]: CONNECT(0x0), (null)(0x0)
> >
> > The below one -- mas-setpath
> >
> > obexd[14651]: obexd/src/obex.c:cmd_setpath()
> > obexd[14651]: SETPATH(0x5), (null)(0xffffffff)
> > obexd[14651]: obexd/src/obex.c:parse_name() NAME:
> > obexd[14651]: obexd/plugins/mas.c:mas_setpath() SETPATH: name
> nonhdr
> > 0x20
> > obexd[14651]: SETPATH(0x5), SUCCESS(0x20)
> >
> > The below one -- mas-getFolderListing
> >
> > obexd[14651]: obexd/src/obex.c:cmd_get() session 0x1ecbd80
> > obexd[14651]: GET(0x3), (null)(0xffffffff)
> > obexd[14651]: obexd/src/obex.c:parse_type() TYPE:
> > x-obex/folder-listing
> > obexd[14651]: obexd/plugins/mas.c:mas_get() GET: name (null) type
> > x-obex/folder-listing mas 0x1ecbc00
> > obexd[14651]: obexd/plugins/mas.c:folder_listing_open() name = (null)
> > obexd[14651]: obexd/src/obex.c:driver_get_headers() name=(null)
> > type=x-obex/folder-listing object=0x1ecbc00
> > obexd[14651]: obexd/plugins/mas.c:any_get_next_header()
> > obexd[14651]: get_next_header(): Resource temporarily unavailable (11)
> > obexd[14651]: obexd/src/obex.c:driver_get_headers() name=(null)
> > type=x-obex/folder-listing object=0x1ecbc00
> > obexd[14651]: obexd/plugins/mas.c:any_get_next_header()
> > gowtham.ab@gowtham-ab:~/latest_bluez/bluez$
>
> I think I know what is the problem, outparams can also be NULL if no
> application parameter has to be added to the response causing
> g_obex_apparam_encode to crash, check with attached patch. Btw next
> time please send the backtrace either using gdb or valgrind is highly
> recommended.
>
> --
> Luiz Augusto von Dentz
Sorry, I didn’t see any patch attached.
Regards,
Gowtham
Hi,
On Wed, Sep 3, 2014 at 2:35 PM, Gowtham Anandha Babu
<[email protected]> wrote:
> Hi,
>
>> -----Original Message-----
>> From: Luiz Augusto von Dentz [mailto:[email protected]]
>> Sent: Wednesday, September 03, 2014 3:57 PM
>> To: Gowtham Anandha Babu
>> Cc: [email protected]
>> Subject: Re: Query regarding MAP 1.2 implementation
>>
>> Hi,
>>
>> On Tue, Sep 2, 2014 at 11:28 AM, Luiz Augusto von Dentz
>> <[email protected]> wrote:
>> > Hi,
>> >
>> > On Tue, Sep 2, 2014 at 8:22 AM, Gowtham Anandha Babu
>> > <[email protected]> wrote:
>> >>
>> >> Hi Luiz,
>> >>
>> >>> -----Original Message-----
>> >>> From: [email protected] [mailto:linux-bluetooth-
>> >>> [email protected]] On Behalf Of Luiz Augusto von Dentz
>> >>> Sent: Monday, September 01, 2014 6:37 PM
>> >>> To: Gowtham Anandha Babu
>> >>> Cc: [email protected]; Bharat Panda
>> >>> Subject: Re: Query regarding MAP 1.2 implementation
>> >>>
>> >>> Hi,
>> >>>
>> >>> On Mon, Sep 1, 2014 at 3:29 PM, Gowtham Anandha Babu
>> >>> <[email protected]> wrote:
>> >>>
>> >>> > The current message-dummy.c looks like, it is creating a virtual
>> >>> > folder in the
>> >>> system (Ex. Home/PC-NAME/map-messages/).
>> >>> > So, I created the map-messages directory in home/PC-NAME/. Then I
>> >>> > tried
>> >>> SETPATH (mentioned in the previous thread).
>> >>> > The output is...
>> >>> >
>> >>> > obexd[29146]: obexd/src/obex.c:cmd_setpath()
>> >>> > obexd[29146]: SETPATH(0x5), (null)(0xffffffff)
>> >>> > obexd[29146]: obexd/src/obex.c:parse_name() NAME:
>> >>> > obexd[29146]: obexd/plugins/mas.c:mas_setpath() SETPATH: name
>> >>> nonhdr
>> >>> > 0x20
>> >>> > obexd[29146]: SETPATH(0x5), SUCCESS(0x20)
>> >>> >
>> >>> > But When I tried to call GetFolderListing() The output is...
>> >>> >
>> >>> > obexd[29146]: obexd/src/obex.c:cmd_get() session 0x1008c40
>> >>> > obexd[29146]: GET(0x3), (null)(0xffffffff)
>> >>> > obexd[29146]: obexd/src/obex.c:parse_type() TYPE:
>> >>> > x-obex/folder-listing
>> >>> > obexd[29146]: obexd/plugins/mas.c:mas_get() GET: name (null) type
>> >>> > x-obex/folder-listing mas 0x1015c00
>> >>> > obexd[29146]: obexd/plugins/mas.c:get_params() Error when parsing
>> >>> parameters!
>> >>> > obexd[29146]: GET(0x3), BAD_REQUEST(0x40)
>> >>> >
>> >>> > But I had few folders created inside the map-messages.
>> >>>
>> >>> Bad request is normally when there is something wrong with the
>> >>> command itself, the error comes from here:
>> >>>
>> >>> mas->inparams = g_obex_apparam_decode(buffer, size);
>> >>> if (mas->inparams == NULL) {
>> >>> DBG("Error when parsing parameters!");
>> >>> return -EBADR;
>> >>> }
>> >>>
>> >>> I suspect the problem is that there is no application parameters set
>> >>> which is fine since all the parameters of GetFolderListing are
>> >>> optional, please try with the attached patch I will send it shortly as a
>> proper patch to the mailing list.
>> >>>
>> >>>
>> >>> --
>> >>> Luiz Augusto von Dentz
>> >>
>> >>
>> >> I applied the patch which was attached in the previous reply. Still I am
>> getting the same error.
>> >> I tried printing the "size" inside the get_params function. Its value is '0' for
>> GetFolderListing request.
>> >> If size=0, then g_obex_apparam_decode() function always return NULL,
>> which leads to "Error when parsing parameters!".
>> >
>> > My bad, the check should be size <= 0 otherwise it will still cause
>> > this problem.
>>
>> Let me know if you can test the patch, I would like to push it asap if it works.
>>
>>
>> --
>> Luiz Augusto von Dentz
>
>
> Now I am not getting the BAD_REQUEST error. But when I call the folder-listing, it abruptly ends or terminate.
>
> The below one -- mas-connect
>
> obexd[14651]: obexd/plugins/bluetooth.c:profile_new_connection() device /org/bluez/hci0/dev_00_1B_DC_07_33_4E
> obexd[14651]: obexd/src/obex.c:obex_session_start()
> obexd[14651]: obexd/src/obex.c:cmd_connect()
> obexd[14651]: CONNECT(0x0), (null)(0xffffffff)
> obexd[14651]: obexd/src/obex.c:cmd_connect() Selected driver: Message Access server
> obexd[14651]: obexd/plugins/mas.c:mas_connect()
> obexd[14651]: CONNECT(0x0), (null)(0x0)
>
> The below one -- mas-setpath
>
> obexd[14651]: obexd/src/obex.c:cmd_setpath()
> obexd[14651]: SETPATH(0x5), (null)(0xffffffff)
> obexd[14651]: obexd/src/obex.c:parse_name() NAME:
> obexd[14651]: obexd/plugins/mas.c:mas_setpath() SETPATH: name nonhdr 0x20
> obexd[14651]: SETPATH(0x5), SUCCESS(0x20)
>
> The below one -- mas-getFolderListing
>
> obexd[14651]: obexd/src/obex.c:cmd_get() session 0x1ecbd80
> obexd[14651]: GET(0x3), (null)(0xffffffff)
> obexd[14651]: obexd/src/obex.c:parse_type() TYPE: x-obex/folder-listing
> obexd[14651]: obexd/plugins/mas.c:mas_get() GET: name (null) type x-obex/folder-listing mas 0x1ecbc00
> obexd[14651]: obexd/plugins/mas.c:folder_listing_open() name = (null)
> obexd[14651]: obexd/src/obex.c:driver_get_headers() name=(null) type=x-obex/folder-listing object=0x1ecbc00
> obexd[14651]: obexd/plugins/mas.c:any_get_next_header()
> obexd[14651]: get_next_header(): Resource temporarily unavailable (11)
> obexd[14651]: obexd/src/obex.c:driver_get_headers() name=(null) type=x-obex/folder-listing object=0x1ecbc00
> obexd[14651]: obexd/plugins/mas.c:any_get_next_header()
> gowtham.ab@gowtham-ab:~/latest_bluez/bluez$
I think I know what is the problem, outparams can also be NULL if no
application parameter has to be added to the response causing
g_obex_apparam_encode to crash, check with attached patch. Btw next
time please send the backtrace either using gdb or valgrind is highly
recommended.
--
Luiz Augusto von Dentz
Hi,
> -----Original Message-----
> From: Luiz Augusto von Dentz [mailto:[email protected]]
> Sent: Wednesday, September 03, 2014 3:57 PM
> To: Gowtham Anandha Babu
> Cc: [email protected]
> Subject: Re: Query regarding MAP 1.2 implementation
>
> Hi,
>
> On Tue, Sep 2, 2014 at 11:28 AM, Luiz Augusto von Dentz
> <[email protected]> wrote:
> > Hi,
> >
> > On Tue, Sep 2, 2014 at 8:22 AM, Gowtham Anandha Babu
> > <[email protected]> wrote:
> >>
> >> Hi Luiz,
> >>
> >>> -----Original Message-----
> >>> From: [email protected] [mailto:linux-bluetooth-
> >>> [email protected]] On Behalf Of Luiz Augusto von Dentz
> >>> Sent: Monday, September 01, 2014 6:37 PM
> >>> To: Gowtham Anandha Babu
> >>> Cc: [email protected]; Bharat Panda
> >>> Subject: Re: Query regarding MAP 1.2 implementation
> >>>
> >>> Hi,
> >>>
> >>> On Mon, Sep 1, 2014 at 3:29 PM, Gowtham Anandha Babu
> >>> <[email protected]> wrote:
> >>>
> >>> > The current message-dummy.c looks like, it is creating a virtual
> >>> > folder in the
> >>> system (Ex. Home/PC-NAME/map-messages/).
> >>> > So, I created the map-messages directory in home/PC-NAME/. Then I
> >>> > tried
> >>> SETPATH (mentioned in the previous thread).
> >>> > The output is...
> >>> >
> >>> > obexd[29146]: obexd/src/obex.c:cmd_setpath()
> >>> > obexd[29146]: SETPATH(0x5), (null)(0xffffffff)
> >>> > obexd[29146]: obexd/src/obex.c:parse_name() NAME:
> >>> > obexd[29146]: obexd/plugins/mas.c:mas_setpath() SETPATH: name
> >>> nonhdr
> >>> > 0x20
> >>> > obexd[29146]: SETPATH(0x5), SUCCESS(0x20)
> >>> >
> >>> > But When I tried to call GetFolderListing() The output is...
> >>> >
> >>> > obexd[29146]: obexd/src/obex.c:cmd_get() session 0x1008c40
> >>> > obexd[29146]: GET(0x3), (null)(0xffffffff)
> >>> > obexd[29146]: obexd/src/obex.c:parse_type() TYPE:
> >>> > x-obex/folder-listing
> >>> > obexd[29146]: obexd/plugins/mas.c:mas_get() GET: name (null) type
> >>> > x-obex/folder-listing mas 0x1015c00
> >>> > obexd[29146]: obexd/plugins/mas.c:get_params() Error when parsing
> >>> parameters!
> >>> > obexd[29146]: GET(0x3), BAD_REQUEST(0x40)
> >>> >
> >>> > But I had few folders created inside the map-messages.
> >>>
> >>> Bad request is normally when there is something wrong with the
> >>> command itself, the error comes from here:
> >>>
> >>> mas->inparams = g_obex_apparam_decode(buffer, size);
> >>> if (mas->inparams == NULL) {
> >>> DBG("Error when parsing parameters!");
> >>> return -EBADR;
> >>> }
> >>>
> >>> I suspect the problem is that there is no application parameters set
> >>> which is fine since all the parameters of GetFolderListing are
> >>> optional, please try with the attached patch I will send it shortly as a
> proper patch to the mailing list.
> >>>
> >>>
> >>> --
> >>> Luiz Augusto von Dentz
> >>
> >>
> >> I applied the patch which was attached in the previous reply. Still I am
> getting the same error.
> >> I tried printing the "size" inside the get_params function. Its value is '0' for
> GetFolderListing request.
> >> If size=0, then g_obex_apparam_decode() function always return NULL,
> which leads to "Error when parsing parameters!".
> >
> > My bad, the check should be size <= 0 otherwise it will still cause
> > this problem.
>
> Let me know if you can test the patch, I would like to push it asap if it works.
>
>
> --
> Luiz Augusto von Dentz
Now I am not getting the BAD_REQUEST error. But when I call the folder-listing, it abruptly ends or terminate.
The below one -- mas-connect
obexd[14651]: obexd/plugins/bluetooth.c:profile_new_connection() device /org/bluez/hci0/dev_00_1B_DC_07_33_4E
obexd[14651]: obexd/src/obex.c:obex_session_start()
obexd[14651]: obexd/src/obex.c:cmd_connect()
obexd[14651]: CONNECT(0x0), (null)(0xffffffff)
obexd[14651]: obexd/src/obex.c:cmd_connect() Selected driver: Message Access server
obexd[14651]: obexd/plugins/mas.c:mas_connect()
obexd[14651]: CONNECT(0x0), (null)(0x0)
The below one -- mas-setpath
obexd[14651]: obexd/src/obex.c:cmd_setpath()
obexd[14651]: SETPATH(0x5), (null)(0xffffffff)
obexd[14651]: obexd/src/obex.c:parse_name() NAME:
obexd[14651]: obexd/plugins/mas.c:mas_setpath() SETPATH: name nonhdr 0x20
obexd[14651]: SETPATH(0x5), SUCCESS(0x20)
The below one -- mas-getFolderListing
obexd[14651]: obexd/src/obex.c:cmd_get() session 0x1ecbd80
obexd[14651]: GET(0x3), (null)(0xffffffff)
obexd[14651]: obexd/src/obex.c:parse_type() TYPE: x-obex/folder-listing
obexd[14651]: obexd/plugins/mas.c:mas_get() GET: name (null) type x-obex/folder-listing mas 0x1ecbc00
obexd[14651]: obexd/plugins/mas.c:folder_listing_open() name = (null)
obexd[14651]: obexd/src/obex.c:driver_get_headers() name=(null) type=x-obex/folder-listing object=0x1ecbc00
obexd[14651]: obexd/plugins/mas.c:any_get_next_header()
obexd[14651]: get_next_header(): Resource temporarily unavailable (11)
obexd[14651]: obexd/src/obex.c:driver_get_headers() name=(null) type=x-obex/folder-listing object=0x1ecbc00
obexd[14651]: obexd/plugins/mas.c:any_get_next_header()
gowtham.ab@gowtham-ab:~/latest_bluez/bluez$
Regards,
Gowtham
Hi,
On Tue, Sep 2, 2014 at 11:28 AM, Luiz Augusto von Dentz
<[email protected]> wrote:
> Hi,
>
> On Tue, Sep 2, 2014 at 8:22 AM, Gowtham Anandha Babu
> <[email protected]> wrote:
>>
>> Hi Luiz,
>>
>>> -----Original Message-----
>>> From: [email protected] [mailto:linux-bluetooth-
>>> [email protected]] On Behalf Of Luiz Augusto von Dentz
>>> Sent: Monday, September 01, 2014 6:37 PM
>>> To: Gowtham Anandha Babu
>>> Cc: [email protected]; Bharat Panda
>>> Subject: Re: Query regarding MAP 1.2 implementation
>>>
>>> Hi,
>>>
>>> On Mon, Sep 1, 2014 at 3:29 PM, Gowtham Anandha Babu
>>> <[email protected]> wrote:
>>>
>>> > The current message-dummy.c looks like, it is creating a virtual folder in the
>>> system (Ex. Home/PC-NAME/map-messages/).
>>> > So, I created the map-messages directory in home/PC-NAME/. Then I tried
>>> SETPATH (mentioned in the previous thread).
>>> > The output is...
>>> >
>>> > obexd[29146]: obexd/src/obex.c:cmd_setpath()
>>> > obexd[29146]: SETPATH(0x5), (null)(0xffffffff)
>>> > obexd[29146]: obexd/src/obex.c:parse_name() NAME:
>>> > obexd[29146]: obexd/plugins/mas.c:mas_setpath() SETPATH: name
>>> nonhdr
>>> > 0x20
>>> > obexd[29146]: SETPATH(0x5), SUCCESS(0x20)
>>> >
>>> > But When I tried to call GetFolderListing() The output is...
>>> >
>>> > obexd[29146]: obexd/src/obex.c:cmd_get() session 0x1008c40
>>> > obexd[29146]: GET(0x3), (null)(0xffffffff)
>>> > obexd[29146]: obexd/src/obex.c:parse_type() TYPE:
>>> > x-obex/folder-listing
>>> > obexd[29146]: obexd/plugins/mas.c:mas_get() GET: name (null) type
>>> > x-obex/folder-listing mas 0x1015c00
>>> > obexd[29146]: obexd/plugins/mas.c:get_params() Error when parsing
>>> parameters!
>>> > obexd[29146]: GET(0x3), BAD_REQUEST(0x40)
>>> >
>>> > But I had few folders created inside the map-messages.
>>>
>>> Bad request is normally when there is something wrong with the command
>>> itself, the error comes from here:
>>>
>>> mas->inparams = g_obex_apparam_decode(buffer, size);
>>> if (mas->inparams == NULL) {
>>> DBG("Error when parsing parameters!");
>>> return -EBADR;
>>> }
>>>
>>> I suspect the problem is that there is no application parameters set which is
>>> fine since all the parameters of GetFolderListing are optional, please try with
>>> the attached patch I will send it shortly as a proper patch to the mailing list.
>>>
>>>
>>> --
>>> Luiz Augusto von Dentz
>>
>>
>> I applied the patch which was attached in the previous reply. Still I am getting the same error.
>> I tried printing the "size" inside the get_params function. Its value is '0' for GetFolderListing request.
>> If size=0, then g_obex_apparam_decode() function always return NULL, which leads to "Error when parsing parameters!".
>
> My bad, the check should be size <= 0 otherwise it will still cause
> this problem.
Let me know if you can test the patch, I would like to push it asap if it works.
--
Luiz Augusto von Dentz
Hi,
On Tue, Sep 2, 2014 at 8:22 AM, Gowtham Anandha Babu
<[email protected]> wrote:
>
> Hi Luiz,
>
>> -----Original Message-----
>> From: [email protected] [mailto:linux-bluetooth-
>> [email protected]] On Behalf Of Luiz Augusto von Dentz
>> Sent: Monday, September 01, 2014 6:37 PM
>> To: Gowtham Anandha Babu
>> Cc: [email protected]; Bharat Panda
>> Subject: Re: Query regarding MAP 1.2 implementation
>>
>> Hi,
>>
>> On Mon, Sep 1, 2014 at 3:29 PM, Gowtham Anandha Babu
>> <[email protected]> wrote:
>>
>> > The current message-dummy.c looks like, it is creating a virtual folder in the
>> system (Ex. Home/PC-NAME/map-messages/).
>> > So, I created the map-messages directory in home/PC-NAME/. Then I tried
>> SETPATH (mentioned in the previous thread).
>> > The output is...
>> >
>> > obexd[29146]: obexd/src/obex.c:cmd_setpath()
>> > obexd[29146]: SETPATH(0x5), (null)(0xffffffff)
>> > obexd[29146]: obexd/src/obex.c:parse_name() NAME:
>> > obexd[29146]: obexd/plugins/mas.c:mas_setpath() SETPATH: name
>> nonhdr
>> > 0x20
>> > obexd[29146]: SETPATH(0x5), SUCCESS(0x20)
>> >
>> > But When I tried to call GetFolderListing() The output is...
>> >
>> > obexd[29146]: obexd/src/obex.c:cmd_get() session 0x1008c40
>> > obexd[29146]: GET(0x3), (null)(0xffffffff)
>> > obexd[29146]: obexd/src/obex.c:parse_type() TYPE:
>> > x-obex/folder-listing
>> > obexd[29146]: obexd/plugins/mas.c:mas_get() GET: name (null) type
>> > x-obex/folder-listing mas 0x1015c00
>> > obexd[29146]: obexd/plugins/mas.c:get_params() Error when parsing
>> parameters!
>> > obexd[29146]: GET(0x3), BAD_REQUEST(0x40)
>> >
>> > But I had few folders created inside the map-messages.
>>
>> Bad request is normally when there is something wrong with the command
>> itself, the error comes from here:
>>
>> mas->inparams = g_obex_apparam_decode(buffer, size);
>> if (mas->inparams == NULL) {
>> DBG("Error when parsing parameters!");
>> return -EBADR;
>> }
>>
>> I suspect the problem is that there is no application parameters set which is
>> fine since all the parameters of GetFolderListing are optional, please try with
>> the attached patch I will send it shortly as a proper patch to the mailing list.
>>
>>
>> --
>> Luiz Augusto von Dentz
>
>
> I applied the patch which was attached in the previous reply. Still I am getting the same error.
> I tried printing the "size" inside the get_params function. Its value is '0' for GetFolderListing request.
> If size=0, then g_obex_apparam_decode() function always return NULL, which leads to "Error when parsing parameters!".
My bad, the check should be size <= 0 otherwise it will still cause
this problem.
--
Luiz Augusto von Dentz
Hi Luiz,
> -----Original Message-----
> From: [email protected] [mailto:linux-bluetooth-
> [email protected]] On Behalf Of Luiz Augusto von Dentz
> Sent: Monday, September 01, 2014 6:37 PM
> To: Gowtham Anandha Babu
> Cc: [email protected]; Bharat Panda
> Subject: Re: Query regarding MAP 1.2 implementation
>
> Hi,
>
> On Mon, Sep 1, 2014 at 3:29 PM, Gowtham Anandha Babu
> <[email protected]> wrote:
>
> > The current message-dummy.c looks like, it is creating a virtual folder in the
> system (Ex. Home/PC-NAME/map-messages/).
> > So, I created the map-messages directory in home/PC-NAME/. Then I tried
> SETPATH (mentioned in the previous thread).
> > The output is...
> >
> > obexd[29146]: obexd/src/obex.c:cmd_setpath()
> > obexd[29146]: SETPATH(0x5), (null)(0xffffffff)
> > obexd[29146]: obexd/src/obex.c:parse_name() NAME:
> > obexd[29146]: obexd/plugins/mas.c:mas_setpath() SETPATH: name
> nonhdr
> > 0x20
> > obexd[29146]: SETPATH(0x5), SUCCESS(0x20)
> >
> > But When I tried to call GetFolderListing() The output is...
> >
> > obexd[29146]: obexd/src/obex.c:cmd_get() session 0x1008c40
> > obexd[29146]: GET(0x3), (null)(0xffffffff)
> > obexd[29146]: obexd/src/obex.c:parse_type() TYPE:
> > x-obex/folder-listing
> > obexd[29146]: obexd/plugins/mas.c:mas_get() GET: name (null) type
> > x-obex/folder-listing mas 0x1015c00
> > obexd[29146]: obexd/plugins/mas.c:get_params() Error when parsing
> parameters!
> > obexd[29146]: GET(0x3), BAD_REQUEST(0x40)
> >
> > But I had few folders created inside the map-messages.
>
> Bad request is normally when there is something wrong with the command
> itself, the error comes from here:
>
> mas->inparams = g_obex_apparam_decode(buffer, size);
> if (mas->inparams == NULL) {
> DBG("Error when parsing parameters!");
> return -EBADR;
> }
>
> I suspect the problem is that there is no application parameters set which is
> fine since all the parameters of GetFolderListing are optional, please try with
> the attached patch I will send it shortly as a proper patch to the mailing list.
>
>
> --
> Luiz Augusto von Dentz
I applied the patch which was attached in the previous reply. Still I am getting the same error.
I tried printing the "size" inside the get_params function. Its value is '0' for GetFolderListing request.
If size=0, then g_obex_apparam_decode() function always return NULL, which leads to "Error when parsing parameters!".
Regards,
Gowtham
Hi,
On Mon, Sep 1, 2014 at 3:29 PM, Gowtham Anandha Babu
<[email protected]> wrote:
> The current message-dummy.c looks like, it is creating a virtual folder in the system (Ex. Home/PC-NAME/map-messages/).
> So, I created the map-messages directory in home/PC-NAME/. Then I tried SETPATH (mentioned in the previous thread).
> The output is...
>
> obexd[29146]: obexd/src/obex.c:cmd_setpath()
> obexd[29146]: SETPATH(0x5), (null)(0xffffffff)
> obexd[29146]: obexd/src/obex.c:parse_name() NAME:
> obexd[29146]: obexd/plugins/mas.c:mas_setpath() SETPATH: name nonhdr 0x20
> obexd[29146]: SETPATH(0x5), SUCCESS(0x20)
>
> But When I tried to call GetFolderListing()
> The output is...
>
> obexd[29146]: obexd/src/obex.c:cmd_get() session 0x1008c40
> obexd[29146]: GET(0x3), (null)(0xffffffff)
> obexd[29146]: obexd/src/obex.c:parse_type() TYPE: x-obex/folder-listing
> obexd[29146]: obexd/plugins/mas.c:mas_get() GET: name (null) type x-obex/folder-listing mas 0x1015c00
> obexd[29146]: obexd/plugins/mas.c:get_params() Error when parsing parameters!
> obexd[29146]: GET(0x3), BAD_REQUEST(0x40)
>
> But I had few folders created inside the map-messages.
Bad request is normally when there is something wrong with the command
itself, the error comes from here:
mas->inparams = g_obex_apparam_decode(buffer, size);
if (mas->inparams == NULL) {
DBG("Error when parsing parameters!");
return -EBADR;
}
I suspect the problem is that there is no application parameters set
which is fine since all the parameters of GetFolderListing are
optional, please try with the attached patch I will send it shortly as
a proper patch to the mailing list.
--
Luiz Augusto von Dentz
Hi Luiz,
> -----Original Message-----
> From: Luiz Augusto von Dentz [mailto:[email protected]]
> Sent: Monday, August 11, 2014 4:39 PM
> To: Gowtham Anandha Babu
> Subject: Re: Query regarding MAP 1.2 implementation
>
> Hi,
>
> Well you can start over a new implementation, in fact that was what I suggest
> but first we need to agree on the D-Bus API which I expect you guys have
> something in mind since Tizen backend did use D-Bus in its backend if Im not
> mistaken, I have no idea about the Tizen solution really so I guess you will
> need to figure it out if you want to reuse its code or not but there will be
> changes to the interface thus my suggestion to start with the API definition.
>
> On Mon, Aug 11, 2014 at 1:40 PM, Gowtham Anandha Babu
> <[email protected]> wrote:
> > Hi Luiz,
> > Backend implementation for message database in tizen is showing so many
> dependencies while setting up.
> > When I am trying to install/Make map-agent, its is giving me "package vconf
> not found" error.
> > When I am trying to install/Make vconf, its giving me some other packages
> not found error.
> > It goes on.
> > Is there any other way/procedure to implement the backend message
> database for MAS?
> >
> > -----Original Message-----
> > From: [email protected]
> > [mailto:[email protected]] On Behalf Of Luiz
> > Augusto von Dentz
> > Sent: Wednesday, August 06, 2014 5:33 PM
> > To: Gowtham Anandha Babu
> > Cc: [email protected]; Bharat Panda
> > Subject: Re: Query regarding MAP 1.2 implementation
> >
> > Hi,
> >
> > On Wed, Aug 6, 2014 at 2:30 PM, Gowtham Anandha Babu
> <[email protected]> wrote:
> >> Hi All,
> >>
> >> I am currently working on MAP implementation in BlueZ.
> >> I am trying below things to make MAS connect with remote MCE client.
> >>
> >> Below are the steps we followed;
> >>
> >> On MCE device:
> >> --> MAS search
> >> --> MAS connect
> >> --> SET PATH (/)
> >>
> >> On Bluez, obexd:
> >> --> Run "bluetoothd"
> >> --> Run "obexd"
> >> --> On SET_PATH command it sends the obex session value as NULL.
> >>
> >>
> >> obexd[32713]: obexd/plugins/bluetooth.c:profile_new_connection()
> >> device /org/bluez/hci0/dev_00_1B_DC_07_33_4E
> >> obexd[32713]: obexd/src/obex.c:obex_session_start()
> >> obexd[32713]: obexd/src/obex.c:cmd_connect()
> >> obexd[32713]: CONNECT(0x0), (null)(0xffffffff)
> >> obexd[32713]: obexd/src/obex.c:cmd_connect() Selected driver:
> Message
> >> Access server
> >> obexd[32713]: obexd/plugins/mas.c:mas_connect()
> >> obexd[32713]: CONNECT(0x0), (null)(0x0)
> >> obexd[32713]: obexd/src/obex.c:cmd_setpath()
> >> obexd[32713]: obexd/src/obex.c:cmd_setpath() (null)
> >> obexd[32713]: SETPATH(0x5), (null)(0xffffffff)
> >> obexd[32713]: obexd/src/obex.c:parse_name() NAME:
> >> obexd[32713]: obexd/plugins/mas.c:mas_setpath() SETPATH: name
> nonhdr
> >> 0x20
> >> obexd[32713]: SETPATH(0x5), NOT_FOUND(0x44)
> >>
> >> Do we need to configure or run anything else before starting up obexd?
> >
> > You are probably missing a backend implementation for your message
> database, currently we are building with dummy as backend but the idea is
> that we switch to a runtime solution probably we a D-Bus agent interface to
> interact with these requests using a file descriptor to optimize the data
> transfer. iirc samsung has done a D-Bus backend for BlueZ 4 in Tizen perhaps
> you can star by looking what kind of interface is there.
> >
> >
> > --
> > Luiz Augusto von Dentz
> > --
> > To unsubscribe from this list: send the line "unsubscribe
> > linux-bluetooth" in the body of a message to [email protected]
> > More majordomo info at http://vger.kernel.org/majordomo-info.html
> >
>
>
>
> --
> Luiz Augusto von Dentz
The current message-dummy.c looks like, it is creating a virtual folder in the system (Ex. Home/PC-NAME/map-messages/).
So, I created the map-messages directory in home/PC-NAME/. Then I tried SETPATH (mentioned in the previous thread).
The output is...
obexd[29146]: obexd/src/obex.c:cmd_setpath()
obexd[29146]: SETPATH(0x5), (null)(0xffffffff)
obexd[29146]: obexd/src/obex.c:parse_name() NAME:
obexd[29146]: obexd/plugins/mas.c:mas_setpath() SETPATH: name nonhdr 0x20
obexd[29146]: SETPATH(0x5), SUCCESS(0x20)
But When I tried to call GetFolderListing()
The output is...
obexd[29146]: obexd/src/obex.c:cmd_get() session 0x1008c40
obexd[29146]: GET(0x3), (null)(0xffffffff)
obexd[29146]: obexd/src/obex.c:parse_type() TYPE: x-obex/folder-listing
obexd[29146]: obexd/plugins/mas.c:mas_get() GET: name (null) type x-obex/folder-listing mas 0x1015c00
obexd[29146]: obexd/plugins/mas.c:get_params() Error when parsing parameters!
obexd[29146]: GET(0x3), BAD_REQUEST(0x40)
But I had few folders created inside the map-messages.
Regards,
Gowtham Anandha Babu