summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/common/socket_types.h5
-rw-r--r--src/core/CMakeLists.txt2
-rw-r--r--src/core/hle/service/nifm/nifm.cpp1
-rw-r--r--src/core/hle/service/nifm/nifm.h7
-rw-r--r--src/core/hle/service/ssl/ssl_backend.h8
-rw-r--r--src/core/hle/service/ssl/ssl_backend_none.cpp4
-rw-r--r--src/core/hle/service/ssl/ssl_backend_openssl.cpp16
-rw-r--r--src/core/hle/service/ssl/ssl_backend_schannel.cpp9
-rw-r--r--src/core/hle/service/ssl/ssl_backend_securetransport.cpp15
-rw-r--r--src/core/internal_network/socket_proxy.cpp1
-rw-r--r--src/core/internal_network/socket_proxy.h4
-rw-r--r--src/core/internal_network/sockets.h3
12 files changed, 43 insertions, 32 deletions
diff --git a/src/common/socket_types.h b/src/common/socket_types.h
index b2191c2e8..63824a5c4 100644
--- a/src/common/socket_types.h
+++ b/src/common/socket_types.h
@@ -3,9 +3,10 @@
3 3
4#pragma once 4#pragma once
5 5
6#include "common/common_types.h"
7
8#include <optional> 6#include <optional>
7#include <string>
8
9#include "common/common_types.h"
9 10
10namespace Network { 11namespace Network {
11 12
diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt
index c3b688c5d..4b7395be8 100644
--- a/src/core/CMakeLists.txt
+++ b/src/core/CMakeLists.txt
@@ -876,7 +876,7 @@ elseif (APPLE)
876elseif (WIN32) 876elseif (WIN32)
877 target_sources(core PRIVATE 877 target_sources(core PRIVATE
878 hle/service/ssl/ssl_backend_schannel.cpp) 878 hle/service/ssl/ssl_backend_schannel.cpp)
879 target_link_libraries(core PRIVATE secur32) 879 target_link_libraries(core PRIVATE crypt32 secur32)
880else() 880else()
881 target_sources(core PRIVATE 881 target_sources(core PRIVATE
882 hle/service/ssl/ssl_backend_none.cpp) 882 hle/service/ssl/ssl_backend_none.cpp)
diff --git a/src/core/hle/service/nifm/nifm.cpp b/src/core/hle/service/nifm/nifm.cpp
index 91d42853e..21b06d10b 100644
--- a/src/core/hle/service/nifm/nifm.cpp
+++ b/src/core/hle/service/nifm/nifm.cpp
@@ -7,6 +7,7 @@
7#include "core/hle/service/kernel_helpers.h" 7#include "core/hle/service/kernel_helpers.h"
8#include "core/hle/service/nifm/nifm.h" 8#include "core/hle/service/nifm/nifm.h"
9#include "core/hle/service/server_manager.h" 9#include "core/hle/service/server_manager.h"
10#include "network/network.h"
10 11
11namespace { 12namespace {
12 13
diff --git a/src/core/hle/service/nifm/nifm.h b/src/core/hle/service/nifm/nifm.h
index 9b20e6823..ae99c4695 100644
--- a/src/core/hle/service/nifm/nifm.h
+++ b/src/core/hle/service/nifm/nifm.h
@@ -4,14 +4,15 @@
4#pragma once 4#pragma once
5 5
6#include "core/hle/service/service.h" 6#include "core/hle/service/service.h"
7#include "network/network.h"
8#include "network/room.h"
9#include "network/room_member.h"
10 7
11namespace Core { 8namespace Core {
12class System; 9class System;
13} 10}
14 11
12namespace Network {
13class RoomNetwork;
14}
15
15namespace Service::NIFM { 16namespace Service::NIFM {
16 17
17void LoopProcess(Core::System& system); 18void LoopProcess(Core::System& system);
diff --git a/src/core/hle/service/ssl/ssl_backend.h b/src/core/hle/service/ssl/ssl_backend.h
index 25c16bcc1..409f4367c 100644
--- a/src/core/hle/service/ssl/ssl_backend.h
+++ b/src/core/hle/service/ssl/ssl_backend.h
@@ -3,15 +3,15 @@
3 3
4#pragma once 4#pragma once
5 5
6#include "core/hle/result.h"
7
8#include "common/common_types.h"
9
10#include <memory> 6#include <memory>
11#include <span> 7#include <span>
12#include <string> 8#include <string>
13#include <vector> 9#include <vector>
14 10
11#include "common/common_types.h"
12
13#include "core/hle/result.h"
14
15namespace Network { 15namespace Network {
16class SocketBase; 16class SocketBase;
17} 17}
diff --git a/src/core/hle/service/ssl/ssl_backend_none.cpp b/src/core/hle/service/ssl/ssl_backend_none.cpp
index f2f0ef706..2f4f23c42 100644
--- a/src/core/hle/service/ssl/ssl_backend_none.cpp
+++ b/src/core/hle/service/ssl/ssl_backend_none.cpp
@@ -1,10 +1,10 @@
1// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project 1// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project
2// SPDX-License-Identifier: GPL-2.0-or-later 2// SPDX-License-Identifier: GPL-2.0-or-later
3 3
4#include "core/hle/service/ssl/ssl_backend.h"
5
6#include "common/logging/log.h" 4#include "common/logging/log.h"
7 5
6#include "core/hle/service/ssl/ssl_backend.h"
7
8namespace Service::SSL { 8namespace Service::SSL {
9 9
10ResultVal<std::unique_ptr<SSLConnectionBackend>> CreateSSLConnectionBackend() { 10ResultVal<std::unique_ptr<SSLConnectionBackend>> CreateSSLConnectionBackend() {
diff --git a/src/core/hle/service/ssl/ssl_backend_openssl.cpp b/src/core/hle/service/ssl/ssl_backend_openssl.cpp
index f69674f77..6ca869dbf 100644
--- a/src/core/hle/service/ssl/ssl_backend_openssl.cpp
+++ b/src/core/hle/service/ssl/ssl_backend_openssl.cpp
@@ -1,14 +1,6 @@
1// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project 1// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project
2// SPDX-License-Identifier: GPL-2.0-or-later 2// SPDX-License-Identifier: GPL-2.0-or-later
3 3
4#include "core/hle/service/ssl/ssl_backend.h"
5#include "core/internal_network/network.h"
6#include "core/internal_network/sockets.h"
7
8#include "common/fs/file.h"
9#include "common/hex_util.h"
10#include "common/string_util.h"
11
12#include <mutex> 4#include <mutex>
13 5
14#include <openssl/bio.h> 6#include <openssl/bio.h>
@@ -16,6 +8,14 @@
16#include <openssl/ssl.h> 8#include <openssl/ssl.h>
17#include <openssl/x509.h> 9#include <openssl/x509.h>
18 10
11#include "common/fs/file.h"
12#include "common/hex_util.h"
13#include "common/string_util.h"
14
15#include "core/hle/service/ssl/ssl_backend.h"
16#include "core/internal_network/network.h"
17#include "core/internal_network/sockets.h"
18
19using namespace Common::FS; 19using namespace Common::FS;
20 20
21namespace Service::SSL { 21namespace Service::SSL {
diff --git a/src/core/hle/service/ssl/ssl_backend_schannel.cpp b/src/core/hle/service/ssl/ssl_backend_schannel.cpp
index a1d6a186e..d8074339a 100644
--- a/src/core/hle/service/ssl/ssl_backend_schannel.cpp
+++ b/src/core/hle/service/ssl/ssl_backend_schannel.cpp
@@ -1,16 +1,16 @@
1// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project 1// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project
2// SPDX-License-Identifier: GPL-2.0-or-later 2// SPDX-License-Identifier: GPL-2.0-or-later
3 3
4#include "core/hle/service/ssl/ssl_backend.h" 4#include <mutex>
5#include "core/internal_network/network.h"
6#include "core/internal_network/sockets.h"
7 5
8#include "common/error.h" 6#include "common/error.h"
9#include "common/fs/file.h" 7#include "common/fs/file.h"
10#include "common/hex_util.h" 8#include "common/hex_util.h"
11#include "common/string_util.h" 9#include "common/string_util.h"
12 10
13#include <mutex> 11#include "core/hle/service/ssl/ssl_backend.h"
12#include "core/internal_network/network.h"
13#include "core/internal_network/sockets.h"
14 14
15namespace { 15namespace {
16 16
@@ -20,6 +20,7 @@ namespace {
20#define SECURITY_WIN32 20#define SECURITY_WIN32
21#include <schnlsp.h> 21#include <schnlsp.h>
22#include <security.h> 22#include <security.h>
23#include <wincrypt.h>
23 24
24std::once_flag one_time_init_flag; 25std::once_flag one_time_init_flag;
25bool one_time_init_success = false; 26bool one_time_init_success = false;
diff --git a/src/core/hle/service/ssl/ssl_backend_securetransport.cpp b/src/core/hle/service/ssl/ssl_backend_securetransport.cpp
index be40a5aeb..b3083cbad 100644
--- a/src/core/hle/service/ssl/ssl_backend_securetransport.cpp
+++ b/src/core/hle/service/ssl/ssl_backend_securetransport.cpp
@@ -1,18 +1,21 @@
1// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project 1// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project
2// SPDX-License-Identifier: GPL-2.0-or-later 2// SPDX-License-Identifier: GPL-2.0-or-later
3 3
4#include "core/hle/service/ssl/ssl_backend.h"
5#include "core/internal_network/network.h"
6#include "core/internal_network/sockets.h"
7
8#include <mutex> 4#include <mutex>
9 5
10#include <Security/SecureTransport.h>
11
12// SecureTransport has been deprecated in its entirety in favor of 6// SecureTransport has been deprecated in its entirety in favor of
13// Network.framework, but that does not allow layering TLS on top of an 7// Network.framework, but that does not allow layering TLS on top of an
14// arbitrary socket. 8// arbitrary socket.
9#if defined(__GNUC__) || defined(__clang__)
10#pragma GCC diagnostic push
15#pragma GCC diagnostic ignored "-Wdeprecated-declarations" 11#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
12#include <Security/SecureTransport.h>
13#pragma GCC diagnostic pop
14#endif
15
16#include "core/hle/service/ssl/ssl_backend.h"
17#include "core/internal_network/network.h"
18#include "core/internal_network/sockets.h"
16 19
17namespace { 20namespace {
18 21
diff --git a/src/core/internal_network/socket_proxy.cpp b/src/core/internal_network/socket_proxy.cpp
index 44e9e3093..ce0dee970 100644
--- a/src/core/internal_network/socket_proxy.cpp
+++ b/src/core/internal_network/socket_proxy.cpp
@@ -10,6 +10,7 @@
10#include "core/internal_network/network.h" 10#include "core/internal_network/network.h"
11#include "core/internal_network/network_interface.h" 11#include "core/internal_network/network_interface.h"
12#include "core/internal_network/socket_proxy.h" 12#include "core/internal_network/socket_proxy.h"
13#include "network/network.h"
13 14
14#if YUZU_UNIX 15#if YUZU_UNIX
15#include <sys/socket.h> 16#include <sys/socket.h>
diff --git a/src/core/internal_network/socket_proxy.h b/src/core/internal_network/socket_proxy.h
index e12c413d1..70500cf4a 100644
--- a/src/core/internal_network/socket_proxy.h
+++ b/src/core/internal_network/socket_proxy.h
@@ -10,10 +10,12 @@
10 10
11#include "common/common_funcs.h" 11#include "common/common_funcs.h"
12#include "core/internal_network/sockets.h" 12#include "core/internal_network/sockets.h"
13#include "network/network.h" 13#include "network/room_member.h"
14 14
15namespace Network { 15namespace Network {
16 16
17class RoomNetwork;
18
17class ProxySocket : public SocketBase { 19class ProxySocket : public SocketBase {
18public: 20public:
19 explicit ProxySocket(RoomNetwork& room_network_) noexcept; 21 explicit ProxySocket(RoomNetwork& room_network_) noexcept;
diff --git a/src/core/internal_network/sockets.h b/src/core/internal_network/sockets.h
index 46a53ef79..4ba51f62c 100644
--- a/src/core/internal_network/sockets.h
+++ b/src/core/internal_network/sockets.h
@@ -15,12 +15,13 @@
15 15
16#include "common/common_types.h" 16#include "common/common_types.h"
17#include "core/internal_network/network.h" 17#include "core/internal_network/network.h"
18#include "network/network.h"
19 18
20// TODO: C++20 Replace std::vector usages with std::span 19// TODO: C++20 Replace std::vector usages with std::span
21 20
22namespace Network { 21namespace Network {
23 22
23struct ProxyPacket;
24
24class SocketBase { 25class SocketBase {
25public: 26public:
26#ifdef YUZU_UNIX 27#ifdef YUZU_UNIX