What ASN.1 features are supported/unsupported

29 views
Skip to first unread message

Steven Cockeram

unread,
Jan 10, 2008, 5:50:00 PM1/10/08
to a2c-discuss
Hi,

I'm very impressed at the progress of this project in such a small
space of time.

Does the compiler currently or is it planned to support the features
necessary to allow something such as CSTA Phase III using ROSE to
work.

I looked at this a couple of years ago and found out that IOC is
needed, but I find ASN.1 so incredibly complex that it make my head
hurt ;)

Steve

Jim Schaad

unread,
Jan 10, 2008, 5:56:42 PM1/10/08
to a2c-d...@googlegroups.com
Can you give me pointers to the docs about this so I can make a good guess

jim

Steven Cockeram

unread,
Jan 10, 2008, 6:27:55 PM1/10/08
to a2c-discuss
It's a telephony API for talking to switches.

see: http://www.ecma-international.org/publications/standards/Ecma-285.htm

Wow - quick reply!

Steve

Blake Ramsdell

unread,
Jan 10, 2008, 7:03:11 PM1/10/08
to a2c-d...@googlegroups.com
On Jan 10, 2008 3:27 PM, Steven Cockeram <Steven....@gmail.com> wrote:
> It's a telephony API for talking to switches.
>
> see: http://www.ecma-international.org/publications/standards/Ecma-285.htm

Based on a quick look at
<http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-285.pdf>
I see:

ASN.1 Tools Acknowledgement

The ASN.1 specified in this Standard has been checked for conformance
with the ASN.1 Standard by the OSS ASN.1 Tools.

I took a quick look, and it doesn't seem to be particularly thorny
ASN.1 -- a little bit of named bit lists and enumerated types, but
based on my limited understanding I think it should all be supported.

Jim, the ASN.1 is in file form in
<http://www.ecma-international.org/publications/files/ecma-st/ECMA-285-source_files.zip>

Blake
--
Blake Ramsdell | http://www.blakeramsdell.com

Steven Cockeram

unread,
Jan 10, 2008, 7:50:11 PM1/10/08
to a2c-discuss
I think that the problem that all other free compilers have had is
with the ROSE stuff (Remote Operations) which uses Information
Object Classes (IOC) - I'm not 100% sure, so help on this is
appreciated.

(I have tried to run the compiler on the specifications and get loads
of errors).

Steve



On Jan 11, 12:03 am, "Blake Ramsdell" <bla...@gmail.com> wrote:
> On Jan 10, 2008 3:27 PM, Steven Cockeram <Steven.Cocke...@gmail.com> wrote:
>
> > It's a telephony API for talking to switches.
>
> > see:http://www.ecma-international.org/publications/standards/Ecma-285.htm
>
> Based on a quick look at
> <http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-285...>
> I see:
>
> ASN.1 Tools Acknowledgement
>
> The ASN.1 specified in this Standard has been checked for conformance
> with the ASN.1 Standard by the OSS ASN.1 Tools.
>
> I took a quick look, and it doesn't seem to be particularly thorny
> ASN.1 -- a little bit of named bit lists and enumerated types, but
> based on my limited understanding I think it should all be supported.
>
> Jim, the ASN.1 is in file form in
> <http://www.ecma-international.org/publications/files/ecma-st/ECMA-285...>

Paul Hoffman

unread,
Jan 11, 2008, 12:32:21 PM1/11/08
to a2c-d...@googlegroups.com
On Jan 10, 2008 4:50 PM, Steven Cockeram <Steven....@gmail.com> wrote:
> (I have tried to run the compiler on the specifications and get loads
> of errors).

There are IMPORTS that are not in the .zip file that Blake pointed to.
We can't see if the compiler works unless we have all the required
modules. The first error message reads:
Ecma-285-asn.txt (8931, 427950, 30): Error Import module name
Remote-Operations-Information-Objects not found.
That error comes from the following:
ERROR FROM Remote-Operations-Information-Objects
{joint-iso-itu-t remote-operations(4) informationObjects(5) version1(0)};
If you don't have that module for the compiler, it can't compile the
whole thing.

Steven Cockeram

unread,
Jan 11, 2008, 12:39:36 PM1/11/08
to a2c-discuss
Isn't that import in the rose94.txt file?

I'm not sure how the import system works - if you just put all the
asn1 source files on the command line will a2c read them all in?

Steve

On Jan 11, 5:32 pm, "Paul Hoffman" <paul.hoff...@gmail.com> wrote:

Paul Hoffman

unread,
Jan 11, 2008, 12:48:28 PM1/11/08
to a2c-d...@googlegroups.com
Sorry, I wasn't clear (because a2c wasn't clear). There are IMPORTs in
rose94.txt that are not available. Those are therefore needed downwind
from the IMPORTing modules.

(There is a deficiency in a2c that won't tell you exactly what it is
missing, just that something is missing.)

Steven Cockeram

unread,
Jan 11, 2008, 12:55:59 PM1/11/08
to a2c-discuss
Ok, I see.

From looking at the rose94.txt file, are all the constructs that it
uses supported by a2c - things like OPERATION ::= CLASS, WITH SYNTAX
etc?

If they are I can spend time trying to get it all working and report
back progress. The CSTA spec is quite a large ASN1 file and it would
be great kudos if a2c can work with it as *ALL* other free ASN1
compilers don't work!

Steve

Paul Hoffman

unread,
Jan 11, 2008, 1:03:02 PM1/11/08
to a2c-d...@googlegroups.com
Look for any IMPORTS in any of the modules that don't resolve to a OID
in one of the other modules. From my first look, I think all the
missing ones are in rose94.txt, but I could be wrong. Wash, rinse,
repeat.

Steven Cockeram

unread,
Jan 11, 2008, 1:19:10 PM1/11/08
to a2c-discuss
I've just split out the definitions in rose94.txt to see if the basic
rose stuff would work.

It gets loads of errors, but no IMPORT problems:

mono ../a2c.exe Remote-Operations-Useful-Definitions.asn Remote-
Operations-Information-Objects.asn Remote-Operations-Generic-ROS-
PDUs.asn

Remote-Operations-Useful-Definitions.asn (6, 471, 70): Error Symbol
OPERATION is not valid for a type expression
Remote-Operations-Useful-Definitions.asn (7, 532, 81): Error Symbol
OPERATION is not valid for a type expression
Remote-Operations-Useful-Definitions.asn (8, 574, 88): Error Symbol
ERROR is not valid for a type expression

Steve

Jim Schaad

unread,
Jan 11, 2008, 4:53:57 PM1/11/08
to a2c-d...@googlegroups.com
Problem is actually in the compiler not in the imports sections.

Two issues that I have seen so far

1. If you have an imports where none of the imports are used, it may
generate this error. Place the rose94.asn file first and it will vanish.

2. The use of valuesets/objectsets in classes is not correctly supported.

Additionally you need to determine if you are using PER encoding rules.
These currently do not have any support.

Jim


> -----Original Message-----
> From: a2c-d...@googlegroups.com [mailto:a2c-
> dis...@googlegroups.com] On Behalf Of Steven Cockeram

Steven Cockeram

unread,
Jan 11, 2008, 6:25:13 PM1/11/08
to a2c-discuss
Thanks Jim,

Point 2 is the interesting thing from my point of view, I want to
avoid spending a lot of time trying to get something working that may
never work. Are the valuesets/objectsets in classes a known problem
that is being worked on?

Virtually all switches as far as I have found out use BER encoding
rules only.

Thanks for your help so far.

Steve

Jim Schaad

unread,
Jan 11, 2008, 6:30:44 PM1/11/08
to a2c-d...@googlegroups.com
It is now a known problem and I see no reason that it should not be fixed.
I would suggest that you log it into the list of issues.

jim

Steven Cockeram

unread,
Jan 11, 2008, 7:01:13 PM1/11/08
to a2c-discuss
Once again thanks - I'll log it as an issue.

Steve
Reply all
Reply to author
Forward
0 new messages