mn_socket.hpp
Go to the documentation of this file.
1 /*
2 *This file is part of the Mini Thread Library (https://github.com/RoseLeBlood/MiniThread ).
3 *Copyright (c) 2018 Amber-Sophia Schroeck
4 *
5 *The Mini Thread Library is free software; you can redistribute it and/or modify
6 *it under the terms of the GNU Lesser General Public License as published by
7 *the Free Software Foundation, version 3, or (at your option) any later version.
8 
9 *The Mini Thread Library is distributed in the hope that it will be useful, but
10 *WITHOUT ANY WARRANTY; without even the implied warranty of
11 *MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 *General Public License for more details.
13 *
14 *You should have received a copy of the GNU Lesser General Public
15 *License along with the Mini Thread Library; if not, see
16 *<https://www.gnu.org/licenses/>.
17 */
18 #ifndef _MINILIB_SOCKET_BASE_H_
19 #define _MINILIB_SOCKET_BASE_H_
20 
21 #include "mn_basic_endpoint.hpp"
26 
27 namespace mn {
28  namespace net {
44 
50 
51 
57 
63  #if LWIP_UDP && LWIP_UDPLITE
68  using dgramlite_ip4_socket = basic_dgramlite_ip_socket;
73  using multicast_ip4_socket_lite = basic_multicast_lite_ip_socket;
74  #endif // LWIP_UDP
75 
76 
77 
78 #if MN_THREAD_CONFIG_NET_IPADDRESS6_ENABLE == MN_THREAD_CONFIG_YES
104  #if LWIP_UDP && LWIP_UDPLITE
109  using dgramlite_ip6_socket = basic_dgramlite_ip6_socket;
110  #endif // LWIP_UDP
111 #endif // MN_THREAD_CONFIG_NET_IPADDRESS6_ENABLE
112 
113  }
114 }
115 
116 #endif
Basic dram socket class.
Definition: mn_basic_dgram_socket.hpp:121
Basic dram socket class.
Definition: mn_basic_dgram_socket.hpp:32
This class represents an internet (IP) version 6 host address.
Definition: mn_basic_ip4_address.hpp:38
Definition: mn_basic_ip4_endpoint.hpp:36
This class represents an internet (IP) version 6 host address.
Definition: mn_basic_ip6_address.hpp:49
This class represents an IPv6 endpoint/socket address.
Definition: mn_basic_ip6_endpoint.hpp:41
A multicast_ip_socket is a special dgram_ip_socket that can be used to send packets to and receive pa...
Definition: mn_basic_multicast_ip_socket.hpp:30
This class provides an interface to a raw IPv4 socket.
Definition: mn_basic_raw_ip_socket.hpp:33
This class provides an interface to a raw IPv6 socket.
Definition: mn_basic_raw_ip_socket.hpp:189
This class provides an interface to a tcp IPv6 socket.
Definition: mn_basic_stream_ip_socket.hpp:118
This class provides an interface to a tcp IPv4 socket.
Definition: mn_basic_stream_ip_socket.hpp:32
Definition: mn_allocator_typetraits.hpp:25