manawyrm has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmocore/+/34746?usp=email )
Change subject: gsm48_ie.c: change bearer cap structure in outgoing CSD calls ......................................................................
gsm48_ie.c: change bearer cap structure in outgoing CSD calls
Outgoing CSD calls were previously encoded with the Bearer Capability 1 - Octet 4 "Structure" field set to 3 - Unstructured. Many Nokia, Sony Ericsson and Huawei devices won't accept incoming CSD calls with these bits set.
Set them to 0 - Service data unit integrity for now, which seems to work and make all tested devices happy.
Change-Id: Ieb5bca3d3578abd28e18808752e1c312ce7c4ce0 --- M src/gsm/gsm48_ie.c 1 file changed, 18 insertions(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/46/34746/1
diff --git a/src/gsm/gsm48_ie.c b/src/gsm/gsm48_ie.c index 749452f..6cbb248 100644 --- a/src/gsm/gsm48_ie.c +++ b/src/gsm/gsm48_ie.c @@ -346,7 +346,7 @@ case GSM48_BCAP_ITCAP_FAX_G3: lv[i++] |= 0x80; /* last IE of octet 3 etc */ /* octet 4 */ - lv[i++] = 0xb8; + lv[i++] = 0x88; /* octet 5 */ lv[i++] = 0x80 | ((bcap->data.rate_adaption & 3) << 3) | (bcap->data.sig_access & 7);