evt-tls 项目教程

evt-tls 项目教程

evt-tlsThe asynchronous TLS abstraction for OpenSSL项目地址:https://gitcode.com/gh_mirrors/ev/evt-tls

1. 项目的目录结构及介绍

evt-tls/
├── src/
│   └── evt_tls.c
├── include/
│   └── evt_tls.h
├── sample/
│   └── libuv-tls/
│       ├── main.c
│       └── Makefile
├── README.md
├── LICENSE
└── .gitignore
  • src/: 包含项目的主要源代码文件 evt_tls.c
  • include/: 包含项目的头文件 evt_tls.h
  • sample/: 包含示例代码,特别是与 libuv 集成的示例 libuv-tls
  • README.md: 项目的介绍和使用说明。
  • LICENSE: 项目的开源许可证。
  • .gitignore: 指定 Git 版本控制系统忽略的文件和目录。

2. 项目的启动文件介绍

项目的启动文件位于 sample/libuv-tls/main.c。以下是该文件的主要内容和功能介绍:

#include "uv_tls.h"

void on_connect_cb(uv_stream_t *server, int status) {
    // 处理连接回调
}

int main() {
    uv_loop_t *loop = uv_default_loop();
    int port = 8000;
    evt_ctx_t ctx;
    struct sockaddr_in bind_local;

    evt_ctx_init_ex(&ctx, "server-cert.pem", "server-key.pem");
    evt_ctx_set_nio(&ctx, NULL, uv_tls_writer);

    uv_tcp_t listener_local;
    uv_tcp_init(loop, &listener_local);
    listener_local.data = &ctx;

    uv_ip4_addr("127.0.0.1", port, &bind_local);
    uv_tcp_bind(&listener_local, (struct sockaddr*)&bind_local, 0);
    uv_listen((uv_stream_t*)&listener_local, 128, on_connect_cb);

    printf("Listening on %d\n", port);
    uv_run(loop, UV_RUN_DEFAULT);

    evt_ctx_free(&ctx);
    return 0;
}
  • main(): 主函数,初始化事件循环、TLS 上下文、监听器,并开始监听指定端口。
  • on_connect_cb(): 连接回调函数,处理新连接。

3. 项目的配置文件介绍

项目的主要配置在 main.c 中通过代码进行设置,包括证书和密钥文件的路径、监听地址和端口等。以下是配置相关的代码片段:

evt_ctx_init_ex(&ctx, "server-cert.pem", "server-key.pem");
evt_ctx_set_nio(&ctx, NULL, uv_tls_writer);

uv_ip4_addr("127.0.0.1", port, &bind_local);
  • evt_ctx_init_ex(): 初始化 TLS 上下文,指定服务器证书和密钥文件。
  • evt_ctx_set_nio(): 设置网络 I/O 处理函数。
  • uv_ip4_addr(): 设置监听地址和端口。

以上是 evt-tls 项目的基本教程,涵盖了项目的目录结构、启动文件和配置文件的介绍。希望这些内容能帮助你更好地理解和使用该项目。

evt-tlsThe asynchronous TLS abstraction for OpenSSL项目地址:https://gitcode.com/gh_mirrors/ev/evt-tls

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

任翊昆Mary

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值