Abstract

Many programmers find that the logical structure of data defined in ASN.1 is simple enough, but the physical representation requires painfully careful attention to lots of detail. ASN.1 'compilers' which we had used required a programmer to know the intricacies of both ASN.1 and the generated code. Furthermore those which generated 'C' code were prone to 'memory leaks' and produced bulky code. Two features of object orientation led us to develop a code generator that procues 'C++'. First, class inheritance permits small number of functions to operate on objects of any derived class. Second, the destructors of such objects can be designed to prevent memory leaks automatically. Our own use of the system shows that within a few days programmers with no prior exposure to ASN.1 can start writing applications using only the ASN.1 specification for reference. The generated code is compact and well protected against memory leaks. This paper describes the capabilities of the code generator, the library of functions for handling all ASN.1 objects so generated, and the interior structure of these objects which allows the library functions to navigate any hierarchy. The last section discusses our experience in using the system.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call