mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 11:48:10 +00:00
Kernel+Userland: Expose list of network adapters through /proc/netadapters.
Added a simple /bin/ifconfig program that just pretty-prints that file. :^)
This commit is contained in:
parent
264890bfc3
commit
9e0f7acfe5
6 changed files with 69 additions and 0 deletions
|
@ -14,6 +14,13 @@ static Lockable<HashTable<NetworkAdapter*>>& all_adapters()
|
|||
return *table;
|
||||
}
|
||||
|
||||
void NetworkAdapter::for_each(Function<void(NetworkAdapter&)> callback)
|
||||
{
|
||||
LOCKER(all_adapters().lock());
|
||||
for (auto& it : all_adapters().resource())
|
||||
callback(*it);
|
||||
}
|
||||
|
||||
NetworkAdapter* NetworkAdapter::from_ipv4_address(const IPv4Address& address)
|
||||
{
|
||||
LOCKER(all_adapters().lock());
|
||||
|
@ -90,6 +97,12 @@ void NetworkAdapter::set_ipv4_address(const IPv4Address& address)
|
|||
m_ipv4_address = address;
|
||||
}
|
||||
|
||||
void NetworkAdapter::set_interface_name(const StringView& basename)
|
||||
{
|
||||
// FIXME: Find a unique name for this interface, starting with $basename.
|
||||
m_name = String::format("%s0", basename.characters());
|
||||
}
|
||||
|
||||
bool PacketQueueAlarm::is_ringing() const
|
||||
{
|
||||
return m_adapter.has_queued_packets();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue