18#ifndef __LIB_LIBNET_ICMP_H
19#define __LIB_LIBNET_ICMP_H
143 const Size payloadSize);
SystemDescriptorHeader header
Address Resolution Protocol.
Internet Control Message Protocol (ICMP) factory.
Internet Control Message Protocol (ICMP) socket.
Internet Control Message Protocol (ICMP)
Index< ICMPSocket, MaxIcmpSockets > m_sockets
ICMPSocket * createSocket(String &path, const ProcessID pid)
Creates an ICMP socket.
virtual ~ICMP()
Destructor.
FileSystem::Result sendPacket(const IPV4::Address ip, const Header *header, const void *payload, const Size payloadSize)
Send packet.
virtual FileSystem::Result process(const NetworkQueue::Packet *pkt, const Size offset)
Process incoming network packet.
void unregisterSockets(const ProcessID pid)
Remove sockets for a process.
struct ICMP::Header Header
Packet header format.
static const Size MaxIcmpSockets
virtual FileSystem::Result initialize()
Perform initialization.
void setIP(::IPV4 *ip)
Set IP object.
Internet Protocol Version 4.
Index is a N-sized array of pointers to items of type T.
Network Device abstract class.
Network protocol abstraction class.
u32 ProcessID
Process Identification Number.
unsigned short u16
Unsigned 16-bit number.
unsigned int Size
Any sane size indicator cannot go negative.
unsigned char u8
Unsigned 8-bit number.
Result
Result code for filesystem Actions.
Represents a network packet.