summaryrefslogtreecommitdiff
path: root/Source/Core/Common/Network.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Core/Common/Network.h')
-rw-r--r--Source/Core/Common/Network.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/Source/Core/Common/Network.h b/Source/Core/Common/Network.h
index 87f1f3a444..8f446d7a38 100644
--- a/Source/Core/Common/Network.h
+++ b/Source/Core/Common/Network.h
@@ -36,6 +36,12 @@ enum DHCPConst
};
using MACAddress = std::array<u8, MAC_ADDRESS_SIZE>;
+
+// Note: Bluetooth address display order is reverse of the storage order.
+struct BluetoothAddress : std::array<u8, MAC_ADDRESS_SIZE>
+{
+};
+
constexpr std::size_t IPV4_ADDR_LEN = 4;
using IPAddress = std::array<u8, IPV4_ADDR_LEN>;
constexpr IPAddress IP_ADDR_ANY = {0, 0, 0, 0};
@@ -259,8 +265,13 @@ struct NetworkErrorState
};
MACAddress GenerateMacAddress(MACConsumer type);
+
std::string MacAddressToString(const MACAddress& mac);
std::optional<MACAddress> StringToMacAddress(std::string_view mac_string);
+
+std::string BluetoothAddressToString(BluetoothAddress bdaddr);
+std::optional<BluetoothAddress> StringToBluetoothAddress(std::string_view str);
+
u16 ComputeNetworkChecksum(const void* data, u16 length, u32 initial_value = 0);
u16 ComputeTCPNetworkChecksum(const IPAddress& from, const IPAddress& to, const void* data,
u16 length, u8 protocol);