1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 07:18:11 +00:00

Kernel/Net: Don't allocate memory for adapters' names

Instead, use a FixedStringBuffer to store a string with up to 16 chars.
This commit is contained in:
Liav A 2023-08-12 00:41:18 +03:00 committed by Andrew Kaster
parent b2fd51f561
commit 3f63be949a
14 changed files with 40 additions and 40 deletions

View file

@ -60,7 +60,7 @@ public:
virtual Type adapter_type() const = 0;
virtual ErrorOr<void> initialize(Badge<NetworkingManagement>) = 0;
StringView name() const { return m_name->view(); }
StringView name() const { return m_name.representable_view(); }
MACAddress mac_address() { return m_mac_address; }
IPv4Address ipv4_address() const { return m_ipv4_address; }
IPv4Address ipv4_netmask() const { return m_ipv4_netmask; }
@ -102,7 +102,7 @@ public:
void send_packet(ReadonlyBytes);
protected:
NetworkAdapter(NonnullOwnPtr<KString>);
NetworkAdapter(StringView);
void set_mac_address(MACAddress const& mac_address) { m_mac_address = mac_address; }
void did_receive(ReadonlyBytes);
virtual void send_raw(ReadonlyBytes) = 0;
@ -120,7 +120,7 @@ private:
PacketList m_packet_queue;
size_t m_packet_queue_size { 0 };
SpinlockProtected<PacketList, LockRank::None> m_unused_packets {};
NonnullOwnPtr<KString> m_name;
FixedStringBuffer<IFNAMSIZ> m_name;
u32 m_packets_in { 0 };
u32 m_bytes_in { 0 };
u32 m_packets_out { 0 };