mirror of https://gerrit.osmocom.org/libosmocore
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
This commit is contained in:
parent
de776d7bc0
commit
714843a455
|
@ -339,7 +339,7 @@ int gsm48_encode_bearer_cap(struct msgb *msg, int lv_only,
|
|||
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);
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
#include <osmocom/core/msgb.h>
|
||||
|
||||
|
||||
static const uint8_t csd_9600_v110_lv[] = { 0x07, 0xa1, 0xb8, 0x89, 0x21, 0x15, 0x63, 0x80 };
|
||||
static const uint8_t csd_9600_v110_lv[] = { 0x07, 0xa1, 0x88, 0x89, 0x21, 0x15, 0x63, 0x80 };
|
||||
|
||||
static const struct gsm_mncc_bearer_cap bcap_csd_9600_v110 = {
|
||||
.transfer = GSM48_BCAP_ITCAP_UNR_DIG_INF,
|
||||
|
|
Loading…
Reference in New Issue