RSA BSAFE Micro Edition Suite

Streamlined security for mobile and embedded devices

Search  Print

r_cm_r.h

Go to the documentation of this file.
00001 /* $Id: r_cm_r.h,v 1.8 2005/04/05 02:23:19 jmckee Exp $ */
00002 /*
00003  * Copyright (C) 1998-2003 RSA Security Inc. All rights reserved.
00004  *
00005  * This work contains proprietary information of RSA Security.
00006  * Distribution is limited to authorized licensees of RSA
00007  * Security. Any unauthorized reproduction, distribution or
00008  * modification of this work is strictly prohibited.
00009  */
00010 
00018 #ifndef HEADER_COMMON_R_CM_R_H
00019 #define HEADER_COMMON_R_CM_R_H
00020 
00021 #ifdef  __cplusplus
00022 extern "C" {
00023 #endif
00024 
00025 #include "r_cm.h"
00026 
00027 #ifndef Rm_CM_DIRECT
00028 
00029 /*
00030  * @defgroup CM_METH_FUNCS Method Table Functions
00031  * @ingroup CM_ALL_FUNCS
00032  * This section details the functions that facilitate with cryptographic
00033  * message method tables.
00034  * @{
00035  */
00036 
00037 R_CM_METHOD *R_CM_get_default_pkcs7_method(void *impl_data);
00038 R_CM_METHOD *R_CM_get_default_verify_pkcs7_method(void *impl_data);
00039 R_CM_METHOD *R_CM_get_default_write_pkcs7_method(void *impl_data);
00040 R_CM_METHOD *R_CM_get_signed_data_pkcs7_method(void *impl_data);
00041 R_CM_METHOD *R_CM_get_signed_data_verify_pkcs7_method(void *impl_data);
00042 R_CM_METHOD *R_CM_get_enveloped_data_pkcs7_method(void *impl_data);
00043 R_CM_METHOD *R_CM_get_enveloped_data_open_pkcs7_method(void *impl_data);
00044 
00045 R_CM_METHOD *R_CM_get_default_smime_method(void *impl_data);
00046 R_CM_METHOD *R_CM_get_default_verify_smime_method(void *impl_data);
00047 R_CM_METHOD *R_CM_get_signed_data_smime_method(void *impl_data);
00048 R_CM_METHOD *R_CM_get_signed_data_verify_smime_method(void *impl_data);
00049 R_CM_METHOD *R_CM_get_enveloped_data_smime_method(void *impl_data);
00050 R_CM_METHOD *R_CM_get_enveloped_data_open_smime_method(void *impl_data);
00051 
00052 /*
00053  * @}
00054  */
00055 
00056 #else /* Rm_CM_DIRECT */
00057 
00058 #define R_CM_get_default_pkcs7_method                      NULL
00059 #define R_CM_get_default_verify_pkcs7_method               NULL
00060 #define R_CM_get_signed_data_pkcs7_method                  NULL
00061 #define R_CM_get_signed_data_verify_pkcs7_method           NULL
00062 #define R_CM_get_enveloped_data_pkcs7_method               NULL
00063 #define R_CM_get_enveloped_data_open_pkcs7_method          NULL
00064 
00065 #define R_CM_get_default_smime_method                      NULL
00066 #define R_CM_get_default_verify_smime_method               NULL
00067 #define R_CM_get_signed_data_smime_method                  NULL
00068 #define R_CM_get_signed_data_verify_smime_method           NULL
00069 #define R_CM_get_enveloped_data_smime_method               NULL
00070 #define R_CM_get_enveloped_data_open_smime_method          NULL
00071 
00072 #endif /* Rm_CM_DIRECT */
00073 
00074 /*
00075  * @defgroup CM_RL_FUNCS Resource List Functions
00076  * This section details the functions that define resource list data
00077  * specific to cryptographic messages.
00078  * @ingroup CM_ALL_FUNCS
00079  * @{
00080  */
00081 
00082 /* RESOURCE LIST specific functions. */
00083 R_RES_LIST *R_CM_get_verify_small_resource_list(void);
00084 
00085 /*
00086  * @}
00087  */
00088 
00102 #define R_CM_RES_PKCS7                                               \
00103     { R_RES_MOD_ID_CM, R_RES_IMPL_ID_DEF, R_CM_TYPE_DEFAULT,         \
00104       R_RES_FLAG_DEF, NULL, NULL,                                    \
00105       (void *(*)(void *))R_CM_get_default_pkcs7_method, NULL }
00106 
00114 #define R_CM_RES_PKCS7_VERIFY                                        \
00115     { R_RES_MOD_ID_CM, R_RES_IMPL_ID_DEF, R_CM_TYPE_DEFAULT_READ,    \
00116       R_RES_FLAG_DEF, NULL, NULL,                                    \
00117       (void *(*)(void *))R_CM_get_default_verify_pkcs7_method, NULL }
00118 
00126 #define R_CM_RES_PKCS7_WRITE                                         \
00127     { R_RES_MOD_ID_CM, R_RES_IMPL_ID_DEF, R_CM_TYPE_DEFAULT_WRITE,   \
00128       R_RES_FLAG_DEF, NULL, NULL,                                    \
00129       (void *(*)(void *))R_CM_get_default_write_pkcs7_method, NULL }
00130 
00137 #define R_CM_RES_PKCS7_SIGNED_DATA                                   \
00138     { R_RES_MOD_ID_CM, R_RES_IMPL_ID_DEF, R_CM_TYPE_SIGNED_DATA,     \
00139       R_RES_FLAG_DEF, NULL, NULL,                                    \
00140       (void *(*)(void *))R_CM_get_signed_data_pkcs7_method, NULL }
00141 
00148 #define R_CM_RES_PKCS7_SIGNED_DATA_VERIFY                            \
00149     { R_RES_MOD_ID_CM, R_RES_IMPL_ID_DEF,                            \
00150       R_CM_TYPE_SIGNED_DATA_READ, R_RES_FLAG_DEF, NULL, NULL,        \
00151       (void *(*)(void *))R_CM_get_signed_data_verify_pkcs7_method, NULL }
00152 
00159 #define R_CM_RES_PKCS7_ENVELOPED_DATA                                \
00160     { R_RES_MOD_ID_CM, R_RES_IMPL_ID_DEF, R_CM_TYPE_ENVELOPED_DATA,  \
00161       R_RES_FLAG_DEF, NULL, NULL,                                    \
00162       (void *(*)(void *))R_CM_get_enveloped_data_pkcs7_method, NULL }
00163 
00171 #define R_CM_RES_PKCS7_ENVELOPED_DATA_OPEN                           \
00172     { R_RES_MOD_ID_CM, R_RES_IMPL_ID_DEF,                            \
00173       R_CM_TYPE_ENVELOPED_DATA_READ, R_RES_FLAG_DEF, NULL, NULL,     \
00174       (void *(*)(void *))R_CM_get_enveloped_data_open_pkcs7_method, NULL }
00175 
00180 #define R_CM_RES_SMIME                                               \
00181     { R_RES_MOD_ID_CM, R_RES_IMPL_ID_DEF,                            \
00182       (R_CM_TYPE_DEFAULT | R_CM_TYPE_SMIME), R_RES_FLAG_DEF, NULL,   \
00183       NULL, (void *(*)(void *))R_CM_get_default_smime_method,        \
00184       NULL },                                                        \
00185     R_CM_RES_PKCS7
00186 
00194 #define R_CM_RES_SMIME_VERIFY                                        \
00195     { R_RES_MOD_ID_CM, R_RES_IMPL_ID_DEF,                            \
00196       (R_CM_TYPE_DEFAULT_READ | R_CM_TYPE_SMIME), R_RES_FLAG_DEF,    \
00197       NULL, NULL,                                                    \
00198       (void *(*)(void *))R_CM_get_default_verify_smime_method,       \
00199       NULL },                                                        \
00200     R_CM_RES_PKCS7_VERIFY
00201 
00208 #define R_CM_RES_SMIME_SIGNED_DATA                                   \
00209     { R_RES_MOD_ID_CM, R_RES_IMPL_ID_DEF,                            \
00210       (R_CM_TYPE_SIGNED_DATA | R_CM_TYPE_SMIME), R_RES_FLAG_DEF,     \
00211       NULL, NULL,                                                    \
00212       (void *(*)(void *))R_CM_get_signed_data_smime_method, NULL },  \
00213     R_CM_RES_PKCS7_SIGNED_DATA
00214 
00221 #define R_CM_RES_SMIME_SIGNED_DATA_VERIFY                            \
00222     { R_RES_MOD_ID_CM, R_RES_IMPL_ID_DEF,                            \
00223       (R_CM_TYPE_SIGNED_DATA_READ | R_CM_TYPE_SMIME),                \
00224       R_RES_FLAG_DEF, NULL, NULL,                                    \
00225       (void *(*)(void *))R_CM_get_signed_data_verify_smime_method,   \
00226       NULL },                                                        \
00227     R_CM_RES_PKCS7_SIGNED_DATA_VERIFY
00228 
00235 #define R_CM_RES_SMIME_ENVELOPED_DATA                                \
00236     { R_RES_MOD_ID_CM, R_RES_IMPL_ID_DEF,                            \
00237       (R_CM_TYPE_ENVELOPED_DATA | R_CM_TYPE_SMIME), R_RES_FLAG_DEF,  \
00238       NULL, NULL,                                                    \
00239       (void *(*)(void *))R_CM_get_enveloped_data_smime_method,       \
00240       NULL },                                                        \
00241      R_CM_RES_PKCS7_ENVELOPED_DATA
00242 
00249 #define R_CM_RES_SMIME_ENVELOPED_DATA_OPEN                           \
00250     { R_RES_MOD_ID_CM, R_RES_IMPL_ID_DEF,                            \
00251       (R_CM_TYPE_ENVELOPED_DATA_READ | R_CM_TYPE_SMIME),             \
00252       R_RES_FLAG_DEF, NULL, NULL,                                    \
00253       (void *(*)(void *))R_CM_get_enveloped_data_open_smime_method,  \
00254       NULL },                                                        \
00255     R_CM_RES_PKCS7_ENVELOPED_DATA_OPEN
00256 
00261 #ifdef  __cplusplus
00262 }
00263 #endif
00264 
00265 #endif /* HEADER_COMMON_R_CM_R_H */
00266 

Copyright (c) 1999-2005 RSA Security Inc. All rights reserved. 072-001001-2100-001-000 - 2.1