OpenSSL  1.0.1c
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros
Classes | Macros | Typedefs | Functions | Variables
objects.h File Reference
#include <openssl/obj_mac.h>
#include <openssl/bio.h>
#include <openssl/asn1.h>

Go to the source code of this file.

Classes

struct  obj_name_st
 

Macros

#define USE_OBJ_MAC
 
#define OBJ_NAME_TYPE_UNDEF   0x00
 
#define OBJ_NAME_TYPE_MD_METH   0x01
 
#define OBJ_NAME_TYPE_CIPHER_METH   0x02
 
#define OBJ_NAME_TYPE_PKEY_METH   0x03
 
#define OBJ_NAME_TYPE_COMP_METH   0x04
 
#define OBJ_NAME_TYPE_NUM   0x05
 
#define OBJ_NAME_ALIAS   0x8000
 
#define OBJ_BSEARCH_VALUE_ON_NOMATCH   0x01
 
#define OBJ_BSEARCH_FIRST_VALUE_ON_MATCH   0x02
 
#define OBJ_create_and_add_object(a, b, c)   OBJ_create(a,b,c)
 
#define _DECLARE_OBJ_BSEARCH_CMP_FN(scope, type1, type2, nm)
 
#define DECLARE_OBJ_BSEARCH_CMP_FN(type1, type2, cmp)   _DECLARE_OBJ_BSEARCH_CMP_FN(static, type1, type2, cmp)
 
#define DECLARE_OBJ_BSEARCH_GLOBAL_CMP_FN(type1, type2, nm)   type2 * OBJ_bsearch_##nm(type1 *key, type2 const *base, int num)
 
#define IMPLEMENT_OBJ_BSEARCH_CMP_FN(type1, type2, nm)
 
#define IMPLEMENT_OBJ_BSEARCH_GLOBAL_CMP_FN(type1, type2, nm)
 
#define OBJ_bsearch(type1, key, type2, base, num, cmp)
 
#define OBJ_bsearch_ex(type1, key, type2, base, num, cmp, flags)
 
#define OBJ_F_OBJ_ADD_OBJECT   105
 
#define OBJ_F_OBJ_CREATE   100
 
#define OBJ_F_OBJ_DUP   101
 
#define OBJ_F_OBJ_NAME_NEW_INDEX   106
 
#define OBJ_F_OBJ_NID2LN   102
 
#define OBJ_F_OBJ_NID2OBJ   103
 
#define OBJ_F_OBJ_NID2SN   104
 
#define OBJ_R_MALLOC_FAILURE   100
 
#define OBJ_R_UNKNOWN_NID   101
 

Typedefs

typedef struct obj_name_st OBJ_NAME
 

Functions

int OBJ_NAME_init (void)
 
int OBJ_NAME_new_index (unsigned long(*hash_func)(const char *), int(*cmp_func)(const char *, const char *), void(*free_func)(const char *, int, const char *))
 
const char * OBJ_NAME_get (const char *name, int type)
 
int OBJ_NAME_add (const char *name, int type, const char *data)
 
int OBJ_NAME_remove (const char *name, int type)
 
void OBJ_NAME_cleanup (int type)
 
void OBJ_NAME_do_all (int type, void(*fn)(const OBJ_NAME *, void *arg), void *arg)
 
void OBJ_NAME_do_all_sorted (int type, void(*fn)(const OBJ_NAME *, void *arg), void *arg)
 
ASN1_OBJECTOBJ_dup (const ASN1_OBJECT *o)
 
ASN1_OBJECTOBJ_nid2obj (int n)
 
const char * OBJ_nid2ln (int n)
 
const char * OBJ_nid2sn (int n)
 
int OBJ_obj2nid (const ASN1_OBJECT *o)
 
ASN1_OBJECTOBJ_txt2obj (const char *s, int no_name)
 
int OBJ_obj2txt (char *buf, int buf_len, const ASN1_OBJECT *a, int no_name)
 
int OBJ_txt2nid (const char *s)
 
int OBJ_ln2nid (const char *s)
 
int OBJ_sn2nid (const char *s)
 
int OBJ_cmp (const ASN1_OBJECT *a, const ASN1_OBJECT *b)
 
const voidOBJ_bsearch_ (const void *key, const void *base, int num, int size, int(*cmp)(const void *, const void *))
 
const voidOBJ_bsearch_ex_ (const void *key, const void *base, int num, int size, int(*cmp)(const void *, const void *), int flags)
 
int OBJ_new_nid (int num)
 
int OBJ_add_object (const ASN1_OBJECT *obj)
 
int OBJ_create (const char *oid, const char *sn, const char *ln)
 
void OBJ_cleanup (void)
 
int OBJ_create_objects (BIO *in)
 
int OBJ_find_sigid_algs (int signid, int *pdig_nid, int *ppkey_nid)
 
int OBJ_find_sigid_by_algs (int *psignid, int dig_nid, int pkey_nid)
 
int OBJ_add_sigid (int signid, int dig_id, int pkey_id)
 
void OBJ_sigid_free (void)
 
void check_defer (int nid)
 
void ERR_load_OBJ_strings (void)
 

Variables

int obj_cleanup_defer
 

Macro Definition Documentation

#define _DECLARE_OBJ_BSEARCH_CMP_FN (   scope,
  type1,
  type2,
  nm 
)
Value:
static int nm##_cmp_BSEARCH_CMP_FN(const void *, const void *); \
static int nm##_cmp(type1 const *, type2 const *); \
scope type2 * OBJ_bsearch_##nm(type1 *key, type2 const *base, int num)

Definition at line 1021 of file objects.h.

#define DECLARE_OBJ_BSEARCH_CMP_FN (   type1,
  type2,
  cmp 
)    _DECLARE_OBJ_BSEARCH_CMP_FN(static, type1, type2, cmp)

Definition at line 1026 of file objects.h.

#define DECLARE_OBJ_BSEARCH_GLOBAL_CMP_FN (   type1,
  type2,
  nm 
)    type2 * OBJ_bsearch_##nm(type1 *key, type2 const *base, int num)

Definition at line 1028 of file objects.h.

#define IMPLEMENT_OBJ_BSEARCH_CMP_FN (   type1,
  type2,
  nm 
)
Value:
static int nm##_cmp_BSEARCH_CMP_FN(const void *a_, const void *b_) \
{ \
type1 const *a = a_; \
type2 const *b = b_; \
return nm##_cmp(a,b); \
} \
static type2 *OBJ_bsearch_##nm(type1 *key, type2 const *base, int num) \
{ \
return (type2 *)OBJ_bsearch_(key, base, num, sizeof(type2), \
nm##_cmp_BSEARCH_CMP_FN); \
} \
extern void dummy_prototype(void)

Definition at line 1058 of file objects.h.

#define IMPLEMENT_OBJ_BSEARCH_GLOBAL_CMP_FN (   type1,
  type2,
  nm 
)
Value:
static int nm##_cmp_BSEARCH_CMP_FN(const void *a_, const void *b_) \
{ \
type1 const *a = a_; \
type2 const *b = b_; \
return nm##_cmp(a,b); \
} \
type2 *OBJ_bsearch_##nm(type1 *key, type2 const *base, int num) \
{ \
return (type2 *)OBJ_bsearch_(key, base, num, sizeof(type2), \
nm##_cmp_BSEARCH_CMP_FN); \
} \
extern void dummy_prototype(void)

Definition at line 1072 of file objects.h.

#define OBJ_bsearch (   type1,
  key,
  type2,
  base,
  num,
  cmp 
)
Value:
((type2 *)OBJ_bsearch_(CHECKED_PTR_OF(type1,key),CHECKED_PTR_OF(type2,base), \
num,sizeof(type2), \
((void)CHECKED_PTR_OF(type1,cmp##_type_1), \
(void)CHECKED_PTR_OF(type2,cmp##_type_2), \
cmp##_BSEARCH_CMP_FN)))

Definition at line 1086 of file objects.h.

#define OBJ_bsearch_ex (   type1,
  key,
  type2,
  base,
  num,
  cmp,
  flags 
)
Value:
((type2 *)OBJ_bsearch_ex_(CHECKED_PTR_OF(type1,key),CHECKED_PTR_OF(type2,base), \
num,sizeof(type2), \
((void)CHECKED_PTR_OF(type1,cmp##_type_1), \
(void)type_2=CHECKED_PTR_OF(type2,cmp##_type_2), \
cmp##_BSEARCH_CMP_FN)),flags)

Definition at line 1093 of file objects.h.

#define OBJ_BSEARCH_FIRST_VALUE_ON_MATCH   0x02

Definition at line 972 of file objects.h.

#define OBJ_BSEARCH_VALUE_ON_NOMATCH   0x01

Definition at line 971 of file objects.h.

#define OBJ_create_and_add_object (   a,
  b,
  c 
)    OBJ_create(a,b,c)

Definition at line 987 of file objects.h.

#define OBJ_F_OBJ_ADD_OBJECT   105

Definition at line 1123 of file objects.h.

#define OBJ_F_OBJ_CREATE   100

Definition at line 1124 of file objects.h.

#define OBJ_F_OBJ_DUP   101

Definition at line 1125 of file objects.h.

#define OBJ_F_OBJ_NAME_NEW_INDEX   106

Definition at line 1126 of file objects.h.

#define OBJ_F_OBJ_NID2LN   102

Definition at line 1127 of file objects.h.

#define OBJ_F_OBJ_NID2OBJ   103

Definition at line 1128 of file objects.h.

#define OBJ_F_OBJ_NID2SN   104

Definition at line 1129 of file objects.h.

#define OBJ_NAME_ALIAS   0x8000

Definition at line 969 of file objects.h.

#define OBJ_NAME_TYPE_CIPHER_METH   0x02

Definition at line 964 of file objects.h.

#define OBJ_NAME_TYPE_COMP_METH   0x04

Definition at line 966 of file objects.h.

#define OBJ_NAME_TYPE_MD_METH   0x01

Definition at line 963 of file objects.h.

#define OBJ_NAME_TYPE_NUM   0x05

Definition at line 967 of file objects.h.

#define OBJ_NAME_TYPE_PKEY_METH   0x03

Definition at line 965 of file objects.h.

#define OBJ_NAME_TYPE_UNDEF   0x00

Definition at line 962 of file objects.h.

#define OBJ_R_MALLOC_FAILURE   100

Definition at line 1132 of file objects.h.

#define OBJ_R_UNKNOWN_NID   101

Definition at line 1133 of file objects.h.

#define USE_OBJ_MAC

Definition at line 62 of file objects.h.

Typedef Documentation

typedef struct obj_name_st OBJ_NAME

Function Documentation

void check_defer ( int  nid)
void ERR_load_OBJ_strings ( void  )

Definition at line 92 of file obj_err.c.

int OBJ_add_object ( const ASN1_OBJECT obj)

Definition at line 247 of file obj_dat.c.

int OBJ_add_sigid ( int  signid,
int  dig_id,
int  pkey_id 
)

Definition at line 154 of file obj_xref.c.

const void* OBJ_bsearch_ ( const void key,
const void base,
int  num,
int  size,
int(*)(const void *, const void *)  cmp 
)

Definition at line 678 of file obj_dat.c.

const void* OBJ_bsearch_ex_ ( const void key,
const void base,
int  num,
int  size,
int(*)(const void *, const void *)  cmp,
int  flags 
)

Definition at line 684 of file obj_dat.c.

void OBJ_cleanup ( void  )

Definition at line 222 of file obj_dat.c.

int OBJ_cmp ( const ASN1_OBJECT a,
const ASN1_OBJECT b 
)

Definition at line 122 of file obj_lib.c.

int OBJ_create ( const char *  oid,
const char *  sn,
const char *  ln 
)

Definition at line 783 of file obj_dat.c.

int OBJ_create_objects ( BIO in)

Definition at line 735 of file obj_dat.c.

ASN1_OBJECT* OBJ_dup ( const ASN1_OBJECT o)

Definition at line 65 of file obj_lib.c.

int OBJ_find_sigid_algs ( int  signid,
int *  pdig_nid,
int *  ppkey_nid 
)

Definition at line 91 of file obj_xref.c.

int OBJ_find_sigid_by_algs ( int *  psignid,
int  dig_nid,
int  pkey_nid 
)

Definition at line 120 of file obj_xref.c.

int OBJ_ln2nid ( const char *  s)

Definition at line 638 of file obj_dat.c.

int OBJ_NAME_add ( const char *  name,
int  type,
const char *  data 
)

Definition at line 185 of file o_names.c.

void OBJ_NAME_cleanup ( int  type)

Definition at line 351 of file o_names.c.

void OBJ_NAME_do_all ( int  type,
void(*)(const OBJ_NAME *, void *arg fn,
void arg 
)
void OBJ_NAME_do_all_sorted ( int  type,
void(*)(const OBJ_NAME *, void *arg fn,
void arg 
)

Definition at line 314 of file o_names.c.

const char* OBJ_NAME_get ( const char *  name,
int  type 
)

Definition at line 155 of file o_names.c.

int OBJ_NAME_init ( void  )
int OBJ_NAME_new_index ( unsigned long(*)(const char *)  hash_func,
int(*)(const char *, const char *)  cmp_func,
void(*)(const char *, int, const char *)  free_func 
)

Definition at line 62 of file o_names.c.

int OBJ_NAME_remove ( const char *  name,
int  type 
)

Definition at line 233 of file o_names.c.

int OBJ_new_nid ( int  num)

Definition at line 238 of file obj_dat.c.

const char* OBJ_nid2ln ( int  n)

Definition at line 353 of file obj_dat.c.

ASN1_OBJECT* OBJ_nid2obj ( int  n)

Definition at line 289 of file obj_dat.c.

const char* OBJ_nid2sn ( int  n)

Definition at line 321 of file obj_dat.c.

int OBJ_obj2nid ( const ASN1_OBJECT o)

Definition at line 398 of file obj_dat.c.

int OBJ_obj2txt ( char *  buf,
int  buf_len,
const ASN1_OBJECT a,
int  no_name 
)

Definition at line 466 of file obj_dat.c.

void OBJ_sigid_free ( void  )

Definition at line 192 of file obj_xref.c.

int OBJ_sn2nid ( const char *  s)

Definition at line 658 of file obj_dat.c.

int OBJ_txt2nid ( const char *  s)

Definition at line 628 of file obj_dat.c.

ASN1_OBJECT* OBJ_txt2obj ( const char *  s,
int  no_name 
)

Definition at line 427 of file obj_dat.c.

Variable Documentation

int obj_cleanup_defer