blob: 88d9d5f7ebc5cbb16cdb99edce631754ace47920 [file] [log] [blame]
// Copyright 2024 The Cobalt Authors. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#ifndef STARBOARD_SHARED_WIN32_POSIX_EMU_INCLUDE_SYS_SOCKET_H_
#define STARBOARD_SHARED_WIN32_POSIX_EMU_INCLUDE_SYS_SOCKET_H_
#include <BaseTsd.h>
#include <winsock2.h>
#include <ws2tcpip.h>
#include "starboard/shared/win32/posix_emu/include/remove_problematic_windows_macros.h"
#ifdef __cplusplus
extern "C" {
#endif
int sb_socket(int domain, int type, int protocol);
#define socket sb_socket
int sb_bind(int socket, const struct sockaddr* address, socklen_t address_len);
#define bind sb_bind
int sb_listen(int socket, int backlog);
#define listen sb_listen
int sb_accept(int socket, sockaddr* addr, int* addrlen);
#define accept sb_accept
int sb_connect(int socket, sockaddr* name, int namelen);
#define connect sb_connect
int sb_send(int sockfd, const void* buf, size_t len, int flags);
#define send sb_send
int sb_recv(int sockfd, void* buf, size_t len, int flags);
#define recv sb_recv
int sb_sendto(int sockfd,
const void* buf,
size_t len,
int flags,
const struct sockaddr* dest_addr,
socklen_t dest_len);
#define sendto sb_sendto
int sb_recvfrom(int sockfd,
void* buf,
size_t len,
int flags,
struct sockaddr* address,
socklen_t* address_len);
#define recvfrom sb_recvfrom
int sb_setsockopt(int socket,
int level,
int option_name,
const void* option_value,
int option_len);
#define setsockopt sb_setsockopt
#ifdef __cplusplus
}
#endif
#endif // STARBOARD_SHARED_WIN32_POSIX_EMU_INCLUDE_SYS_SOCKET_H_