finish gbproxy_parse_bssgp_unitdata test
The message this test is trying to parse is indeed invalid. Add a comment showing the message in decoded form, and assert that the parser rejects it. Also, add a missing call to cleanup_test(). Change-Id: I2a86432d080c38d3c95626372a0129499d7146dd Related: OS#3178
This commit is contained in:
parent
8eb0dc3340
commit
99dc488f72
|
@ -4944,14 +4944,64 @@ static void test_gbproxy_parse_bssgp_unitdata()
|
|||
parse_ctx.to_bss = 0;
|
||||
parse_ctx.peer_nsei = msgb_nsei(msg);
|
||||
|
||||
/* TODO: Determine whether our parser or the message is wrong. */
|
||||
|
||||
rc = gprs_gb_parse_bssgp(msg->data, msg->len, &parse_ctx);
|
||||
if (!rc) {
|
||||
fprintf(stderr, "%s: Failed to parse message %s\n", __func__, msgb_hexdump(msg));
|
||||
}
|
||||
if (!rc)
|
||||
fprintf(stderr, "%s: Test passed; Failed to parse invalid message %s\n", __func__, msgb_hexdump(msg));
|
||||
else
|
||||
fprintf(stderr, "%s: Test failed; invalid message was accepted by parser: %s\n", __func__, msgb_hexdump(msg));
|
||||
|
||||
OSMO_ASSERT(!rc);
|
||||
|
||||
/* Manually decoded message according to:
|
||||
ETSI TS 148 018 V10.6.0 (2012 07) 96
|
||||
3GPP TS 48.018 version 10.6.0 Release 10
|
||||
Table 10.2.2: UL-UNITDATA PDU content
|
||||
|
||||
00 - PDU type UL-UNITDATA (ok)
|
||||
|
||||
11.3.35 Temporary logical link Identity (TLLI)
|
||||
00 - TLLI[0]
|
||||
23 - TLLI[1]
|
||||
94 - TLLI[2]
|
||||
01 - TLLI[3]
|
||||
TLLI == "00239401"
|
||||
|
||||
e1 - QOS[0] (bit rate MSB)
|
||||
55 - QOS[1] (bit rate LSB)
|
||||
bit rate = "57685" (57685*100000 bit/s per PBRG)
|
||||
cf - QOS[2] PBRG = 11 (bit rate is expressed in 100000 bit/s increments),
|
||||
C/R 0 (contains LLC ACK/SACK),
|
||||
T 0 (contains signalling),
|
||||
A 1 (radio if uses MAC/UNITDATA,
|
||||
Precedence 111 (reserved value)
|
||||
|
||||
ea - CELL_ID[0] (TLV IEI: wrong, should be 0x08)
|
||||
00 - CELL_ID[1] (length 1)
|
||||
00 - CELL_ID[2] (length 2)
|
||||
lenth == 0
|
||||
04 -- CELL_ID[3]
|
||||
08 -- CELL_ID[4]
|
||||
88 -- CELL_ID[5]
|
||||
72 -- CELL_ID[6]
|
||||
f4 -- CELL_ID[7]
|
||||
80 -- CELL_ID[8]
|
||||
10 -- CELL_DI[9]
|
||||
|
||||
18 -- QOSP[0] OoS Profile IEI
|
||||
not allowed in BSSGP Userdata
|
||||
00 -- QOSP[1]
|
||||
9c -- QOSP[2]
|
||||
40 -- QOSP[3]
|
||||
00 -- QOSP[4]
|
||||
|
||||
80 -- IEI for "E-UTRAN Inter RAT Handover Info"
|
||||
not allowed in BSSGP Userdata
|
||||
0e -- length (14 bytes -- only 8 bytes remain)
|
||||
00 06 01 c0 41 6c 43 38 */
|
||||
|
||||
msgb_free(msg);
|
||||
|
||||
cleanup_test();
|
||||
}
|
||||
|
||||
static struct log_info_cat gprs_categories[] = {
|
||||
|
|
Loading…
Reference in New Issue