23 std::sscanf(str,
"%hhu.%hhu.%hhu.%hhu",
24 &ip.bytes[0], &ip.bytes[1], &ip.bytes[2], &ip.bytes[3]);
28 void ToString(
char out[IPADDR_STRLEN])
const
30 std::snprintf(out, IPADDR_STRLEN,
"%u.%u.%u.%u",
31 bytes[0], bytes[1], bytes[2], bytes[3]);
36 return std::memcmp(bytes, other.bytes, 4) == 0;
41 return !(*
this == other);
75 std::sscanf(str,
"%hhx:%hhx:%hhx:%hhx:%hhx:%hhx",
76 &mac.bytes[0], &mac.bytes[1], &mac.bytes[2],
77 &mac.bytes[3], &mac.bytes[4], &mac.bytes[5]);
81 void ToString(
char out[MACADDR_STRLEN])
const
83 std::snprintf(out, MACADDR_STRLEN,
"%02X:%02X:%02X:%02X:%02X:%02X",
84 bytes[0], bytes[1], bytes[2],
85 bytes[3], bytes[4], bytes[5]);
90 return std::memcmp(bytes, other.bytes, 6) == 0;
95 return !(*
this == other);