Files
86Box/src/include/86box/plat_netsocket.h

24 lines
828 B
C
Raw Normal View History

2024-03-11 16:35:57 +06:00
#ifndef _WIN32
# define SOCKET int
2024-03-11 16:35:57 +06:00
#else
# include <winsock2.h>
# include <ws2tcpip.h>
2024-03-11 16:35:57 +06:00
#endif
enum net_socket_types {
2024-03-11 16:35:57 +06:00
/* Only TCP is supported for now. */
NET_SOCKET_TCP
};
SOCKET plat_netsocket_create(int type);
SOCKET plat_netsocket_create_server(int type, unsigned short port);
void plat_netsocket_close(SOCKET socket);
2024-03-11 16:35:57 +06:00
SOCKET plat_netsocket_accept(SOCKET socket);
int plat_netsocket_connected(SOCKET socket); /* Returns -1 on trouble. */
int plat_netsocket_connect(SOCKET socket, const char *hostname, unsigned short port);
2024-03-11 16:35:57 +06:00
/* Returns 0 in case of inability to send. -1 in case of errors. */
int plat_netsocket_send(SOCKET socket, const unsigned char *data, unsigned int size, int *wouldblock);
int plat_netsocket_receive(SOCKET socket, unsigned char *data, unsigned int size, int *wouldblock);