/*
 * Automatically generated by asn1_compiler.  Do not edit
 *
 * ASN.1 parser for x509_rsakey
 */
#include <linux/asn1_ber_bytecode.h>
#include "x509_rsakey-asn1.h"

enum x509_rsakey_actions {
	ACT_rsa_extract_mpi = 0,
	NR__x509_rsakey_actions = 1
};

static const asn1_action_t x509_rsakey_action_table[NR__x509_rsakey_actions] = {
	[   0] = rsa_extract_mpi,
};

static const unsigned char x509_rsakey_machine[] = {
	// RSAPublicKey
	[   0] = ASN1_OP_MATCH,
	[   1] = _tag(UNIV, CONS, SEQ),
	[   2] =  ASN1_OP_MATCH_ACT,		// modulus
	[   3] =  _tag(UNIV, PRIM, INT),
	[   4] =  _action(ACT_rsa_extract_mpi),
	[   5] =  ASN1_OP_MATCH_ACT,		// publicExponent
	[   6] =  _tag(UNIV, PRIM, INT),
	[   7] =  _action(ACT_rsa_extract_mpi),
	[   8] = ASN1_OP_END_SEQ,
	[   9] = ASN1_OP_COMPLETE,
};

const struct asn1_decoder x509_rsakey_decoder = {
	.machine = x509_rsakey_machine,
	.machlen = sizeof(x509_rsakey_machine),
	.actions = x509_rsakey_action_table,
};
