// Released under the MIT License. See LICENSE for details.

#ifndef BALLISTICA_NETWORKING_NETWORKING_SYS_H_
#define BALLISTICA_NETWORKING_NETWORKING_SYS_H_

// Include everything needed for standard sockets api usage.

#if BA_OSTYPE_WINDOWS
// (need includes to stay in this order to disabling formatting)
// clang-format off
#include <ws2tcpip.h>
#include <iphlpapi.h>
// clang-format on
#else
#include <arpa/inet.h>
#include <netdb.h>
#include <netinet/in.h>
#include <sys/socket.h>
#include <sys/types.h>
#include <unistd.h>
#if BA_OSTYPE_ANDROID
// NOTE TO SELF: Apparently once we target API 24, ifaddrs.h is available.
#include "ballistica/platform/android/ifaddrs_android_ext.h"
#else
#include <ifaddrs.h>
#endif
#endif
#include <cerrno>
#include <cstdio>

#endif  // BALLISTICA_NETWORKING_NETWORKING_SYS_H_
