IPv6 raw socket. More...
#include <ipv6-raw-socket-impl.h>
Classes | |
struct | Data |
IPv6 raw data and additionnal information. | |
Public Member Functions | |
Ipv6RawSocketImpl () | |
Constructor. | |
virtual | ~Ipv6RawSocketImpl () |
Destructor. | |
void | SetNode (Ptr< Node > node) |
Set the node. | |
virtual enum Socket::SocketErrno | GetErrno () const |
Get last error number. | |
virtual Ptr< Node > | GetNode () const |
Get node. | |
virtual int | Bind (const Address &address) |
Bind the socket to address. | |
virtual int | Bind () |
Bind socket. | |
virtual int | GetSockName (Address &address) const |
Get socket address. | |
virtual int | Close () |
Close the socket. | |
virtual int | ShutdownSend () |
Shutdown send capability. | |
virtual int | ShutdownRecv () |
Shutdown receive capability. | |
virtual int | Connect (const Address &address) |
Connect to address. | |
virtual int | Listen () |
Listen. | |
virtual uint32_t | GetTxAvailable () const |
Get TX size available. | |
virtual uint32_t | GetRxAvailable () const |
Get RX size available. | |
virtual int | Send (Ptr< Packet > p, uint32_t flags) |
Send a packet. | |
virtual int | SendTo (Ptr< Packet > p, uint32_t flags, const Address &toAddress) |
Send a packet. | |
virtual Ptr< Packet > | Recv (uint32_t maxSize, uint32_t flags) |
Receive packet. | |
virtual Ptr< Packet > | RecvFrom (uint32_t maxSize, uint32_t flags, Address &fromAddress) |
Receive packet. | |
void | SetProtocol (uint16_t protocol) |
Set protocol field. | |
bool | ForwardUp (Ptr< const Packet > p, Ipv6Header hdr, Ptr< NetDevice > device) |
Forward up to receive method. | |
virtual bool | SetAllowBroadcast (bool allowBroadcast) |
Configure whether broadcast datagram transmissions are allowed. | |
virtual bool | GetAllowBroadcast () const |
Query whether broadcast datagram transmissions are allowed. | |
Static Public Member Functions | |
static TypeId | GetTypeId () |
Get the type ID of this class. |
IPv6 raw socket.
virtual int ns3::Ipv6RawSocketImpl::Bind | ( | const Address & | address | ) | [virtual] |
Bind the socket to address.
address | bind to this address |
Implements ns3::Socket.
virtual int ns3::Ipv6RawSocketImpl::Bind | ( | ) | [virtual] |
virtual int ns3::Ipv6RawSocketImpl::Close | ( | ) | [virtual] |
virtual int ns3::Ipv6RawSocketImpl::Connect | ( | const Address & | address | ) | [virtual] |
Connect to address.
address | address |
Implements ns3::Socket.
bool ns3::Ipv6RawSocketImpl::ForwardUp | ( | Ptr< const Packet > | p, | |
Ipv6Header | hdr, | |||
Ptr< NetDevice > | device | |||
) |
Forward up to receive method.
p | packet | |
hdr | IPv6 header | |
device | device |
virtual bool ns3::Ipv6RawSocketImpl::GetAllowBroadcast | ( | ) | const [virtual] |
Query whether broadcast datagram transmissions are allowed.
This method corresponds to using getsockopt() SO_BROADCAST of real network or BSD sockets.
Implements ns3::Socket.
virtual enum Socket::SocketErrno ns3::Ipv6RawSocketImpl::GetErrno | ( | ) | const [virtual] |
virtual uint32_t ns3::Ipv6RawSocketImpl::GetRxAvailable | ( | ) | const [virtual] |
virtual int ns3::Ipv6RawSocketImpl::GetSockName | ( | Address & | address | ) | const [virtual] |
Get socket address.
address | socket address if method success |
Implements ns3::Socket.
virtual uint32_t ns3::Ipv6RawSocketImpl::GetTxAvailable | ( | ) | const [virtual] |
static TypeId ns3::Ipv6RawSocketImpl::GetTypeId | ( | void | ) | [static] |
Get the type ID of this class.
This method returns the TypeId associated to ns3::Ipv6RawSocketImpl.
This object is accessible through the following paths with Config::Set and Config::Connect:
Attributes defined for this type:
No TraceSources defined for this type.
Reimplemented from ns3::Object.
virtual int ns3::Ipv6RawSocketImpl::Listen | ( | ) | [virtual] |
Receive packet.
maxSize | maximum size | |
flags | additionnal flags |
Implements ns3::Socket.
virtual Ptr<Packet> ns3::Ipv6RawSocketImpl::RecvFrom | ( | uint32_t | maxSize, | |
uint32_t | flags, | |||
Address & | fromAddress | |||
) | [virtual] |
Receive packet.
maxSize | maximum size | |
flags | additionnal flags | |
fromAddress | source address |
Implements ns3::Socket.
Send a packet.
p | packet to send | |
flags | additionnal flags |
Implements ns3::Socket.
virtual int ns3::Ipv6RawSocketImpl::SendTo | ( | Ptr< Packet > | p, | |
uint32_t | flags, | |||
const Address & | toAddress | |||
) | [virtual] |
Send a packet.
p | packet to send | |
flags | additionnal flags | |
toAddress | destination address |
Implements ns3::Socket.
virtual bool ns3::Ipv6RawSocketImpl::SetAllowBroadcast | ( | bool | allowBroadcast | ) | [virtual] |
Configure whether broadcast datagram transmissions are allowed.
This method corresponds to using setsockopt() SO_BROADCAST of real network or BSD sockets. If set on a socket, this option will enable or disable packets to be transmitted to broadcast destination addresses.
allowBroadcast | Whether broadcast is allowed |
Implements ns3::Socket.
Set the node.
node | node to set |
void ns3::Ipv6RawSocketImpl::SetProtocol | ( | uint16_t | protocol | ) |
Set protocol field.
protocol | protocol to set |
virtual int ns3::Ipv6RawSocketImpl::ShutdownRecv | ( | ) | [virtual] |
virtual int ns3::Ipv6RawSocketImpl::ShutdownSend | ( | ) | [virtual] |