Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
x509_cert_parser.c File Reference
#include <linux/kernel.h>
#include <linux/slab.h>
#include <linux/err.h>
#include <linux/oid_registry.h>
#include "public_key.h"
#include "x509_parser.h"
#include "x509-asn1.h"
#include "x509_rsakey-asn1.h"

Go to the source code of this file.

Data Structures

struct  x509_parse_context
 

Macros

#define pr_fmt(fmt)   "X.509: "fmt
 
#define dec2bin(X)   ((X) - '0')
 
#define DD2bin(P)   ({ unsigned x = dec2bin(P[0]) * 10 + dec2bin(P[1]); P += 2; x; })
 

Functions

void x509_free_certificate (struct x509_certificate *cert)
 
struct x509_certificatex509_cert_parse (const void *data, size_t datalen)
 
int x509_note_OID (void *context, size_t hdrlen, unsigned char tag, const void *value, size_t vlen)
 
int x509_note_tbs_certificate (void *context, size_t hdrlen, unsigned char tag, const void *value, size_t vlen)
 
int x509_note_pkey_algo (void *context, size_t hdrlen, unsigned char tag, const void *value, size_t vlen)
 
int x509_note_signature (void *context, size_t hdrlen, unsigned char tag, const void *value, size_t vlen)
 
int x509_extract_name_segment (void *context, size_t hdrlen, unsigned char tag, const void *value, size_t vlen)
 
int x509_note_issuer (void *context, size_t hdrlen, unsigned char tag, const void *value, size_t vlen)
 
int x509_note_subject (void *context, size_t hdrlen, unsigned char tag, const void *value, size_t vlen)
 
int x509_extract_key_data (void *context, size_t hdrlen, unsigned char tag, const void *value, size_t vlen)
 
int rsa_extract_mpi (void *context, size_t hdrlen, unsigned char tag, const void *value, size_t vlen)
 
int x509_process_extension (void *context, size_t hdrlen, unsigned char tag, const void *value, size_t vlen)
 
int x509_note_not_before (void *context, size_t hdrlen, unsigned char tag, const void *value, size_t vlen)
 
int x509_note_not_after (void *context, size_t hdrlen, unsigned char tag, const void *value, size_t vlen)
 

Macro Definition Documentation

#define DD2bin (   P)    ({ unsigned x = dec2bin(P[0]) * 10 + dec2bin(P[1]); P += 2; x; })
#define dec2bin (   X)    ((X) - '0')
#define pr_fmt (   fmt)    "X.509: "fmt

Definition at line 12 of file x509_cert_parser.c.

Function Documentation

int rsa_extract_mpi ( void context,
size_t  hdrlen,
unsigned char  tag,
const void value,
size_t  vlen 
)

Definition at line 356 of file x509_cert_parser.c.

struct x509_certificate* x509_cert_parse ( const void data,
size_t  datalen 
)
read

Definition at line 57 of file x509_cert_parser.c.

int x509_extract_key_data ( void context,
size_t  hdrlen,
unsigned char  tag,
const void value,
size_t  vlen 
)

Definition at line 337 of file x509_cert_parser.c.

int x509_extract_name_segment ( void context,
size_t  hdrlen,
unsigned char  tag,
const void value,
size_t  vlen 
)

Definition at line 214 of file x509_cert_parser.c.

void x509_free_certificate ( struct x509_certificate cert)

Definition at line 42 of file x509_cert_parser.c.

int x509_note_issuer ( void context,
size_t  hdrlen,
unsigned char  tag,
const void value,
size_t  vlen 
)

Definition at line 318 of file x509_cert_parser.c.

int x509_note_not_after ( void context,
size_t  hdrlen,
unsigned char  tag,
const void value,
size_t  vlen 
)

Definition at line 490 of file x509_cert_parser.c.

int x509_note_not_before ( void context,
size_t  hdrlen,
unsigned char  tag,
const void value,
size_t  vlen 
)

Definition at line 482 of file x509_cert_parser.c.

int x509_note_OID ( void context,
size_t  hdrlen,
unsigned char  tag,
const void value,
size_t  vlen 
)

Definition at line 103 of file x509_cert_parser.c.

int x509_note_pkey_algo ( void context,
size_t  hdrlen,
unsigned char  tag,
const void value,
size_t  vlen 
)

Definition at line 140 of file x509_cert_parser.c.

int x509_note_signature ( void context,
size_t  hdrlen,
unsigned char  tag,
const void value,
size_t  vlen 
)

Definition at line 192 of file x509_cert_parser.c.

int x509_note_subject ( void context,
size_t  hdrlen,
unsigned char  tag,
const void value,
size_t  vlen 
)

Definition at line 326 of file x509_cert_parser.c.

int x509_note_tbs_certificate ( void context,
size_t  hdrlen,
unsigned char  tag,
const void value,
size_t  vlen 
)

Definition at line 123 of file x509_cert_parser.c.

int x509_process_extension ( void context,
size_t  hdrlen,
unsigned char  tag,
const void value,
size_t  vlen 
)

Definition at line 379 of file x509_cert_parser.c.