summaryrefslogtreecommitdiff
path: root/Source/Core
diff options
context:
space:
mode:
authorSepalani <sepalani@hotmail.fr>2022-07-10 12:48:12 +0400
committerSepalani <sepalani@hotmail.fr>2022-07-10 12:48:12 +0400
commit4efe1e7ca7ca4377b5f54e277e2d086a649c2cbd (patch)
treebe7c835a2ae60a60ffb3c388ed65f5fa6cae90f2 /Source/Core
parentb7bd2a4001ad12f03636d21b75785a032f8a8bc0 (diff)
Common/Network: Ensure offsetof is valid
Diffstat (limited to 'Source/Core')
-rw-r--r--Source/Core/Common/Network.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/Source/Core/Common/Network.h b/Source/Core/Common/Network.h
index 718a297f09..e3b319bc6b 100644
--- a/Source/Core/Common/Network.h
+++ b/Source/Core/Common/Network.h
@@ -7,6 +7,7 @@
#include <optional>
#include <string>
#include <string_view>
+#include <type_traits>
#include <vector>
#include "Common/CommonTypes.h"
@@ -57,6 +58,7 @@ struct EthernetHeader
u16 ethertype = 0;
};
static_assert(sizeof(EthernetHeader) == EthernetHeader::SIZE);
+static_assert(std::is_standard_layout_v<EthernetHeader>);
struct IPv4Header
{
@@ -79,6 +81,7 @@ struct IPv4Header
IPAddress destination_addr{};
};
static_assert(sizeof(IPv4Header) == IPv4Header::SIZE);
+static_assert(std::is_standard_layout_v<IPv4Header>);
struct TCPHeader
{
@@ -101,6 +104,7 @@ struct TCPHeader
u16 urgent_pointer = 0;
};
static_assert(sizeof(TCPHeader) == TCPHeader::SIZE);
+static_assert(std::is_standard_layout_v<TCPHeader>);
struct UDPHeader
{
@@ -117,6 +121,7 @@ struct UDPHeader
u16 checksum = 0;
};
static_assert(sizeof(UDPHeader) == UDPHeader::SIZE);
+static_assert(std::is_standard_layout_v<UDPHeader>);
#pragma pack(push, 1)
struct ARPHeader