IPv6 RAW Socket Protocol, connected. More...
#include <senf/Socket/Protocols/INet/ConnectedRawINetSocketHandle.hh>
Constructors | |
void | init_client () const |
Create unconnected client socket for IPPROTO_RAW. More... | |
void | init_client (int const &protocol) const |
Create unconnected client socket for protocol. More... | |
void | init_client (int const &protocol, INet6SocketAddress const &address) const |
Create client socket and connect. More... | |
Additional Inherited Members | |
![]() | |
typedef ConnectedRawV6Socket_Policy | Policy |
The protocols policy. More... | |
![]() | |
Policy const & | policy () const |
Access the policy instance. More... | |
~ConcreteSocketProtocol ()=0 | |
![]() | |
virtual void | close () |
Close socket. More... | |
virtual void | terminate () const |
Forcibly close socket. More... | |
virtual void | state (SocketStateMap &map, unsigned lod) const |
Return socket state information. More... | |
int | fd () const |
Get file descriptor. More... | |
SocketProtocol () | |
virtual | ~SocketProtocol ()=0 |
![]() | |
unsigned | available () const |
Return (maximum) number of bytes available for reading without < blocking. More... | |
bool | eof () const |
Check for end-of-file condition. More... | |
![]() | |
void | bindInterface (std::string const &iface) const |
Bind socket to specific interface. More... | |
std::string | bindInterface () |
Get bound interface. More... | |
![]() | |
std::pair< bool, unsigned > | linger () const |
Return current linger status. More... | |
void | linger (bool enable, unsigned timeout=0) const |
Change linger status. More... | |
boost::uint8_t | priority () const |
Get packet priority assigned to outgoing packets. More... | |
void | priority (boost::uint8_t value) const |
Set packet priority (e.g. TOS) More... | |
int | error () const |
Get and clear pending socket error. More... | |
unsigned | rcvbuf () const |
Check receive buffer size. More... | |
void | rcvbuf (unsigned size) const |
Change receive buffer size. More... | |
unsigned | sndbuf () const |
Check send buffer size. More... | |
void | sndbuf (unsigned size) const |
Change size of send buffer. More... | |
template<unsigned short N> | |
void | attachSocketFilter (::sock_filter(&filter)[N]) |
void | detachSocketFilter () |
void | mtuDiscovery (int mode) const |
void | rcvLowat (unsigned lowWat) const |
void | sndLowat (unsigned lowWat) const |
![]() | |
void | timestamp (struct timespec *spec) const |
Return packet timestamp of last packet. More... | |
ClockService::clock_type | timestamp () const |
Return packet timestamp of last packet. More... | |
![]() | |
bool | reuseaddr () const |
Return current reuseaddr state. More... | |
void | reuseaddr (bool value) const |
Set reuseraddr state. More... | |
![]() | |
ClientSocketHandle< Policy > | clientHandle () const |
Get client handle for associated socket. More... | |
ServerSocketHandle< Policy > | serverHandle () const |
Get server handle for associated socket. More... | |
![]() | |
FileHandle | fh () const |
Get a FileHandle for this instance. More... | |
void | fd (int) const |
Initialize file descriptor. More... | |
IPv6 RAW Socket Protocol, connected.
ConnectedRawV6SocketProtocol provides an internet protocol raw socket based on IPv6 addressing which is connected to certain peer. This socket will put data written to it onto the IPv6 layer: if you call writeto don't include the header! On the other hand read
will return the packet data on top of the IPv6 layer, excluding the IP header. Note: This behaviour is differs from the behaviour of IPv4 RAW sockets.
This class is utilized as the protocol class of the ProtocolClientSocketHandle via the Socket Handle typedefs above.
Definition at line 150 of file ConnectedRawINetSocketHandle.hh.
void senf::ConnectedRawV6SocketProtocol::init_client | ( | ) | const |
Create unconnected client socket for IPPROTO_RAW.
Definition at line 57 of file ConnectedRawINetSocketHandle.cc.
void senf::ConnectedRawV6SocketProtocol::init_client | ( | int const & | protocol | ) | const |
Create unconnected client socket for protocol.
Definition at line 63 of file ConnectedRawINetSocketHandle.cc.
void senf::ConnectedRawV6SocketProtocol::init_client | ( | int const & | protocol, |
INet6SocketAddress const & | address | ||
) | const |
Create client socket and connect.
Creates a new client socket for the given protocol and connects to the given address.
[in] | protocol | Layer 4 protocol to filter for / to send |
[in] | address | local address to connect to |
Definition at line 73 of file ConnectedRawINetSocketHandle.cc.