asn.1 parser in C/Python

asn.1, c, parsing, python

Solution

Never tried them but:

- asn1c

- snacc

Both seems to do what you want (C, not Python).

Problem

I am looking for a solution to parse asn.1 spec files and generate a decoder from those. Ideally I would like to work with Python modules, but if nothing is available I would use C/C++ libraries and interface them with Python with the plethora of solutions out there. In the past I have been using pyasn1 and building everything by hand but that has become too unwieldly. I have also looked superficially to libtasn1 and asn1c. The first one had problems parsing even the simplest of files. The second has a good parser but generating C code for decoding seems too complex; the solution worked well with straightforward specs but choked on complex ones. Any other good alternatives I may have overlooked?

Original source