9 #include <satcat5/ethernet.h>
15 #ifndef SATCAT5_ESOCK_BUFFSIZE
16 #define SATCAT5_ESOCK_BUFFSIZE 1600
19 #ifndef SATCAT5_ESOCK_PACKETS
20 #define SATCAT5_ESOCK_PACKETS 32
51 u8* txbuff,
unsigned txbytes,
unsigned txpkt,
52 u8* rxbuff,
unsigned rxbytes,
unsigned rxpkt);
67 u8 m_txbuff[SATCAT5_ESOCK_BUFFSIZE];
68 u8 m_rxbuff[SATCAT5_ESOCK_BUFFSIZE];
82 u8 m_rxbuff[SATCAT5_ESOCK_BUFFSIZE];
96 u8 m_txbuff[SATCAT5_ESOCK_BUFFSIZE];
Inheritable container for a eth::Address.
Implemention of "net::Dispatch" for Ethernet frames.
BufferedIO wrapper for two-way Ethernet communication.
SocketCore(satcat5::eth::Dispatch *iface, u8 *txbuff, unsigned txbytes, unsigned txpkt, u8 *rxbuff, unsigned rxbytes, unsigned rxpkt)
Child must provide transmit and receive working buffers.
void bind(const satcat5::eth::MacType &lcltype, const satcat5::eth::VlanTag &vtag=satcat5::eth::VTAG_NONE)
Listening mode only (no remote address).
void connect(const satcat5::eth::MacAddr &dstmac, const satcat5::eth::MacType &dsttype, const satcat5::eth::MacType &lcltype=satcat5::eth::ETYPE_NONE, const satcat5::eth::VlanTag &vtag=satcat5::eth::VTAG_NONE)
Two-way connection.
SocketCore with fixed-size transmit and receive buffers.
Socket(satcat5::eth::Dispatch *iface)
Link this socket to a network interface.
SocketCore with fixed-size receive buffer only.
SocketRx(satcat5::eth::Dispatch *iface)
Connect this Socket to a network interface.
SocketCore with fixed-size transmit buffer only.
SocketTx(satcat5::eth::Dispatch *iface)
Connect this Socket to a network interface.
Buffered I/O for sending and receiving messages over a network.
Buffered wrappers for generic network communication.
An Ethernet MAC address (with serializable interface).
EtherType field (uint16) is used a protocol-ID [1536..65535].
Header contents for an 802.1Q Virtual-LAN tag.