Long UIH packets are not received properly by the stack
when run on an ARM (after "manual" application of the
patch from Gordon).
We have checked that this commes from a bad alignement.
In rfcomm.c around line 1041 :
case UIH:
rfcomm = ((rfcomm_con*) l2cap->upper_con);
if ((short_pkt->h.length.ea) == 0) {
/* Then we cast the rfcomm packet to a long rfcomm
packet */
D_REC(FNC"Long UIH packet received\n");
long_pkt = (long_frame*) data;
swap_long_frame(long_pkt) ;
uih_len = long_pkt->h.length.bits.len;
uih_data_start = long_pkt->h.data;
D_REC(FNC"long packet length %d\n",
uih_len);
uih_data_start doesn't point to the proper value...