summaryrefslogtreecommitdiff
path: root/Source/Core/Common/Network.cpp
diff options
context:
space:
mode:
authorJordan Woyak <jordan.woyak@gmail.com>2025-09-22 08:02:01 -0500
committerJordan Woyak <jordan.woyak@gmail.com>2025-10-04 14:51:17 -0500
commitb2fef6ee1fcd820f8bdeee6cc48aa2912d334f72 (patch)
treeaefad7b2c1a4feaea932f5b36fd405d163e124d3 /Source/Core/Common/Network.cpp
parentb1e8de82a632f38424fd8acff36cf3db48e9802b (diff)
Common/Network: Add BluetoothAddress struct and string conversion functions.
Diffstat (limited to 'Source/Core/Common/Network.cpp')
-rw-r--r--Source/Core/Common/Network.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/Source/Core/Common/Network.cpp b/Source/Core/Common/Network.cpp
index a5d6eae1e7..aed767a85e 100644
--- a/Source/Core/Common/Network.cpp
+++ b/Source/Core/Common/Network.cpp
@@ -86,6 +86,21 @@ std::optional<MACAddress> StringToMacAddress(std::string_view mac_string)
return std::make_optional(mac);
}
+std::string BluetoothAddressToString(BluetoothAddress bdaddr)
+{
+ std::ranges::reverse(bdaddr);
+ return MacAddressToString(std::bit_cast<MACAddress>(bdaddr));
+}
+
+std::optional<BluetoothAddress> StringToBluetoothAddress(std::string_view str)
+{
+ auto result = StringToMacAddress(str);
+ if (!result)
+ return std::nullopt;
+ std::ranges::reverse(*result);
+ return std::bit_cast<BluetoothAddress>(*result);
+}
+
EthernetHeader::EthernetHeader() = default;
EthernetHeader::EthernetHeader(u16 ether_type) : ethertype(htons(ether_type))