OpenSSL  1.0.1c
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros
Typedefs | Functions | Variables
ameth_lib.c File Reference
#include <stdio.h>
#include "cryptlib.h"
#include <openssl/asn1t.h>
#include <openssl/x509.h>
#include <openssl/engine.h>
#include "asn1_locl.h"

Go to the source code of this file.

Typedefs

typedef int sk_cmp_fn_type (const char *const *a, const char *const *b)
 

Functions

 IMPLEMENT_OBJ_BSEARCH_CMP_FN (const EVP_PKEY_ASN1_METHOD *, const EVP_PKEY_ASN1_METHOD *, ameth)
 
int EVP_PKEY_asn1_get_count (void)
 
const EVP_PKEY_ASN1_METHODEVP_PKEY_asn1_get0 (int idx)
 
const EVP_PKEY_ASN1_METHODEVP_PKEY_asn1_find (ENGINE **pe, int type)
 
const EVP_PKEY_ASN1_METHODEVP_PKEY_asn1_find_str (ENGINE **pe, const char *str, int len)
 
int EVP_PKEY_asn1_add0 (const EVP_PKEY_ASN1_METHOD *ameth)
 
int EVP_PKEY_asn1_add_alias (int to, int from)
 
int EVP_PKEY_asn1_get0_info (int *ppkey_id, int *ppkey_base_id, int *ppkey_flags, const char **pinfo, const char **ppem_str, const EVP_PKEY_ASN1_METHOD *ameth)
 
const EVP_PKEY_ASN1_METHODEVP_PKEY_get0_asn1 (EVP_PKEY *pkey)
 
EVP_PKEY_ASN1_METHODEVP_PKEY_asn1_new (int id, int flags, const char *pem_str, const char *info)
 
void EVP_PKEY_asn1_copy (EVP_PKEY_ASN1_METHOD *dst, const EVP_PKEY_ASN1_METHOD *src)
 
void EVP_PKEY_asn1_free (EVP_PKEY_ASN1_METHOD *ameth)
 
void EVP_PKEY_asn1_set_public (EVP_PKEY_ASN1_METHOD *ameth, int(*pub_decode)(EVP_PKEY *pk, X509_PUBKEY *pub), int(*pub_encode)(X509_PUBKEY *pub, const EVP_PKEY *pk), int(*pub_cmp)(const EVP_PKEY *a, const EVP_PKEY *b), int(*pub_print)(BIO *out, const EVP_PKEY *pkey, int indent, ASN1_PCTX *pctx), int(*pkey_size)(const EVP_PKEY *pk), int(*pkey_bits)(const EVP_PKEY *pk))
 
void EVP_PKEY_asn1_set_private (EVP_PKEY_ASN1_METHOD *ameth, int(*priv_decode)(EVP_PKEY *pk, PKCS8_PRIV_KEY_INFO *p8inf), int(*priv_encode)(PKCS8_PRIV_KEY_INFO *p8, const EVP_PKEY *pk), int(*priv_print)(BIO *out, const EVP_PKEY *pkey, int indent, ASN1_PCTX *pctx))
 
void EVP_PKEY_asn1_set_param (EVP_PKEY_ASN1_METHOD *ameth, int(*param_decode)(EVP_PKEY *pkey, const unsigned char **pder, int derlen), int(*param_encode)(const EVP_PKEY *pkey, unsigned char **pder), int(*param_missing)(const EVP_PKEY *pk), int(*param_copy)(EVP_PKEY *to, const EVP_PKEY *from), int(*param_cmp)(const EVP_PKEY *a, const EVP_PKEY *b), int(*param_print)(BIO *out, const EVP_PKEY *pkey, int indent, ASN1_PCTX *pctx))
 
void EVP_PKEY_asn1_set_free (EVP_PKEY_ASN1_METHOD *ameth, void(*pkey_free)(EVP_PKEY *pkey))
 
void EVP_PKEY_asn1_set_ctrl (EVP_PKEY_ASN1_METHOD *ameth, int(*pkey_ctrl)(EVP_PKEY *pkey, int op, long arg1, void *arg2))
 

Variables

const EVP_PKEY_ASN1_METHOD rsa_asn1_meths []
 
const EVP_PKEY_ASN1_METHOD dsa_asn1_meths []
 
const EVP_PKEY_ASN1_METHOD dh_asn1_meth
 
const EVP_PKEY_ASN1_METHOD eckey_asn1_meth
 
const EVP_PKEY_ASN1_METHOD hmac_asn1_meth
 
const EVP_PKEY_ASN1_METHOD cmac_asn1_meth
 

Typedef Documentation

typedef int sk_cmp_fn_type(const char *const *a, const char *const *b)

Definition at line 98 of file ameth_lib.c.

Function Documentation

int EVP_PKEY_asn1_add0 ( const EVP_PKEY_ASN1_METHOD ameth)

Definition at line 240 of file ameth_lib.c.

int EVP_PKEY_asn1_add_alias ( int  to,
int  from 
)

Definition at line 254 of file ameth_lib.c.

void EVP_PKEY_asn1_copy ( EVP_PKEY_ASN1_METHOD dst,
const EVP_PKEY_ASN1_METHOD src 
)

Definition at line 357 of file ameth_lib.c.

const EVP_PKEY_ASN1_METHOD* EVP_PKEY_asn1_find ( ENGINE **  pe,
int  type 
)

Definition at line 174 of file ameth_lib.c.

const EVP_PKEY_ASN1_METHOD* EVP_PKEY_asn1_find_str ( ENGINE **  pe,
const char *  str,
int  len 
)

Definition at line 202 of file ameth_lib.c.

void EVP_PKEY_asn1_free ( EVP_PKEY_ASN1_METHOD ameth)

Definition at line 391 of file ameth_lib.c.

const EVP_PKEY_ASN1_METHOD* EVP_PKEY_asn1_get0 ( int  idx)

Definition at line 137 of file ameth_lib.c.

int EVP_PKEY_asn1_get0_info ( int *  ppkey_id,
int *  ppkey_base_id,
int *  ppkey_flags,
const char **  pinfo,
const char **  ppem_str,
const EVP_PKEY_ASN1_METHOD ameth 
)

Definition at line 264 of file ameth_lib.c.

int EVP_PKEY_asn1_get_count ( void  )

Definition at line 129 of file ameth_lib.c.

EVP_PKEY_ASN1_METHOD* EVP_PKEY_asn1_new ( int  id,
int  flags,
const char *  pem_str,
const char *  info 
)

Definition at line 288 of file ameth_lib.c.

void EVP_PKEY_asn1_set_ctrl ( EVP_PKEY_ASN1_METHOD ameth,
int(*)(EVP_PKEY *pkey, int op, long arg1, void *arg2)  pkey_ctrl 
)

Definition at line 455 of file ameth_lib.c.

void EVP_PKEY_asn1_set_free ( EVP_PKEY_ASN1_METHOD ameth,
void(*)(EVP_PKEY *pkey)  pkey_free 
)

Definition at line 449 of file ameth_lib.c.

void EVP_PKEY_asn1_set_param ( EVP_PKEY_ASN1_METHOD ameth,
int(*)(EVP_PKEY *pkey, const unsigned char **pder, int derlen)  param_decode,
int(*)(const EVP_PKEY *pkey, unsigned char **pder)  param_encode,
int(*)(const EVP_PKEY *pk)  param_missing,
int(*)(EVP_PKEY *to, const EVP_PKEY *from)  param_copy,
int(*)(const EVP_PKEY *a, const EVP_PKEY *b param_cmp,
int(*)(BIO *out, const EVP_PKEY *pkey, int indent, ASN1_PCTX *pctx)  param_print 
)

Definition at line 431 of file ameth_lib.c.

void EVP_PKEY_asn1_set_private ( EVP_PKEY_ASN1_METHOD ameth,
int(*)(EVP_PKEY *pk, PKCS8_PRIV_KEY_INFO *p8inf)  priv_decode,
int(*)(PKCS8_PRIV_KEY_INFO *p8, const EVP_PKEY *pk)  priv_encode,
int(*)(BIO *out, const EVP_PKEY *pkey, int indent, ASN1_PCTX *pctx)  priv_print 
)

Definition at line 420 of file ameth_lib.c.

void EVP_PKEY_asn1_set_public ( EVP_PKEY_ASN1_METHOD ameth,
int(*)(EVP_PKEY *pk, X509_PUBKEY *pub)  pub_decode,
int(*)(X509_PUBKEY *pub, const EVP_PKEY *pk)  pub_encode,
int(*)(const EVP_PKEY *a, const EVP_PKEY *b pub_cmp,
int(*)(BIO *out, const EVP_PKEY *pkey, int indent, ASN1_PCTX *pctx)  pub_print,
int(*)(const EVP_PKEY *pk)  pkey_size,
int(*)(const EVP_PKEY *pk)  pkey_bits 
)

Definition at line 403 of file ameth_lib.c.

const EVP_PKEY_ASN1_METHOD* EVP_PKEY_get0_asn1 ( EVP_PKEY pkey)

Definition at line 283 of file ameth_lib.c.

IMPLEMENT_OBJ_BSEARCH_CMP_FN ( const EVP_PKEY_ASN1_METHOD ,
const EVP_PKEY_ASN1_METHOD ,
ameth   
)

Variable Documentation

const EVP_PKEY_ASN1_METHOD cmac_asn1_meth

Definition at line 76 of file cm_ameth.c.

const EVP_PKEY_ASN1_METHOD dh_asn1_meth

Definition at line 469 of file dh_ameth.c.

const EVP_PKEY_ASN1_METHOD dsa_asn1_meths[]

Definition at line 643 of file dsa_ameth.c.

const EVP_PKEY_ASN1_METHOD eckey_asn1_meth

Definition at line 628 of file ec_ameth.c.

const EVP_PKEY_ASN1_METHOD hmac_asn1_meth

Definition at line 141 of file hm_ameth.c.

const EVP_PKEY_ASN1_METHOD rsa_asn1_meths[]

Definition at line 660 of file rsa_ameth.c.