summaryrefslogtreecommitdiffstats
path: root/src/core/network/network.h
diff options
context:
space:
mode:
authorFearlessTobi <thm.frey@gmail.com>2021-12-25 20:27:52 +0100
committerFearlessTobi <thm.frey@gmail.com>2022-07-25 21:59:28 +0200
commit705f7db84dd85555a6aef1e136cf251725cef293 (patch)
treee110c6482a11d711d18515afce4fc50adcee76e7 /src/core/network/network.h
parentnetwork: Add initial files and enet dependency (diff)
downloadyuzu-705f7db84dd85555a6aef1e136cf251725cef293.tar
yuzu-705f7db84dd85555a6aef1e136cf251725cef293.tar.gz
yuzu-705f7db84dd85555a6aef1e136cf251725cef293.tar.bz2
yuzu-705f7db84dd85555a6aef1e136cf251725cef293.tar.lz
yuzu-705f7db84dd85555a6aef1e136cf251725cef293.tar.xz
yuzu-705f7db84dd85555a6aef1e136cf251725cef293.tar.zst
yuzu-705f7db84dd85555a6aef1e136cf251725cef293.zip
Diffstat (limited to 'src/core/network/network.h')
-rw-r--r--src/core/network/network.h117
1 files changed, 0 insertions, 117 deletions
diff --git a/src/core/network/network.h b/src/core/network/network.h
deleted file mode 100644
index 10e5ef10d..000000000
--- a/src/core/network/network.h
+++ /dev/null
@@ -1,117 +0,0 @@
-// SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#pragma once
-
-#include <array>
-#include <optional>
-
-#include "common/common_funcs.h"
-#include "common/common_types.h"
-
-#ifdef _WIN32
-#include <winsock2.h>
-#elif YUZU_UNIX
-#include <netinet/in.h>
-#endif
-
-namespace Network {
-
-class Socket;
-
-/// Error code for network functions
-enum class Errno {
- SUCCESS,
- BADF,
- INVAL,
- MFILE,
- NOTCONN,
- AGAIN,
- CONNREFUSED,
- HOSTUNREACH,
- NETDOWN,
- NETUNREACH,
- OTHER,
-};
-
-/// Address families
-enum class Domain {
- INET, ///< Address family for IPv4
-};
-
-/// Socket types
-enum class Type {
- STREAM,
- DGRAM,
- RAW,
- SEQPACKET,
-};
-
-/// Protocol values for sockets
-enum class Protocol {
- ICMP,
- TCP,
- UDP,
-};
-
-/// Shutdown mode
-enum class ShutdownHow {
- RD,
- WR,
- RDWR,
-};
-
-/// Array of IPv4 address
-using IPv4Address = std::array<u8, 4>;
-
-/// Cross-platform sockaddr structure
-struct SockAddrIn {
- Domain family;
- IPv4Address ip;
- u16 portno;
-};
-
-/// Cross-platform poll fd structure
-
-enum class PollEvents : u16 {
- // Using Pascal case because IN is a macro on Windows.
- In = 1 << 0,
- Pri = 1 << 1,
- Out = 1 << 2,
- Err = 1 << 3,
- Hup = 1 << 4,
- Nval = 1 << 5,
-};
-
-DECLARE_ENUM_FLAG_OPERATORS(PollEvents);
-
-struct PollFD {
- Socket* socket;
- PollEvents events;
- PollEvents revents;
-};
-
-class NetworkInstance {
-public:
- explicit NetworkInstance();
- ~NetworkInstance();
-};
-
-#ifdef _WIN32
-constexpr IPv4Address TranslateIPv4(in_addr addr) {
- auto& bytes = addr.S_un.S_un_b;
- return IPv4Address{bytes.s_b1, bytes.s_b2, bytes.s_b3, bytes.s_b4};
-}
-#elif YUZU_UNIX
-constexpr IPv4Address TranslateIPv4(in_addr addr) {
- const u32 bytes = addr.s_addr;
- return IPv4Address{static_cast<u8>(bytes), static_cast<u8>(bytes >> 8),
- static_cast<u8>(bytes >> 16), static_cast<u8>(bytes >> 24)};
-}
-#endif
-
-/// @brief Returns host's IPv4 address
-/// @return human ordered IPv4 address (e.g. 192.168.0.1) as an array
-std::optional<IPv4Address> GetHostIPv4Address();
-
-} // namespace Network