You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It would be very handy to have a compiler capable of parsing ASN.1 files to PHP classes. And then using those PHP classes to build the requisite ASN.1 data structures to be encoded. Or take an encoded ASN.1 data structure and translate that to the PHP classes that were built.
I also have a need for general ASN.1 parsing in the SNMP library for MIBs to pick apart the generated AST (a subset anyway). This requires a parser based off X.680, and several other components:
Create a Lexer / Tokenizer for ASN.1 syntax based on X.680
Create a parser / AST generator from the tokenization
Create a compiler for translating to / from PHP classes based on the parsed ASN.1.
The text was updated successfully, but these errors were encountered:
Making lots of progress on this. I can successfully parse several ASN.1 modules, such as the LDAP, SNMP, and Kerberos definition files from their RFCs. If I had to guess, I probably have 65% of the X.680 doc covered from a parsing perspective. Still lots of work to be done and reorganization of the code I have so far.
I have started to pick this back up. There is still much to do, but it now resolves references,, loads imports automatically, and even has some macro support so I can use this for MIB parsing. I need to focus on more tests soon to have something releasable.
It would be very handy to have a compiler capable of parsing ASN.1 files to PHP classes. And then using those PHP classes to build the requisite ASN.1 data structures to be encoded. Or take an encoded ASN.1 data structure and translate that to the PHP classes that were built.
I also have a need for general ASN.1 parsing in the SNMP library for MIBs to pick apart the generated AST (a subset anyway). This requires a parser based off X.680, and several other components:
The text was updated successfully, but these errors were encountered: