vlm | fa67ddc | 2004-06-03 03:38:44 +0000 | [diff] [blame] | 1 | |
| 2 | 0. ASN.1 grammar parser is written mostly with respect to constructing a tree, |
| 3 | so a tree destruction is not fully supported and certain memory leaks are |
| 4 | known. Not a huge problem for run-once programs like a compiler. |
| 5 | NOTE: This statement does not apply to the target code _produced_ |
| 6 | by the compiler. |
| 7 | |
vlm | 2591f52 | 2004-09-14 14:29:47 +0000 | [diff] [blame] | 8 | 1. For purposes of compilation, INTEGER type is modelled using a large |
vlm | fa67ddc | 2004-06-03 03:38:44 +0000 | [diff] [blame] | 9 | static type (asn_integer_t), but defined as any positive or negative value |
| 10 | by ASN.1. Not a problem as most specifications use very small values anyway. |
| 11 | NOTE: This statement does not apply to the target code _produced_ |
| 12 | by the compiler. |
| 13 | |
vlm | 2591f52 | 2004-09-14 14:29:47 +0000 | [diff] [blame] | 14 | 2. ASN Macros are prohibited by the current ASN.1 standard, |
vlm | fa67ddc | 2004-06-03 03:38:44 +0000 | [diff] [blame] | 15 | and are not supported. |
| 16 | |
vlm | 2591f52 | 2004-09-14 14:29:47 +0000 | [diff] [blame] | 17 | 3. Multiple tags applied at the same level are not supported: |
vlm | fa67ddc | 2004-06-03 03:38:44 +0000 | [diff] [blame] | 18 | BadTags ::= [0] EXPLICIT [2] IMPLICIT OtherType |
| 19 | The same thing could be achieved by using the indirection: |
| 20 | GoodTags ::= [0] EXPLICIT OtherTypePtr |
| 21 | OtherTypePtr ::= [2] IMPLICIT OtherType |
| 22 | |
vlm | 2591f52 | 2004-09-14 14:29:47 +0000 | [diff] [blame] | 23 | 4. Mixed definite/indefinite length in a _single_ BER tags sequence is not |
vlm | fa67ddc | 2004-06-03 03:38:44 +0000 | [diff] [blame] | 24 | supported. Should not be a problem in the real world. Please note that it |
| 25 | is still possible, for example, to encode a wrapper structure using definite |
| 26 | length, and encode its substructure member using indefinite length. The BER |
| 27 | decoder is perfectly capable of decoding such sequences. |
| 28 | |
vlm | 2591f52 | 2004-09-14 14:29:47 +0000 | [diff] [blame] | 29 | 5. Encoding or decoding of structures with combined length greater than 16MB |
vlm | 399983b | 2004-10-20 15:48:09 +0000 | [diff] [blame] | 30 | is not tested. |
vlm | fa67ddc | 2004-06-03 03:38:44 +0000 | [diff] [blame] | 31 | |
vlm | 485cd66 | 2004-10-21 12:23:16 +0000 | [diff] [blame] | 32 | 6. XER decoding does not support integer (INTEGER, ENUMERATED) values |
| 33 | outside the signed long range. |
| 34 | |