17ec681f3Smrg/* 27ec681f3Smrg * Copyright 2019 Intel Corporation 37ec681f3Smrg * SPDX-License-Identifier: MIT 47ec681f3Smrg * 57ec681f3Smrg * Socket operations helpers 67ec681f3Smrg */ 77ec681f3Smrg 87ec681f3Smrg#ifndef _OS_SOCKET_H_ 97ec681f3Smrg#define _OS_SOCKET_H_ 107ec681f3Smrg 117ec681f3Smrg#include <stdio.h> 127ec681f3Smrg#include <stdbool.h> 137ec681f3Smrg#ifdef _MSC_VER 147ec681f3Smrg#include <BaseTsd.h> 157ec681f3Smrgtypedef SSIZE_T ssize_t; 167ec681f3Smrg#else 177ec681f3Smrg#include <unistd.h> 187ec681f3Smrg#endif 197ec681f3Smrg 207ec681f3Smrg#ifdef __cplusplus 217ec681f3Smrgextern "C" { 227ec681f3Smrg#endif 237ec681f3Smrg 247ec681f3Smrgint os_socket_accept(int s); 257ec681f3Smrg 267ec681f3Smrgint os_socket_listen_abstract(const char *path, int count); 277ec681f3Smrg 287ec681f3Smrgssize_t os_socket_recv(int socket, void *buffer, size_t length, int flags); 297ec681f3Smrgssize_t os_socket_send(int socket, const void *buffer, size_t length, int flags); 307ec681f3Smrg 317ec681f3Smrgvoid os_socket_block(int s, bool block); 327ec681f3Smrgvoid os_socket_close(int s); 337ec681f3Smrg 347ec681f3Smrg#ifdef __cplusplus 357ec681f3Smrg} 367ec681f3Smrg#endif 377ec681f3Smrg 387ec681f3Smrg#endif /* _OS_SOCKET_H_ */ 39