From 7dcd7babce72bab490d2372d6b6668a0c8b7df0b Mon Sep 17 00:00:00 2001 From: Jakub Tyszkowski Date: Wed, 26 Nov 2014 09:45:50 +0100 Subject: [PATCH] gattrib: Fix not setting att's mtu size in g_attrib_new() We were setting only the buffer in gattrib but att was left with the default value of 23 (LE transport layer defaults). For BREDR transport layer this may result in using smaller MTU than the minimum allowed (48). This was affecting cases when MTU Exchange was not supported by the remote device and defaults were used. --- attrib/gattrib.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/attrib/gattrib.c b/attrib/gattrib.c index ce7f7b3cc..a04a0ee49 100644 --- a/attrib/gattrib.c +++ b/attrib/gattrib.c @@ -83,6 +83,9 @@ GAttrib *g_attrib_new(GIOChannel *io, guint16 mtu) if (!attr->att) goto fail; + if (!bt_att_set_mtu(attr->att, mtu)) + goto fail; + attr->buf = malloc0(mtu); attr->buflen = mtu; if (!attr->buf) -- 2.47.3