#define APPLINK_STDIN 1
#define APPLINK_STDOUT 2
#define APPLINK_STDERR 3
#define APPLINK_FPRINTF 4
#define APPLINK_FGETS 5
#define APPLINK_FREAD 6
#define APPLINK_FWRITE 7
#define APPLINK_FSETMOD 8
#define APPLINK_FEOF 9
#define APPLINK_FCLOSE 10 /* should not be used */
#define APPLINK_FOPEN 11 /* solely for completeness */
#define APPLINK_FSEEK 12
#define APPLINK_FTELL 13
#define APPLINK_FFLUSH 14
#define APPLINK_FERROR 15
#define APPLINK_CLEARERR 16
#define APPLINK_FILENO 17 /* to be used with below */
#define APPLINK_OPEN 18 /* formally can't be used, as flags can vary */
#define APPLINK_READ 19
#define APPLINK_WRITE 20
#define APPLINK_LSEEK 21
#define APPLINK_CLOSE 22
#define APPLINK_MAX 22 /* always same as last macro */
#ifndef APPMACROS_ONLY
# include <stdio.h>
# include <io.h>
# include <fcntl.h>
static void *app_stdin(void)
{
return stdin;
}
static void *app_stdout(void)
{
return stdout;
}
static void *app_stderr(void)
{
return stderr;
}
static int app_feof(FILE *fp)
{
return feof(fp);
}
static int app_ferror(FILE *fp)
{
return ferror(fp);
}
static void app_clearerr(FILE *fp)
{
clearerr(fp);
}
static int app_fileno(FILE *fp)
{
return _fileno(fp);
}
static int app_fsetmod(FILE *fp, char mod)
{
return _setmode(_fileno(fp), mod == 'b' ? _O_BINARY : _O_TEXT);
}
#ifdef __cplusplus
extern "C" {
#endif
__declspec(dllexport)
void **
# if defined(__BORLANDC__)
/*
* __stdcall appears to be the only way to get the name
* decoration right with Borland C. Otherwise it works
* purely incidentally, as we pass no parameters.
*/
__stdcall
# else
__cdecl
# endif
OPENSSL_Applink(void)
{
static int once = 1;
static void *OPENSSL_ApplinkTable[APPLINK_MAX + 1] =
{ (void *)APPLINK_MAX };
if (once) {
OPENSSL_ApplinkTable[APPLINK_STDIN] = app_stdin;
OPENSSL_ApplinkTable[APPLINK_STDOUT] = app_stdout;
OPENSSL_ApplinkTable[APPLINK_STDERR] = app_stderr;
OPENSSL_ApplinkTable[APPLINK_FPRINTF] = fprintf;
OPENSSL_ApplinkTable[APPLINK_FGETS] = fgets;
OPENSSL_ApplinkTable[APPLINK_FREAD] = fread;
OPENSSL_ApplinkTable[APPLINK_FWRITE] = fwrite;
OPENSSL_ApplinkTable[APPLINK_FSETMOD] = app_fsetmod;
OPENSSL_ApplinkTable[APPLINK_FEOF] = app_feof;
OPENSSL_ApplinkTable[APPLINK_FCLOSE] = fclose;
OPENSSL_ApplinkTable[APPLINK_FOPEN] = fopen;
OPENSSL_ApplinkTable[APPLINK_FSEEK] = fseek;
OPENSSL_ApplinkTable[APPLINK_FTELL] = ftell;
OPENSSL_ApplinkTable[APPLINK_FFLUSH] = fflush;
OPENSSL_ApplinkTable[APPLINK_FERROR] = app_ferror;
OPENSSL_ApplinkTable[APPLINK_CLEARERR] = app_clearerr;
OPENSSL_ApplinkTable[APPLINK_FILENO] = app_fileno;
OPENSSL_ApplinkTable[APPLINK_OPEN] = _open;
OPENSSL_ApplinkTable[APPLINK_READ] = _read;
OPENSSL_ApplinkTable[APPLINK_WRITE] = _write;
OPENSSL_ApplinkTable[APPLINK_LSEEK] = _lseek;
OPENSSL_ApplinkTable[APPLINK_CLOSE] = _close;
once = 0;
}
return OPENSSL_ApplinkTable;
}
#ifdef __cplusplus
}
#endif
#endif
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
现在用到openssl的越来多,为方便大家,这里给大家共享已编译好直接可以使用的文件: openssl-1.0.2s(32位), openssl-1.0.2s(64位), 内包含libeay32.dll, libeay32.lib libssl32.dll, libssl32.lib 以及 openssl头文件
资源推荐
资源详情
资源评论
收起资源包目录
windows下编译好的openssl-1.0.2s(32位&64;位双版本)含(dll、lib和头文件include) (160个子文件)
applink.c 3KB
applink.c 3KB
libeay32.dll 2MB
libeay32.dll 1.16MB
ssleay32.dll 346KB
ssleay32.dll 271KB
safestack.h 198KB
safestack.h 198KB
obj_mac.h 172KB
obj_mac.h 172KB
ssl.h 146KB
ssl.h 146KB
evp.h 72KB
evp.h 72KB
asn1.h 62KB
asn1.h 62KB
ec.h 55KB
ec.h 55KB
x509.h 52KB
x509.h 52KB
objects.h 46KB
objects.h 46KB
engine.h 44KB
engine.h 44KB
bn.h 43KB
bn.h 43KB
x509v3.h 39KB
x509v3.h 39KB
tls1.h 38KB
tls1.h 38KB
bio.h 38KB
bio.h 38KB
ts.h 34KB
ts.h 34KB
asn1t.h 34KB
asn1t.h 34KB
ssl3.h 33KB
ssl3.h 33KB
rsa.h 29KB
rsa.h 29KB
x509_vfy.h 29KB
x509_vfy.h 29KB
cms.h 28KB
cms.h 28KB
symhacks.h 27KB
symhacks.h 27KB
crypto.h 27KB
crypto.h 27KB
ocsp.h 27KB
ocsp.h 27KB
pem.h 25KB
pem.h 25KB
asn1_mac.h 24KB
asn1_mac.h 24KB
des_old.h 21KB
des_old.h 21KB
pkcs7.h 20KB
pkcs7.h 20KB
dso.h 20KB
dso.h 20KB
ui.h 18KB
ui.h 18KB
err.h 16KB
err.h 16KB
dh.h 16KB
dh.h 16KB
pkcs12.h 15KB
pkcs12.h 15KB
ecdsa.h 14KB
ecdsa.h 14KB
dsa.h 14KB
dsa.h 14KB
ssl2.h 12KB
ssl2.h 12KB
des.h 12KB
des.h 12KB
conf.h 11KB
conf.h 11KB
e_os2.h 11KB
e_os2.h 11KB
lhash.h 9KB
lhash.h 9KB
dtls1.h 9KB
dtls1.h 9KB
modes.h 8KB
modes.h 8KB
krb5_asn.h 8KB
krb5_asn.h 8KB
sha.h 8KB
sha.h 8KB
ossl_typ.h 8KB
ossl_typ.h 8KB
opensslconf.h 7KB
opensslconf.h 7KB
kssl.h 7KB
kssl.h 7KB
srtp.h 6KB
srtp.h 6KB
aes.h 6KB
aes.h 6KB
共 160 条
- 1
- 2
资源评论
liaosh00
- 粉丝: 4
- 资源: 4
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 计算机毕业设计:python+爬虫+cnki网站爬
- nyakumi-lewd-snack-3-4k_720p.7z.002
- 现在微信小程序能用的mqtt.min.js
- 基于MPC的非线性摆锤系统轨迹跟踪控制matlab仿真,包括程序中文注释,仿真操作步骤
- shell脚本入门-变量、字符串, Shell脚本中变量与字符串的基础操作教程
- 基于MATLAB的ITS信道模型数值模拟仿真,包括程序中文注释,仿真操作步骤
- 基于Java、JavaScript、CSS的电子产品商城设计与实现源码
- 基于Vue 2的zjc项目设计源码,适用于赶项目需求
- 基于跨语言统一的C++头文件设计源码开发方案
- 基于MindSpore 1.3的T-GCNTemporal Graph Convolutional Network设计源码
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功