Asterix is utility used to read and parse EUROCONTROL ASTERIX protocol data from stdin, file or network multicast stream and print it to standard output in text, XML or JSON format. Source can be used to generate Wireshark dissector for ASTERIX protocol. All ASTERIX categories are defined through XML definition file.
There seems to be a problem for the tool to decode reserved expansion fields that are composed using different layers of compound types.
I generated an example xml script that should decode the explicit RE data item, with a 'Field 1' as first bit of the first compound item and 'M5N' as the second bit of the first compound item. The rest is not used in the data.
In my ASTERIX data, I only have data with the 'M5N' bit set to 1. With this bit set, the code should jump to the last compound part of the xml below, which it does correctly (When I just read a 'fixed' variable with length 1 instead of interpreting the data as a compound - see commented part, I can see the FSPEC and first byte of data of this compound item, but whenever it is defined as 'compound', the code returns errors.
Is there a way to decode a RE field with this outlay:
Explicit
Compound
Compound
Compound
Reserved Expansion FieldREF1Field 1 - check MSSR manual what this means1M5NMode 5 Reports, New Format2SPSpare0FXExtension Indicator0TI1Information Target 11TI2Information Target 22spareSpare bits set to 00FXExtension IndicatorNo extensionExtension
There seems to be a problem for the tool to decode reserved expansion fields that are composed using different layers of compound types. I generated an example xml script that should decode the explicit RE data item, with a 'Field 1' as first bit of the first compound item and 'M5N' as the second bit of the first compound item. The rest is not used in the data. In my ASTERIX data, I only have data with the 'M5N' bit set to 1. With this bit set, the code should jump to the last compound part of the xml below, which it does correctly (When I just read a 'fixed' variable with length 1 instead of interpreting the data as a compound - see commented part, I can see the FSPEC and first byte of data of this compound item, but whenever it is defined as 'compound', the code returns errors. Is there a way to decode a RE field with this outlay: Explicit
Compound