feat: initial set and sockets

This commit is contained in:
2025-09-12 03:17:08 +02:00
parent 56fa31d087
commit a699745785
7 changed files with 291 additions and 290 deletions

View File

@@ -1,39 +1,37 @@
#include "mysocket.h"
#include <winsock2.h>
int sock_platform_init() {
#ifdef _WIN32
WSADATA wsaData;
if (WSAStartup(MAKEWORD(2, 2), &wsaData) != 0) {
return -1;
}
if (LOBYTE(wsaData.wVersion) != 2 || HIBYTE(wsaData.wVersion) != 2) {
WSACleanup();
return -1;
}
#endif
return 0;
}
int sock_close(int socket) {
int ret = 0;
#ifdef _WIN32
ret = closesocket(socket);
#else
ret = close(socket);
#endif
return ret;
}
int sock_platform_shutdown() {
#ifdef _WIN32
WSACleanup();
#endif
return 0;
}
#include "mysocket.h"
int sock_platform_init() {
#ifdef _WIN32
WSADATA wsaData;
if (WSAStartup(MAKEWORD(2, 2), &wsaData) != 0) {
return -1;
}
if (LOBYTE(wsaData.wVersion) != 2 || HIBYTE(wsaData.wVersion) != 2) {
WSACleanup();
return -1;
}
#endif
return 0;
}
int sock_close(int socket) {
int ret = 0;
#ifdef _WIN32
ret = closesocket(socket);
#else
ret = close(socket);
#endif
return ret;
}
int sock_platform_shutdown() {
#ifdef _WIN32
WSACleanup();
#endif
return 0;
}

View File

@@ -1,27 +1,30 @@
#ifndef MYCLIB_SOCKET_H
#define MYCLIB_SOCKET_H
#ifdef _WIN32
/* Windows */
#include <winsock2.h>
#include <ws2tcpip.h>
#else
/* Unix */
#include <arpa/inet.h>
#include <netdb.h>
#include <netinet/in.h>
#include <sys/socket.h>
#include <sys/types.h>
#endif
/* Run this before everything */
int sock_platform_init();
/* Use this to close a socket */
int sock_close(int socket);
/* Use at exit */
int sock_platform_shutdown();
#endif
#ifndef MYCLIB_SOCKET_H
#define MYCLIB_SOCKET_H
#ifdef _WIN32
/* Windows */
#define _WIN32_WINNT 0x0600
#include <winsock2.h>
#include <ws2tcpip.h>
#else
/* Unix */
#define __USE_XOPEN2K
#include <arpa/inet.h>
#include <netdb.h>
#include <netinet/in.h>
#include <sys/socket.h>
#include <sys/types.h>
#include <unistd.h>
#endif
/* Run this before everything */
int sock_platform_init();
/* Use this to close a socket */
int sock_close(int socket);
/* Use at exit */
int sock_platform_shutdown();
#endif