mirror of
https://github.com/SerenityOS/serenity.git
synced 2025-01-23 18:02:05 -05:00
Kernel: Add on_receive callback to NetworkAdapter
This commit is contained in:
parent
682fe48222
commit
36d349f7a7
2 changed files with 5 additions and 0 deletions
|
@ -88,6 +88,8 @@ void NetworkAdapter::did_receive(const u8* data, int length)
|
|||
m_packets_in++;
|
||||
m_bytes_in += length;
|
||||
m_packet_queue.append(KBuffer::copy(data, length));
|
||||
if (m_on_receive)
|
||||
m_on_receive();
|
||||
}
|
||||
|
||||
Optional<KBuffer> NetworkAdapter::dequeue_packet()
|
||||
|
|
|
@ -45,6 +45,8 @@ public:
|
|||
u32 packets_out() const { return m_packets_out; }
|
||||
u32 bytes_out() const { return m_bytes_out; }
|
||||
|
||||
void set_on_receive(Function<void()> on_receive) { m_on_receive = move(on_receive); }
|
||||
|
||||
protected:
|
||||
NetworkAdapter();
|
||||
void set_interface_name(const StringView& basename);
|
||||
|
@ -63,4 +65,5 @@ private:
|
|||
u32 m_bytes_in { 0 };
|
||||
u32 m_packets_out { 0 };
|
||||
u32 m_bytes_out { 0 };
|
||||
Function<void()> m_on_receive;
|
||||
};
|
||||
|
|
Loading…
Add table
Reference in a new issue