RSA BSAFE Micro Edition Suite

Streamlined security for mobile and embedded devices

Search  Print

r_lib_r.h

Go to the documentation of this file.
00001 /* $Id: r_lib_r.h,v 1.7 2004/09/27 07:13:59 sparki 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  */
00016 #ifndef HEADER_COMMON_R_LIB_R_H
00017 #define HEADER_COMMON_R_LIB_R_H
00018 
00019 #ifdef  __cplusplus
00020 extern "C" {
00021 #endif
00022 
00023 #include "r_lib.h"
00024 
00025 typedef int R_CDECL R_LIB_CTX_FUNC_T(R_LIB_CTX *ctx, R_RES_FLAG flag,
00026     R_LIB_CTX **new_ctx);
00027 
00028 R_STRTBL * R_CDECL R_LIB_CTX_com_err_str_table(void *imp_data);
00029 
00030 int R_CDECL R_LIB_CTX_lib_debug_data_start(R_RES_LIST *res_list,
00031     R_RES_ITEM *item, void **imp_data);
00032 int R_CDECL R_LIB_CTX_lib_feature_start(R_RES_LIST *res_list, R_RES_ITEM *item,
00033     void **imp_data);
00034 
00035 R_LIB_CTX_FUNC_T * R_CDECL R_LIB_CTX_get_dup_func(void *imp_data);
00036 
00037 #ifndef Rm_LIB_CTX_DIRECT
00038 
00039 R_LIB_METHOD * R_CDECL R_LIB_CTX_get_default_method(void *imp_data);
00040 R_LIB_METHOD * R_CDECL R_LIB_CTX_get_small_method(void *imp_data);
00041 R_LIB_METHOD * R_CDECL R_LIB_CTX_get_tiny_method(void *imp_data);
00042 
00043 R_LIB_METHOD * R_CDECL R_LIB_CTX_get_default_nl_method(void *imp_data);
00044 R_LIB_METHOD * R_CDECL R_LIB_CTX_get_small_nl_method(void *imp_data);
00045 
00046 #else /* Rm_LIB_CTX_DIRECT */
00047 
00048 #define R_LIB_CTX_get_default_method       NULL
00049 #define R_LIB_CTX_get_small_method         NULL
00050 #define R_LIB_CTX_get_tiny_method          NULL
00051 
00052 #define R_LIB_CTX_get_default_nl_method    NULL
00053 #define R_LIB_CTX_get_small_nl_method      NULL
00054 
00055 #endif /* Rm_LIB_CTX_DIRECT */
00056 
00072 #define R_LIB_RES_TINY                                               \
00073     { R_RES_MOD_ID_LIBRARY, R_RES_IMPL_ID_DEF, R_RES_SUB_ID_DEF,     \
00074       R_RES_FLAG_DEF, NULL, NULL,                                    \
00075       (void *(*)(void *))R_LIB_CTX_get_tiny_method, NULL }
00076 
00084 #define R_LIB_RES_SMALL                                              \
00085     { R_RES_MOD_ID_LIBRARY, R_RES_IMPL_ID_DEF, R_RES_SUB_ID_DEF,     \
00086       R_RES_FLAG_DEF, NULL, NULL,                                    \
00087       (void *(*)(void *))R_LIB_CTX_get_small_method, NULL }
00088 
00093 #define R_LIB_RES_DEFAULT                                            \
00094     { R_RES_MOD_ID_LIBRARY, R_RES_IMPL_ID_DEF, R_RES_SUB_ID_DEF,     \
00095       R_RES_FLAG_DEF, NULL, NULL,                                    \
00096       (void *(*)(void *))R_LIB_CTX_get_default_method, NULL }
00097 
00105 #define R_LIB_RES_SMALL_NOT_LOCKED                                   \
00106     { R_RES_MOD_ID_LIBRARY, R_RES_IMPL_ID_DEF, R_RES_SUB_ID_DEF,     \
00107       R_RES_FLAG_DEF, NULL, NULL,                                    \
00108       (void *(*)(void *))R_LIB_CTX_get_small_nl_method, NULL }
00109 
00114 #define R_LIB_RES_DEFAULT_NOT_LOCKED                                 \
00115     { R_RES_MOD_ID_LIBRARY, R_RES_IMPL_ID_DEF, R_RES_SUB_ID_DEF,     \
00116       R_RES_FLAG_DEF, NULL, NULL,                                    \
00117       (void *(*)(void *))R_LIB_CTX_get_default_nl_method, NULL }
00118 
00125 #define R_LIB_RES_ERROR_STRINGS                                            \
00126     { R_RES_MOD_ID_LIBRARY, R_RES_IMPL_ID_DEF, R_RES_SUB_ID_ERROR_STRINGS, \
00127       R_RES_FLAG_DEF, NULL, NULL, NULL,                                    \
00128       (void *(*)(void *))R_LIB_CTX_com_err_str_table }
00129 
00133 #define R_LIB_RES_DUP                                                     \
00134     { R_RES_MOD_ID_LIBRARY, R_RES_IMPL_ID_DUP_FUNC, R_RES_SUB_ID_DEF,     \
00135       R_RES_FLAG_DEF, NULL, NULL, NULL,                                   \
00136       (void *(*)(void *))R_LIB_CTX_get_dup_func }
00137 
00142 #ifdef  __cplusplus
00143 }
00144 #endif
00145 
00146 #endif /* HEADER_COMMON_R_LIB_R_H */
00147 

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