You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
EXI streams beginning with some values other than 0x80, such as 0x01 or 0x40, should not be decoded.
To Reproduce
See the example streams provided here: #99 4084400009690002000000000000000000000000000000000000000000000000008000009c009c9c39393039393939393939393939393930393939020030009d0100150a
Or provided here: #100: 0108008000e203e8040064040604048dc5410201080002
These currently decode as proper V2GTP messages (when using the correct decoder), although their header bits are incorrect.
Anything else?
In ISO 15118-2, section "7.9.1.3 EXI Settings for application layer messages" describes which EXI format to use. (This is reflected in the same section of ISO 15118-20.)
The EXI standard "Efficient XML Interchange (EXI) Format 1.0 (Second Edition)" describes the header in its section "EXI Header".
The combination of these two standards leads to an 8-bit EXI header b10000000 (0x80), unconditionally. The current checks look only at parts of that specification (EXI Cookie, Presence Bit for EXI Options), and fail to check others (Distinguishing Bits, EXI Format Version):
Only 0b10000000 = 0x80 is a valid EXI header for our protocols.
This introduces a new error #define and obsoletes two others.
Fixes#102
Signed-off-by: Moritz Barsnick <[email protected]>
Describe the bug
EXI streams beginning with some values other than 0x80, such as 0x01 or 0x40, should not be decoded.
To Reproduce
See the example streams provided here: #99
4084400009690002000000000000000000000000000000000000000000000000008000009c009c9c39393039393939393939393939393930393939020030009d0100150a
Or provided here: #100:
0108008000e203e8040064040604048dc5410201080002
These currently decode as proper V2GTP messages (when using the correct decoder), although their header bits are incorrect.
Anything else?
In ISO 15118-2, section "7.9.1.3 EXI Settings for application layer messages" describes which EXI format to use. (This is reflected in the same section of ISO 15118-20.)
The EXI standard "Efficient XML Interchange (EXI) Format 1.0 (Second Edition)" describes the header in its section "EXI Header".
The combination of these two standards leads to an 8-bit EXI header b10000000 (0x80), unconditionally. The current checks look only at parts of that specification (EXI Cookie, Presence Bit for EXI Options), and fail to check others (Distinguishing Bits, EXI Format Version):
cbexigen/src/input/code_templates/c/static_code/exi_header.c.jinja
Lines 33 to 40 in 123df71
The text was updated successfully, but these errors were encountered: