#ifndef NET_THIRD_PARTY_QUICHE_OVERRIDES_QUICHE_PLATFORM_IMPL_QUICHE_UDP_SOCKET_PLATFORM_IMPL_H_
#define NET_THIRD_PARTY_QUICHE_OVERRIDES_QUICHE_PLATFORM_IMPL_QUICHE_UDP_SOCKET_PLATFORM_IMPL_H_
#include <sys/socket.h>
#include <unistd.h>
#include <cstddef>
#include <cstdint>
namespace quiche {
namespace {
inline constexpr uint8_t kEcnMask = …;
}
const size_t kCmsgSpaceForGooglePacketHeaderImpl = …;
inline bool GetGooglePacketHeadersFromControlMessageImpl(
struct ::cmsghdr* cmsg,
char** packet_headers,
size_t* packet_headers_len) { … }
inline void SetGoogleSocketOptionsImpl(int fd) { … }
inline int GetEcnCmsgArgsPreserveDscpImpl(const int fd,
const int address_family,
uint8_t ecn_codepoint,
int& type,
void* value,
socklen_t& value_len) { … }
}
#endif