/*** Copyright (C) 2022 J Reece Wilson (a/k/a "Reece"). All rights reserved. File: AuNetAdapter.cpp Date: 2022-11-14 Author: Reece ***/ #include "Networking.hpp" #include "AuNetAdapter.hpp" #include "AuNetAdapter.hpp" namespace Aurora::IO::Net { const AuString &NetAdapter::GetName() { return this->name.empty() ? this->device : this->name; } IPAddress NetAdapter::GetAddress() { AuMemory::GetDefaultDiscontiguousHeapShared()->NewClass(); return this->address; } IPAddress NetAdapter::GetBroadcastAddress() { return this->broadcast; } IPAddress NetAdapter::GetSubnetMask() { return this->subnet; } const AuString &NetAdapter::GetDevice() { return this->device; } ENetworkAdapterType NetAdapter::GetAdapterType() { return this->eNetworkType; } ENetworkAdapterStatus NetAdapter::GetStatus() { return this->eNetworkStatus; } EIPProtocol NetAdapter::GetFamily() { return this->address.ip; } AuUInt16 NetAdapter::GetIndex() { return this->index; } IPAddress NetAdapter::GetAnycastAddress() { return this->anycast; } IPAddress NetAdapter::GetGateway() { return this->gateway; } AuList NetAdapter::GetDNS() { return this->dns; } AuArray NetAdapter::GetMacAddress() { return this->mac; } bool NetAdapter::HasDHCP() { return this->dhcp; } AuUInt32 NetAdapter::GetMTU() { return this->mtu; } AuUInt64 NetAdapter::GetTransmitBytesPerSec() { return this->uTransmitBytesPerSec; } AuUInt64 NetAdapter::GetReceiveBytesPerSec() { return this->uReceiveBytesPerSec; } }