Paul Long plong at CMPU.NET
Tue Feb 17 20:45:30 EST 1998

Jim Toga wrote:
> It has come to my attention that there are a number of OCTET STRINGS
> defined in H.245 along the lines of
>         "h235Key                OCTET STRING (SIZE(1..65535))"
> The problem with these difinitions is that with the terminating NULL ( I
> think...) the lentgh goes over by one byte, a 64k block of data.   The OSS
> compiler generates the following warning, which goes away if we change the
> lenth to '65534'....
> "h245.asn", line 1941 (MULTIMEDIA-SYSTEM-CONTROL): C0470W: The size of the
> generated C structure for the SET OF or SEQUENCE OF exceeds 64K bytes and may
> adversely affect CPU and memory performance.  Consider use of the LINKED or
> UNBOUNDED directive.

This has nothing to do with ASN.1. The fragmentation procedure, if
that's what you are concerned about, will not be invoked because the
length determinant is a constrained whole number with upper-bound less
than 65536. As you can see by the message, it is warning about how the
OSS compiler represents this structure in memory. Certain chip
architectures :-} don't like data blocks larger than 64K. I suggest you
live with the warning or tell the OSS compiler to use an alternative
representation. Looks like it uses a simple array of contiguous memory
by default, whereas the LINKED option uses a linked list with entries
representing each element of the aggregate. This is just a guess
though--we don't use the OSS compiler.

Paul Long___________________________http://www.cmpu.net/public/plong
Smith Micro Software, Inc.__________http://www.smithmicro.com/

More information about the sg16-avd mailing list