Skip to content
Snippets Groups Projects
BUGS 1.47 KiB
Newer Older
Lev Walkin's avatar
Lev Walkin committed

0. ASN.1 grammar parser is written mostly with respect to constructing a tree,
so a tree destruction is not fully supported and certain memory leaks are
known. Not a huge problem for run-once programs like a compiler.
NOTE:	This statement does not apply to the target code _produced_
	by the compiler.

Lev Walkin's avatar
Lev Walkin committed
1. For purposes of compilation, INTEGER type is modelled using a large
Lev Walkin's avatar
Lev Walkin committed
static type (asn_integer_t), but defined as any positive or negative value
by ASN.1. Not a problem as most specifications use very small values anyway.
NOTE:	This statement does not apply to the target code _produced_
	by the compiler.

Lev Walkin's avatar
Lev Walkin committed
2. A MACRO facility is part of obsolete ASN.1 standard, and is not supported.
Lev Walkin's avatar
Lev Walkin committed

Lev Walkin's avatar
Lev Walkin committed
3. Multiple tags applied at the same level are not supported:
Lev Walkin's avatar
Lev Walkin committed
	BadTags ::= [0] EXPLICIT [2] IMPLICIT OtherType
   The same thing could be achieved by using the indirection:
	GoodTags     ::= [0] EXPLICIT OtherTypePtr
	OtherTypePtr ::= [2] IMPLICIT OtherType

Lev Walkin's avatar
Lev Walkin committed
4. Mixed definite/indefinite length in a _single_ BER tags sequence is not
Lev Walkin's avatar
Lev Walkin committed
supported. Should not be a problem in the real world. Please note that it
is still possible, for example, to encode a wrapper structure using definite
length, and encode its substructure member using indefinite length. The BER
decoder is perfectly capable of decoding such sequences.

Lev Walkin's avatar
Lev Walkin committed
5. Encoding or decoding of structures with combined length greater than 16MB
Lev Walkin's avatar
Lev Walkin committed
is not tested.
Lev Walkin's avatar
Lev Walkin committed

Lev Walkin's avatar
Lev Walkin committed
6. XER codec does not support integer (INTEGER, ENUMERATED) values
Lev Walkin's avatar
Lev Walkin committed
outside the signed long range.