Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Typedefs | Enumerations
asn1_ber_bytecode.h File Reference
#include <linux/asn1.h>

Go to the source code of this file.

Data Structures

struct  asn1_decoder
 

Macros

#define ASN1_OP_MATCH__SKIP   0x01
 
#define ASN1_OP_MATCH__ACT   0x02
 
#define ASN1_OP_MATCH__JUMP   0x04
 
#define ASN1_OP_MATCH__ANY   0x08
 
#define ASN1_OP_MATCH__COND   0x10
 
#define ASN1_OP__MATCHES_TAG   ASN1_OP_COND_MATCH_ANY_ACT
 
#define ASN1_OP_END__SET   0x01
 
#define ASN1_OP_END__OF   0x02
 
#define ASN1_OP_END__ACT   0x04
 
#define _tag(CLASS, CP, TAG)   ((ASN1_##CLASS << 6) | (ASN1_##CP << 5) | ASN1_##TAG)
 
#define _tagn(CLASS, CP, TAG)   ((ASN1_##CLASS << 6) | (ASN1_##CP << 5) | TAG)
 
#define _jump_target(N)   (N)
 
#define _action(N)   (N)
 

Typedefs

typedef int(* asn1_action_t )(void *context, size_t hdrlen, unsigned char tag, const void *value, size_t vlen)
 

Enumerations

enum  asn1_opcode {
  ASN1_OP_MATCH = 0x00, ASN1_OP_MATCH_OR_SKIP = 0x01, ASN1_OP_MATCH_ACT = 0x02, ASN1_OP_MATCH_ACT_OR_SKIP = 0x03,
  ASN1_OP_MATCH_JUMP = 0x04, ASN1_OP_MATCH_JUMP_OR_SKIP = 0x05, ASN1_OP_MATCH_ANY = 0x08, ASN1_OP_MATCH_ANY_ACT = 0x0a,
  ASN1_OP_COND_MATCH_OR_SKIP = 0x11, ASN1_OP_COND_MATCH_ACT_OR_SKIP = 0x13, ASN1_OP_COND_MATCH_JUMP_OR_SKIP = 0x15, ASN1_OP_COND_MATCH_ANY = 0x18,
  ASN1_OP_COND_MATCH_ANY_ACT = 0x1a, ASN1_OP_COND_FAIL = 0x1b, ASN1_OP_COMPLETE = 0x1c, ASN1_OP_ACT = 0x1d,
  ASN1_OP_RETURN = 0x1e, ASN1_OP_END_SEQ = 0x20, ASN1_OP_END_SET = 0x21, ASN1_OP_END_SEQ_OF = 0x22,
  ASN1_OP_END_SET_OF = 0x23, ASN1_OP_END_SEQ_ACT = 0x24, ASN1_OP_END_SET_ACT = 0x25, ASN1_OP_END_SEQ_OF_ACT = 0x26,
  ASN1_OP_END_SET_OF_ACT = 0x27, ASN1_OP__NR
}
 

Macro Definition Documentation

#define _action (   N)    (N)

Definition at line 85 of file asn1_ber_bytecode.h.

#define _jump_target (   N)    (N)

Definition at line 84 of file asn1_ber_bytecode.h.

#define _tag (   CLASS,
  CP,
  TAG 
)    ((ASN1_##CLASS << 6) | (ASN1_##CP << 5) | ASN1_##TAG)

Definition at line 82 of file asn1_ber_bytecode.h.

#define _tagn (   CLASS,
  CP,
  TAG 
)    ((ASN1_##CLASS << 6) | (ASN1_##CP << 5) | TAG)

Definition at line 83 of file asn1_ber_bytecode.h.

#define ASN1_OP__MATCHES_TAG   ASN1_OP_COND_MATCH_ANY_ACT

Definition at line 58 of file asn1_ber_bytecode.h.

#define ASN1_OP_END__ACT   0x04

Definition at line 77 of file asn1_ber_bytecode.h.

#define ASN1_OP_END__OF   0x02

Definition at line 76 of file asn1_ber_bytecode.h.

#define ASN1_OP_END__SET   0x01

Definition at line 75 of file asn1_ber_bytecode.h.

#define ASN1_OP_MATCH__ACT   0x02

Definition at line 36 of file asn1_ber_bytecode.h.

#define ASN1_OP_MATCH__ANY   0x08

Definition at line 38 of file asn1_ber_bytecode.h.

#define ASN1_OP_MATCH__COND   0x10

Definition at line 39 of file asn1_ber_bytecode.h.

#define ASN1_OP_MATCH__JUMP   0x04

Definition at line 37 of file asn1_ber_bytecode.h.

#define ASN1_OP_MATCH__SKIP   0x01

Definition at line 35 of file asn1_ber_bytecode.h.

Typedef Documentation

typedef int(* asn1_action_t)(void *context, size_t hdrlen,unsigned char tag,const void *value, size_t vlen)

Definition at line 20 of file asn1_ber_bytecode.h.

Enumeration Type Documentation

Enumerator:
ASN1_OP_MATCH 
ASN1_OP_MATCH_OR_SKIP 
ASN1_OP_MATCH_ACT 
ASN1_OP_MATCH_ACT_OR_SKIP 
ASN1_OP_MATCH_JUMP 
ASN1_OP_MATCH_JUMP_OR_SKIP 
ASN1_OP_MATCH_ANY 
ASN1_OP_MATCH_ANY_ACT 
ASN1_OP_COND_MATCH_OR_SKIP 
ASN1_OP_COND_MATCH_ACT_OR_SKIP 
ASN1_OP_COND_MATCH_JUMP_OR_SKIP 
ASN1_OP_COND_MATCH_ANY 
ASN1_OP_COND_MATCH_ANY_ACT 
ASN1_OP_COND_FAIL 
ASN1_OP_COMPLETE 
ASN1_OP_ACT 
ASN1_OP_RETURN 
ASN1_OP_END_SEQ 
ASN1_OP_END_SET 
ASN1_OP_END_SEQ_OF 
ASN1_OP_END_SET_OF 
ASN1_OP_END_SEQ_ACT 
ASN1_OP_END_SET_ACT 
ASN1_OP_END_SEQ_OF_ACT 
ASN1_OP_END_SET_OF_ACT 
ASN1_OP__NR 

Definition at line 31 of file asn1_ber_bytecode.h.