diff options
Diffstat (limited to 'scan_asn1ENUMERATED.c')
-rw-r--r-- | scan_asn1ENUMERATED.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/scan_asn1ENUMERATED.c b/scan_asn1ENUMERATED.c new file mode 100644 index 0000000..36347cc --- /dev/null +++ b/scan_asn1ENUMERATED.c @@ -0,0 +1,15 @@ +#include "asn1.h" + +size_t scan_asn1ENUMERATED(const char* src,const char* max,unsigned long* val) { + size_t tmp; + unsigned long tag; + enum asn1_tagclass tc; + enum asn1_tagtype tt; + long ltmp; + if ((tmp=scan_asn1int(src,max,&tc,&tt,&tag,<mp))) + if (tc==UNIVERSAL && tt==PRIMITIVE && tag==ENUMERATED) { + *val=(unsigned long)ltmp; + return tmp; + } + return 0; +} |