gem5 v24.0.0.0
Loading...
Searching...
No Matches
The inet API.

Functions

int gem5::networking::EthAddr::size () const
 
std::string gem5::networking::EthAddr::string () const
 
 gem5::networking::EthAddr::operator uint64_t () const
 
const EthPtrgem5::networking::EthPtr::operator= (const EthPacketPtr &ptr)
 
uint32_t gem5::networking::IpAddress::ip () const
 
std::string gem5::networking::IpAddress::string () const
 
uint8_t gem5::networking::IpNetmask::netmask () const
 
uint8_t gem5::networking::IpWithPort::port () const
 
uint16_t gem5::networking::cksum (const IpPtr &ptr)
 
uint16_t gem5::networking::cksum (const TcpPtr &ptr)
 
 gem5::networking::UdpPtr::UdpPtr ()
 
int gem5::networking::hsplit (const EthPacketPtr &ptr)
 
 gem5::networking::EthAddr::EthAddr ()
 
 gem5::networking::EthAddr::EthAddr (const uint8_t ea[ETH_ADDR_LEN])
 
 gem5::networking::EthAddr::EthAddr (const eth_addr &ea)
 
 gem5::networking::EthAddr::EthAddr (const std::string &addr)
 
const EthAddrgem5::networking::EthAddr::operator= (const eth_addr &ea)
 
const EthAddrgem5::networking::EthAddr::operator= (const std::string &addr)
 
const uint8_t * gem5::networking::EthAddr::bytes () const
 
uint8_t * gem5::networking::EthAddr::bytes ()
 
const uint8_t * gem5::networking::EthAddr::addr () const
 
bool gem5::networking::EthAddr::unicast () const
 
bool gem5::networking::EthAddr::multicast () const
 
bool gem5::networking::EthAddr::broadcast () const
 
std::ostream & gem5::networking::operator<< (std::ostream &stream, const EthAddr &ea)
 
bool gem5::networking::operator== (const EthAddr &left, const EthAddr &right)
 
 gem5::networking::EthPtr::EthPtr ()
 
 gem5::networking::EthPtr::EthPtr (const EthPacketPtr &ptr)
 
const EthPacketPtr gem5::networking::EthPtr::packet () const
 
EthPacketPtr gem5::networking::EthPtr::packet ()
 
bool gem5::networking::EthPtr::operator! () const
 
 gem5::networking::EthPtr::operator bool () const
 
int gem5::networking::EthPtr::off () const
 
int gem5::networking::EthPtr::pstart () const
 
 gem5::networking::IpAddress::IpAddress ()
 
 gem5::networking::IpAddress::IpAddress (const uint32_t __ip)
 
std::ostream & gem5::networking::operator<< (std::ostream &stream, const IpAddress &ia)
 
bool gem5::networking::operator== (const IpAddress &left, const IpAddress &right)
 
std::ostream & gem5::networking::operator<< (std::ostream &stream, const IpNetmask &in)
 
bool gem5::networking::operator== (const IpNetmask &left, const IpNetmask &right)
 
std::ostream & gem5::networking::operator<< (std::ostream &stream, const IpWithPort &iwp)
 
bool gem5::networking::operator== (const IpWithPort &left, const IpWithPort &right)
 
 gem5::networking::IpPtr::IpPtr ()
 
 gem5::networking::IpPtr::IpPtr (const EthPacketPtr &ptr)
 
 gem5::networking::IpPtr::IpPtr (const EthPtr &ptr)
 
 gem5::networking::IpPtr::IpPtr (const IpPtr &ptr)
 
const IpHdrgem5::networking::IpPtr::get () const
 
const IpHdrgem5::networking::IpPtr::operator-> () const
 
const IpHdrgem5::networking::IpPtr::operator* () const
 
const EthPacketPtr gem5::networking::IpPtr::packet () const
 
EthPacketPtr gem5::networking::IpPtr::packet ()
 
bool gem5::networking::IpPtr::operator! () const
 
 gem5::networking::IpPtr::operator bool () const
 
int gem5::networking::IpPtr::off () const
 
int gem5::networking::IpPtr::pstart () const
 
 gem5::networking::Ip6Ptr::Ip6Ptr ()
 
 gem5::networking::Ip6Ptr::Ip6Ptr (const EthPacketPtr &ptr)
 
 gem5::networking::Ip6Ptr::Ip6Ptr (const EthPtr &ptr)
 
 gem5::networking::Ip6Ptr::Ip6Ptr (const Ip6Ptr &ptr)
 
const Ip6Ptrgem5::networking::Ip6Ptr::operator= (const EthPacketPtr &ptr)
 
const Ip6Ptrgem5::networking::Ip6Ptr::operator= (const EthPtr &ptr)
 
const Ip6Ptrgem5::networking::Ip6Ptr::operator= (const Ip6Ptr &ptr)
 
const EthPacketPtr gem5::networking::Ip6Ptr::packet () const
 
EthPacketPtr gem5::networking::Ip6Ptr::packet ()
 
bool gem5::networking::Ip6Ptr::operator! () const
 
 gem5::networking::Ip6Ptr::operator bool () const
 
int gem5::networking::Ip6Ptr::off () const
 
int gem5::networking::Ip6Ptr::pstart () const
 
 gem5::networking::TcpPtr::TcpPtr ()
 
 gem5::networking::TcpPtr::TcpPtr (const IpPtr &ptr)
 
 gem5::networking::TcpPtr::TcpPtr (const Ip6Ptr &ptr)
 
 gem5::networking::TcpPtr::TcpPtr (const TcpPtr &ptr)
 
const TcpPtrgem5::networking::TcpPtr::operator= (const IpPtr &i)
 
const TcpPtrgem5::networking::TcpPtr::operator= (const TcpPtr &t)
 
const EthPacketPtr gem5::networking::TcpPtr::packet () const
 
EthPacketPtr gem5::networking::TcpPtr::packet ()
 
bool gem5::networking::TcpPtr::operator! () const
 
 gem5::networking::TcpPtr::operator bool () const
 
int gem5::networking::TcpPtr::off () const
 
int gem5::networking::TcpPtr::pstart () const
 
const UdpPtrgem5::networking::UdpPtr::operator= (const IpPtr &i)
 
const UdpPtrgem5::networking::UdpPtr::operator= (const UdpPtr &t)
 
const EthPacketPtr gem5::networking::UdpPtr::packet () const
 
EthPacketPtr gem5::networking::UdpPtr::packet ()
 
bool gem5::networking::UdpPtr::operator! () const
 
 gem5::networking::UdpPtr::operator bool () const
 
int gem5::networking::UdpPtr::off () const
 
int gem5::networking::UdpPtr::pstart () const
 
uint16_t gem5::networking::__tu_cksum6 (const Ip6Ptr &ip6)
 
uint16_t gem5::networking::__tu_cksum (const IpPtr &ip)
 
uint16_t gem5::networking::cksum (const UdpPtr &udp)
 

Detailed Description

These methods relate to EthAddr, IpAddress, TCP, UDP interfaces.

Function Documentation

◆ __tu_cksum()

uint16_t gem5::networking::__tu_cksum ( const IpPtr & ip)

Definition at line 215 of file inet.cc.

References gem5::RiscvISA::sum.

Referenced by gem5::networking::cksum(), and gem5::networking::cksum().

◆ __tu_cksum6()

uint16_t gem5::networking::__tu_cksum6 ( const Ip6Ptr & ip6)

Definition at line 225 of file inet.cc.

References gem5::MipsISA::ip6, and gem5::RiscvISA::sum.

Referenced by gem5::networking::cksum(), and gem5::networking::cksum().

◆ addr()

const uint8_t * gem5::networking::EthAddr::addr ( ) const
inline

◆ broadcast()

bool gem5::networking::EthAddr::broadcast ( ) const
inline

◆ bytes() [1/2]

uint8_t * gem5::networking::EthAddr::bytes ( )
inline

Definition at line 106 of file inet.hh.

References data.

◆ bytes() [2/2]

const uint8_t * gem5::networking::EthAddr::bytes ( ) const
inline

Definition at line 105 of file inet.hh.

References data.

Referenced by gem5::networking::operator==(), and gem5::networking::EthAddr::parse().

◆ cksum() [1/3]

◆ cksum() [2/3]

uint16_t gem5::networking::cksum ( const TcpPtr & tcp)

Definition at line 235 of file inet.cc.

References gem5::networking::__tu_cksum(), gem5::networking::__tu_cksum6(), and panic.

◆ cksum() [3/3]

uint16_t gem5::networking::cksum ( const UdpPtr & udp)

◆ EthAddr() [1/4]

gem5::networking::EthAddr::EthAddr ( )

Definition at line 60 of file inet.cc.

References data.

◆ EthAddr() [2/4]

gem5::networking::EthAddr::EthAddr ( const eth_addr & ea)

Definition at line 71 of file inet.cc.

References data, gem5::ArmISA::ea, and gem5::ArmISA::i.

◆ EthAddr() [3/4]

gem5::networking::EthAddr::EthAddr ( const std::string & addr)

◆ EthAddr() [4/4]

gem5::networking::EthAddr::EthAddr ( const uint8_t ea[ETH_ADDR_LEN])

Definition at line 65 of file inet.cc.

References data, gem5::ArmISA::ea, and gem5::ArmISA::i.

◆ EthPtr() [1/2]

gem5::networking::EthPtr::EthPtr ( )
inline

Definition at line 203 of file inet.hh.

◆ EthPtr() [2/2]

gem5::networking::EthPtr::EthPtr ( const EthPacketPtr & ptr)
inline

Definition at line 204 of file inet.hh.

◆ get()

const IpHdr * gem5::networking::IpPtr::get ( ) const
inline

Definition at line 398 of file inet.hh.

References gem5::networking::IpPtr::eth_hdr_vlan, and gem5::networking::IpPtr::p.

◆ hsplit()

int gem5::networking::hsplit ( const EthPacketPtr & ptr)

◆ ip()

uint32_t gem5::networking::IpAddress::ip ( ) const
inline

◆ Ip6Ptr() [1/4]

gem5::networking::Ip6Ptr::Ip6Ptr ( )
inline

Definition at line 513 of file inet.hh.

◆ Ip6Ptr() [2/4]

gem5::networking::Ip6Ptr::Ip6Ptr ( const EthPacketPtr & ptr)
inline

Definition at line 514 of file inet.hh.

References gem5::ArmISA::set.

◆ Ip6Ptr() [3/4]

gem5::networking::Ip6Ptr::Ip6Ptr ( const EthPtr & ptr)
inline

Definition at line 515 of file inet.hh.

References gem5::networking::EthPtr::p, and gem5::ArmISA::set.

◆ Ip6Ptr() [4/4]

gem5::networking::Ip6Ptr::Ip6Ptr ( const Ip6Ptr & ptr)
inline

Definition at line 516 of file inet.hh.

◆ IpAddress() [1/2]

gem5::networking::IpAddress::IpAddress ( )
inline

Definition at line 246 of file inet.hh.

◆ IpAddress() [2/2]

gem5::networking::IpAddress::IpAddress ( const uint32_t __ip)
inline

Definition at line 248 of file inet.hh.

◆ IpPtr() [1/4]

gem5::networking::IpPtr::IpPtr ( )
inline

Definition at line 383 of file inet.hh.

◆ IpPtr() [2/4]

gem5::networking::IpPtr::IpPtr ( const EthPacketPtr & ptr)
inline

Definition at line 384 of file inet.hh.

References gem5::ArmISA::set.

◆ IpPtr() [3/4]

gem5::networking::IpPtr::IpPtr ( const EthPtr & ptr)
inline

Definition at line 385 of file inet.hh.

References gem5::networking::EthPtr::p, and gem5::ArmISA::set.

◆ IpPtr() [4/4]

gem5::networking::IpPtr::IpPtr ( const IpPtr & ptr)
inline

Definition at line 386 of file inet.hh.

◆ multicast()

bool gem5::networking::EthAddr::multicast ( ) const
inline

◆ netmask()

uint8_t gem5::networking::IpNetmask::netmask ( ) const
inline

◆ off() [1/5]

int gem5::networking::EthPtr::off ( ) const
inline

Definition at line 228 of file inet.hh.

Referenced by gem5::networking::EthPtr::pstart().

◆ off() [2/5]

int gem5::networking::Ip6Ptr::off ( ) const
inline

Definition at line 550 of file inet.hh.

References gem5::networking::Ip6Ptr::eth_hdr_vlan.

Referenced by gem5::networking::Ip6Ptr::pstart().

◆ off() [3/5]

int gem5::networking::IpPtr::off ( ) const
inline

Definition at line 417 of file inet.hh.

References gem5::networking::IpPtr::eth_hdr_vlan.

Referenced by gem5::networking::IpPtr::pstart().

◆ off() [4/5]

int gem5::networking::TcpPtr::off ( ) const
inline

Definition at line 704 of file inet.hh.

References gem5::networking::TcpPtr::_off.

Referenced by gem5::networking::TcpPtr::pstart().

◆ off() [5/5]

int gem5::networking::UdpPtr::off ( ) const
inline

Definition at line 816 of file inet.hh.

References gem5::networking::UdpPtr::_off.

Referenced by gem5::networking::UdpPtr::pstart().

◆ operator bool() [1/5]

gem5::networking::EthPtr::operator bool ( ) const
inline

Definition at line 227 of file inet.hh.

References gem5::networking::EthPtr::p.

◆ operator bool() [2/5]

gem5::networking::Ip6Ptr::operator bool ( ) const
inline

Definition at line 549 of file inet.hh.

References gem5::networking::Ip6Ptr::p.

◆ operator bool() [3/5]

gem5::networking::IpPtr::operator bool ( ) const
inline

Definition at line 416 of file inet.hh.

References gem5::networking::IpPtr::p.

◆ operator bool() [4/5]

gem5::networking::TcpPtr::operator bool ( ) const
inline

Definition at line 703 of file inet.hh.

References gem5::networking::TcpPtr::p.

◆ operator bool() [5/5]

gem5::networking::UdpPtr::operator bool ( ) const
inline

Definition at line 815 of file inet.hh.

References gem5::networking::UdpPtr::p.

◆ operator uint64_t()

gem5::networking::EthAddr::operator uint64_t ( ) const
inline

Definition at line 135 of file inet.hh.

References data, and gem5::X86ISA::reg.

◆ operator!() [1/5]

bool gem5::networking::EthPtr::operator! ( ) const
inline

Definition at line 226 of file inet.hh.

References gem5::networking::EthPtr::p.

◆ operator!() [2/5]

bool gem5::networking::Ip6Ptr::operator! ( ) const
inline

Definition at line 548 of file inet.hh.

References gem5::networking::Ip6Ptr::p.

◆ operator!() [3/5]

bool gem5::networking::IpPtr::operator! ( ) const
inline

Definition at line 415 of file inet.hh.

References gem5::networking::IpPtr::p.

◆ operator!() [4/5]

bool gem5::networking::TcpPtr::operator! ( ) const
inline

Definition at line 702 of file inet.hh.

References gem5::networking::TcpPtr::p.

◆ operator!() [5/5]

bool gem5::networking::UdpPtr::operator! ( ) const
inline

Definition at line 814 of file inet.hh.

References gem5::networking::UdpPtr::p.

◆ operator*()

const IpHdr & gem5::networking::IpPtr::operator* ( ) const
inline

Definition at line 402 of file inet.hh.

References gem5::networking::IpPtr::get().

◆ operator->()

const IpHdr * gem5::networking::IpPtr::operator-> ( ) const
inline

Definition at line 401 of file inet.hh.

References gem5::networking::IpPtr::get().

◆ operator<<() [1/4]

std::ostream & gem5::networking::operator<< ( std::ostream & stream,
const EthAddr & ea )

Definition at line 132 of file inet.cc.

References gem5::ArmISA::a, gem5::ccprintf(), and gem5::ArmISA::ea.

◆ operator<<() [2/4]

std::ostream & gem5::networking::operator<< ( std::ostream & stream,
const IpAddress & ia )

Definition at line 154 of file inet.cc.

References gem5::ccprintf(), and gem5::MipsISA::ia.

◆ operator<<() [3/4]

std::ostream & gem5::networking::operator<< ( std::ostream & stream,
const IpNetmask & in )

Definition at line 179 of file inet.cc.

References gem5::ccprintf(), and gem5::networking::IpNetmask::netmask().

◆ operator<<() [4/4]

std::ostream & gem5::networking::operator<< ( std::ostream & stream,
const IpWithPort & iwp )

Definition at line 200 of file inet.cc.

References gem5::ccprintf(), and gem5::networking::IpWithPort::port().

◆ operator=() [1/10]

const EthAddr & gem5::networking::EthAddr::operator= ( const eth_addr & ea)

Definition at line 83 of file inet.cc.

References data, and gem5::ArmISA::ea.

◆ operator=() [2/10]

const EthAddr & gem5::networking::EthAddr::operator= ( const std::string & addr)

◆ operator=() [3/10]

const EthPtr & gem5::networking::EthPtr::operator= ( const EthPacketPtr & ptr)
inline

Definition at line 218 of file inet.hh.

References gem5::networking::EthPtr::p.

◆ operator=() [4/10]

const Ip6Ptr & gem5::networking::Ip6Ptr::operator= ( const EthPacketPtr & ptr)
inline

Definition at line 534 of file inet.hh.

References gem5::ArmISA::set.

◆ operator=() [5/10]

const Ip6Ptr & gem5::networking::Ip6Ptr::operator= ( const EthPtr & ptr)
inline

Definition at line 536 of file inet.hh.

References gem5::networking::EthPtr::p, and gem5::ArmISA::set.

◆ operator=() [6/10]

const Ip6Ptr & gem5::networking::Ip6Ptr::operator= ( const Ip6Ptr & ptr)
inline

Definition at line 538 of file inet.hh.

References gem5::networking::Ip6Ptr::p.

◆ operator=() [7/10]

const TcpPtr & gem5::networking::TcpPtr::operator= ( const IpPtr & i)
inline

Definition at line 690 of file inet.hh.

References gem5::ArmISA::i, and gem5::ArmISA::set.

◆ operator=() [8/10]

const TcpPtr & gem5::networking::TcpPtr::operator= ( const TcpPtr & t)
inline

Definition at line 692 of file inet.hh.

References gem5::ArmISA::set, and gem5::ArmISA::t.

◆ operator=() [9/10]

const UdpPtr & gem5::networking::UdpPtr::operator= ( const IpPtr & i)
inline

Definition at line 803 of file inet.hh.

References gem5::ArmISA::i, and gem5::ArmISA::set.

◆ operator=() [10/10]

const UdpPtr & gem5::networking::UdpPtr::operator= ( const UdpPtr & t)
inline

Definition at line 804 of file inet.hh.

References gem5::ArmISA::set, and gem5::ArmISA::t.

◆ operator==() [1/4]

bool gem5::networking::operator== ( const EthAddr & left,
const EthAddr & right )

Definition at line 127 of file inet.cc.

References gem5::networking::EthAddr::bytes().

◆ operator==() [2/4]

bool gem5::networking::operator== ( const IpAddress & left,
const IpAddress & right )

Definition at line 149 of file inet.cc.

References gem5::networking::IpAddress::ip().

◆ operator==() [3/4]

bool gem5::networking::operator== ( const IpNetmask & left,
const IpNetmask & right )

◆ operator==() [4/4]

bool gem5::networking::operator== ( const IpWithPort & left,
const IpWithPort & right )

◆ packet() [1/10]

EthPacketPtr gem5::networking::EthPtr::packet ( )
inline

Definition at line 225 of file inet.hh.

References gem5::networking::EthPtr::p.

◆ packet() [2/10]

const EthPacketPtr gem5::networking::EthPtr::packet ( ) const
inline

Definition at line 224 of file inet.hh.

References gem5::networking::EthPtr::p.

◆ packet() [3/10]

EthPacketPtr gem5::networking::Ip6Ptr::packet ( )
inline

Definition at line 547 of file inet.hh.

References gem5::networking::Ip6Ptr::p.

◆ packet() [4/10]

const EthPacketPtr gem5::networking::Ip6Ptr::packet ( ) const
inline

Definition at line 546 of file inet.hh.

References gem5::networking::Ip6Ptr::p.

◆ packet() [5/10]

EthPacketPtr gem5::networking::IpPtr::packet ( )
inline

Definition at line 414 of file inet.hh.

References gem5::networking::IpPtr::p.

◆ packet() [6/10]

const EthPacketPtr gem5::networking::IpPtr::packet ( ) const
inline

Definition at line 413 of file inet.hh.

References gem5::networking::IpPtr::p.

◆ packet() [7/10]

EthPacketPtr gem5::networking::TcpPtr::packet ( )
inline

Definition at line 701 of file inet.hh.

References gem5::networking::TcpPtr::p.

◆ packet() [8/10]

const EthPacketPtr gem5::networking::TcpPtr::packet ( ) const
inline

Definition at line 700 of file inet.hh.

References gem5::networking::TcpPtr::p.

◆ packet() [9/10]

EthPacketPtr gem5::networking::UdpPtr::packet ( )
inline

Definition at line 813 of file inet.hh.

References gem5::networking::UdpPtr::p.

◆ packet() [10/10]

const EthPacketPtr gem5::networking::UdpPtr::packet ( ) const
inline

Definition at line 812 of file inet.hh.

References gem5::networking::UdpPtr::p.

Referenced by gem5::networking::cksum().

◆ port()

uint8_t gem5::networking::IpWithPort::port ( ) const
inline

◆ pstart() [1/5]

int gem5::networking::EthPtr::pstart ( ) const
inline

Definition at line 229 of file inet.hh.

References gem5::networking::EthPtr::off(), and gem5::networking::EthPtr::p.

◆ pstart() [2/5]

int gem5::networking::Ip6Ptr::pstart ( ) const
inline

◆ pstart() [3/5]

int gem5::networking::IpPtr::pstart ( ) const
inline

◆ pstart() [4/5]

int gem5::networking::TcpPtr::pstart ( ) const
inline

◆ pstart() [5/5]

int gem5::networking::UdpPtr::pstart ( ) const
inline

◆ size()

int gem5::networking::EthAddr::size ( ) const
inline

Definition at line 98 of file inet.hh.

◆ string() [1/2]

std::string gem5::networking::EthAddr::string ( ) const

Definition at line 119 of file inet.cc.

◆ string() [2/2]

std::string gem5::networking::IpAddress::string ( ) const

Definition at line 141 of file inet.cc.

◆ TcpPtr() [1/4]

gem5::networking::TcpPtr::TcpPtr ( )
inline

Definition at line 672 of file inet.hh.

◆ TcpPtr() [2/4]

gem5::networking::TcpPtr::TcpPtr ( const Ip6Ptr & ptr)
inline

Definition at line 674 of file inet.hh.

References gem5::ArmISA::set.

◆ TcpPtr() [3/4]

gem5::networking::TcpPtr::TcpPtr ( const IpPtr & ptr)
inline

Definition at line 673 of file inet.hh.

References gem5::ArmISA::set.

◆ TcpPtr() [4/4]

gem5::networking::TcpPtr::TcpPtr ( const TcpPtr & ptr)
inline

Definition at line 675 of file inet.hh.

◆ UdpPtr()

gem5::networking::UdpPtr::UdpPtr ( )
inline

Definition at line 785 of file inet.hh.

◆ unicast()

bool gem5::networking::EthAddr::unicast ( ) const
inline

Definition at line 114 of file inet.hh.

References data.

Referenced by gem5::networking::EthAddr::multicast(), and gem5::NSGigE::rxFilter().


Generated on Tue Jun 18 2024 16:24:09 for gem5 by doxygen 1.11.0