~twpol/dcplusplus/trunk

« back to all changes in this revision

Viewing changes to openssl/include/openssl/engine.h

  • Committer: James Ross
  • Date: 2010-07-05 00:03:18 UTC
  • mfrom: (1524.1.650 dcplusplus)
  • Revision ID: silver@warwickcompsoc.co.uk-20100705000318-awwqm8ocpp5m47yz
Merged to trunk.

Show diffs side-by-side

added added

removed removed

Lines of Context:
88
88
#include <openssl/ecdsa.h>
89
89
#endif
90
90
#include <openssl/rand.h>
 
91
#include <openssl/store.h>
91
92
#include <openssl/ui.h>
92
93
#include <openssl/err.h>
93
94
#endif
94
95
 
 
96
#include <openssl/x509.h>
 
97
 
95
98
#include <openssl/ossl_typ.h>
96
99
#include <openssl/symhacks.h>
97
100
 
98
 
#include <openssl/x509.h>
99
 
 
100
101
#ifdef  __cplusplus
101
102
extern "C" {
102
103
#endif
112
113
#define ENGINE_METHOD_CIPHERS           (unsigned int)0x0040
113
114
#define ENGINE_METHOD_DIGESTS           (unsigned int)0x0080
114
115
#define ENGINE_METHOD_STORE             (unsigned int)0x0100
115
 
#define ENGINE_METHOD_PKEY_METHS        (unsigned int)0x0200
116
 
#define ENGINE_METHOD_PKEY_ASN1_METHS   (unsigned int)0x0400
117
116
/* Obvious all-or-nothing cases. */
118
117
#define ENGINE_METHOD_ALL               (unsigned int)0xFFFF
119
118
#define ENGINE_METHOD_NONE              (unsigned int)0x0000
298
297
 * parameter is non-NULL it is set to the size of the returned array. */
299
298
typedef int (*ENGINE_CIPHERS_PTR)(ENGINE *, const EVP_CIPHER **, const int **, int);
300
299
typedef int (*ENGINE_DIGESTS_PTR)(ENGINE *, const EVP_MD **, const int **, int);
301
 
typedef int (*ENGINE_PKEY_METHS_PTR)(ENGINE *, EVP_PKEY_METHOD **, const int **, int);
302
 
typedef int (*ENGINE_PKEY_ASN1_METHS_PTR)(ENGINE *, EVP_PKEY_ASN1_METHOD **, const int **, int);
 
300
 
303
301
/* STRUCTURE functions ... all of these functions deal with pointers to ENGINE
304
302
 * structures where the pointers have a "structural reference". This means that
305
303
 * their reference is to allowed access to the structure but it does not imply
331
329
void ENGINE_load_atalla(void);
332
330
void ENGINE_load_chil(void);
333
331
void ENGINE_load_cswift(void);
 
332
#ifndef OPENSSL_NO_GMP
 
333
void ENGINE_load_gmp(void);
 
334
#endif
334
335
void ENGINE_load_nuron(void);
335
336
void ENGINE_load_sureware(void);
336
337
void ENGINE_load_ubsec(void);
 
338
#endif
 
339
void ENGINE_load_cryptodev(void);
337
340
void ENGINE_load_padlock(void);
 
341
void ENGINE_load_builtin_engines(void);
 
342
#ifdef OPENSSL_SYS_WIN32
338
343
#ifndef OPENSSL_NO_CAPIENG
339
344
void ENGINE_load_capi(void);
340
345
#endif
341
 
#ifndef OPENSSL_NO_GMP
342
 
void ENGINE_load_gmp(void);
343
 
#endif
344
 
#ifndef OPENSSL_NO_GOST
345
 
void ENGINE_load_gost(void);
346
 
#endif
347
 
#endif
348
 
void ENGINE_load_cryptodev(void);
349
 
void ENGINE_load_builtin_engines(void);
 
346
#endif
350
347
 
351
348
/* Get and set global flags (ENGINE_TABLE_FLAG_***) for the implementation
352
349
 * "registry" handling. */
397
394
void ENGINE_unregister_digests(ENGINE *e);
398
395
void ENGINE_register_all_digests(void);
399
396
 
400
 
int ENGINE_register_pkey_meths(ENGINE *e);
401
 
void ENGINE_unregister_pkey_meths(ENGINE *e);
402
 
void ENGINE_register_all_pkey_meths(void);
403
 
 
404
 
int ENGINE_register_pkey_asn1_meths(ENGINE *e);
405
 
void ENGINE_unregister_pkey_asn1_meths(ENGINE *e);
406
 
void ENGINE_register_all_pkey_asn1_meths(void);
407
 
 
408
397
/* These functions register all support from the above categories. Note, use of
409
398
 * these functions can result in static linkage of code your application may not
410
399
 * need. If you only need a subset of functionality, consider using more
484
473
                                ENGINE_SSL_CLIENT_CERT_PTR loadssl_f);
485
474
int ENGINE_set_ciphers(ENGINE *e, ENGINE_CIPHERS_PTR f);
486
475
int ENGINE_set_digests(ENGINE *e, ENGINE_DIGESTS_PTR f);
487
 
int ENGINE_set_pkey_meths(ENGINE *e, ENGINE_PKEY_METHS_PTR f);
488
 
int ENGINE_set_pkey_asn1_meths(ENGINE *e, ENGINE_PKEY_ASN1_METHS_PTR f);
489
476
int ENGINE_set_flags(ENGINE *e, int flags);
490
477
int ENGINE_set_cmd_defns(ENGINE *e, const ENGINE_CMD_DEFN *defns);
491
478
/* These functions allow control over any per-structure ENGINE data. */
522
509
ENGINE_SSL_CLIENT_CERT_PTR ENGINE_get_ssl_client_cert_function(const ENGINE *e);
523
510
ENGINE_CIPHERS_PTR ENGINE_get_ciphers(const ENGINE *e);
524
511
ENGINE_DIGESTS_PTR ENGINE_get_digests(const ENGINE *e);
525
 
ENGINE_PKEY_METHS_PTR ENGINE_get_pkey_meths(const ENGINE *e);
526
 
ENGINE_PKEY_ASN1_METHS_PTR ENGINE_get_pkey_asn1_meths(const ENGINE *e);
527
512
const EVP_CIPHER *ENGINE_get_cipher(ENGINE *e, int nid);
528
513
const EVP_MD *ENGINE_get_digest(ENGINE *e, int nid);
529
 
const EVP_PKEY_METHOD *ENGINE_get_pkey_meth(ENGINE *e, int nid);
530
 
const EVP_PKEY_ASN1_METHOD *ENGINE_get_pkey_asn1_meth(ENGINE *e, int nid);
531
 
const EVP_PKEY_ASN1_METHOD *ENGINE_get_pkey_asn1_meth_str(ENGINE *e,
532
 
                                        const char *str, int len);
533
 
const EVP_PKEY_ASN1_METHOD *ENGINE_pkey_asn1_find_str(ENGINE **pe,
534
 
                                        const char *str, int len);
535
514
const ENGINE_CMD_DEFN *ENGINE_get_cmd_defns(const ENGINE *e);
536
515
int ENGINE_get_flags(const ENGINE *e);
537
516
 
583
562
 * ciphering or digesting corresponding to "nid". */
584
563
ENGINE *ENGINE_get_cipher_engine(int nid);
585
564
ENGINE *ENGINE_get_digest_engine(int nid);
586
 
ENGINE *ENGINE_get_pkey_meth_engine(int nid);
587
 
ENGINE *ENGINE_get_pkey_asn1_meth_engine(int nid);
588
565
 
589
566
/* This sets a new default ENGINE structure for performing RSA
590
567
 * operations. If the result is non-zero (success) then the ENGINE
600
577
int ENGINE_set_default_RAND(ENGINE *e);
601
578
int ENGINE_set_default_ciphers(ENGINE *e);
602
579
int ENGINE_set_default_digests(ENGINE *e);
603
 
int ENGINE_set_default_pkey_meths(ENGINE *e);
604
 
int ENGINE_set_default_pkey_asn1_meths(ENGINE *e);
605
580
 
606
581
/* The combination "set" - the flags are bitwise "OR"d from the
607
582
 * ENGINE_METHOD_*** defines above. As with the "ENGINE_register_complete()"
759
734
#define ENGINE_F_ENGINE_GET_DEFAULT_TYPE                 177
760
735
#define ENGINE_F_ENGINE_GET_DIGEST                       186
761
736
#define ENGINE_F_ENGINE_GET_NEXT                         115
762
 
#define ENGINE_F_ENGINE_GET_PKEY_ASN1_METH               193
763
 
#define ENGINE_F_ENGINE_GET_PKEY_METH                    192
764
737
#define ENGINE_F_ENGINE_GET_PREV                         116
765
738
#define ENGINE_F_ENGINE_INIT                             119
766
739
#define ENGINE_F_ENGINE_LIST_ADD                         120
767
740
#define ENGINE_F_ENGINE_LIST_REMOVE                      121
768
741
#define ENGINE_F_ENGINE_LOAD_PRIVATE_KEY                 150
769
742
#define ENGINE_F_ENGINE_LOAD_PUBLIC_KEY                  151
770
 
#define ENGINE_F_ENGINE_LOAD_SSL_CLIENT_CERT             194
 
743
#define ENGINE_F_ENGINE_LOAD_SSL_CLIENT_CERT             192
771
744
#define ENGINE_F_ENGINE_NEW                              122
772
745
#define ENGINE_F_ENGINE_REMOVE                           123
773
746
#define ENGINE_F_ENGINE_SET_DEFAULT_STRING               189
796
769
#define ENGINE_R_DSO_FAILURE                             104
797
770
#define ENGINE_R_DSO_NOT_FOUND                           132
798
771
#define ENGINE_R_ENGINES_SECTION_ERROR                   148
 
772
#define ENGINE_R_ENGINE_CONFIGURATION_ERROR              101
799
773
#define ENGINE_R_ENGINE_IS_NOT_IN_LIST                   105
800
774
#define ENGINE_R_ENGINE_SECTION_ERROR                    149
801
775
#define ENGINE_R_FAILED_LOADING_PRIVATE_KEY              128
822
796
#define ENGINE_R_RSA_NOT_IMPLEMENTED                     141
823
797
#define ENGINE_R_UNIMPLEMENTED_CIPHER                    146
824
798
#define ENGINE_R_UNIMPLEMENTED_DIGEST                    147
825
 
#define ENGINE_R_UNIMPLEMENTED_PUBLIC_KEY_METHOD         101
826
799
#define ENGINE_R_VERSION_INCOMPATIBILITY                 145
827
800
 
828
801
#ifdef  __cplusplus