Re: [PATCH] Fix byte order problems getting PSM through btio API

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Johan,

2011/11/30 Johan Hedberg <johan.hedberg@xxxxxxxxx>:
> Hi Santiago,
>
> On Wed, Nov 30, 2011, Santiago Carot wrote:
>> 2011/11/30 Santiago Carot-Nemesio <sancane@xxxxxxxxx>:
>> > ---
>> >  btio/btio.c |    2 +-
>> >  1 files changed, 1 insertions(+), 1 deletions(-)
>> >
>> > diff --git a/btio/btio.c b/btio/btio.c
>> > index a129bf9..f8c5cc7 100644
>> > --- a/btio/btio.c
>> > +++ b/btio/btio.c
>> > @@ -882,7 +882,7 @@ static gboolean l2cap_get(int sock, GError **err, BtIOOption opt1,
>> >                        break;
>> >                case BT_IO_OPT_PSM:
>> >                        *(va_arg(args, uint16_t *)) = src.l2_psm ?
>> > -                                               src.l2_psm : dst.l2_psm;
>> > +                                       btohs(src.l2_psm) : btohs(dst.l2_psm);
>> >                        break;
>> >                case BT_IO_OPT_CID:
>> >                        *(va_arg(args, uint16_t *)) = src.l2_cid ?
>> > --
>> > 1.7.7.4
>> >
>>
>> At a first sight, It seems there may be the same problems retrieving
>> CID, OMTU and IMTU on big endian architectures. I preffer waiting for
>> a more experienced comments before sending any patch fixing that.
>
> To my understanding the L2CAP PSM is the only parameter that uses
> protocol endianess in the socket interface, so we should be safe with
> the other values.
>

As far as I see, CID uses little endian as well, There are some parts
in the code where the byte conversion is done when BT_IO_OPT_CID is
provided, for example in l2cap_connect, Conversely, this attribute is
being provided in bt_io_get without host endian conversion.

Diving in the code I can see that the gatt-server is getting it in
./src/attrib-server.c:1039 so I guess that there is the same problem
that we had in big endian architectures.

Regards

Santiago
--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux