refactor(main): 使用跨平台 API 替代 POSIX 依赖

- 移除 <signal.h> 头文件
- 新增 cocoon_socket_init() / cocoon_socket_cleanup() 调用
- 信号处理改用 cocoon_signal_setup() 统一封装
- Windows 下自动 WSAStartup/WSACleanup
This commit is contained in:
xfy 2026-06-05 00:50:28 +08:00
parent adeeda1fc1
commit 78507084c4

14
main.c
View File

@ -9,10 +9,10 @@
#include "cocoon.h"
#include "server.h"
#include "config.h"
#include "platform.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <signal.h>
/**
* g_ctx -
@ -184,9 +184,14 @@ int main(int argc, char *argv[]) {
return 1;
}
/* 初始化 socket 子系统Windows 下 WSAStartup */
if (cocoon_socket_init() != 0) {
fprintf(stderr, "[Cocoon] socket 子系统初始化失败\n");
return 1;
}
/* 注册信号处理 */
signal(SIGINT, signal_handler);
signal(SIGTERM, signal_handler);
cocoon_signal_setup(signal_handler);
/* 设置日志级别 */
log_set_level(config.log_level);
@ -205,6 +210,9 @@ int main(int argc, char *argv[]) {
server_destroy(g_ctx);
g_ctx = NULL;
/* 释放 socket 子系统Windows 下 WSACleanup */
cocoon_socket_cleanup();
/* 释放配置文件分配的 root_dir */
if (config.root_dir) {
free((void *)config.root_dir);