mirror of
https://github.com/apache/nuttx-apps.git
synced 2025-10-25 04:26:37 +08:00
Replace self defined macros with NET_SOCK_[FAMILY|TYPE|PROTOCOL]
NET_SOCK_* is defined by nuttx/net/netconfig.h and then can be shared Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
This commit is contained in:
committed by
Gustavo Henrique Nihei
parent
fcd69d1cdf
commit
66dbaa4539
@@ -79,95 +79,6 @@
|
||||
# define IPv6_ROUTE_PATH CONFIG_NETLIB_PROCFS_MOUNTPT "/net/route/ipv6"
|
||||
#endif
|
||||
|
||||
/* Using the following definitions, the following socket() arguments should
|
||||
* provide a valid socket in all configurations:
|
||||
*
|
||||
* ret = socket(NETLIB_SOCK_FAMILY, NETLIB_SOCK_TYPE,
|
||||
* NETLIB_SOCK_PROTOCOL);
|
||||
*/
|
||||
|
||||
/* The address family that we used to create the socket really does not
|
||||
* matter. It should, however, be valid in the current configuration.
|
||||
*/
|
||||
|
||||
#if defined(CONFIG_NET_IPv4)
|
||||
# define NETLIB_SOCK_FAMILY AF_INET
|
||||
#elif defined(CONFIG_NET_IPv6)
|
||||
# define NETLIB_SOCK_FAMILY AF_INET6
|
||||
#elif defined(CONFIG_NET_LOCAL)
|
||||
# define NETLIB_SOCK_FAMILY AF_LOCAL
|
||||
#elif defined(CONFIG_NET_PKT)
|
||||
# define NETLIB_SOCK_FAMILY AF_PACKET
|
||||
#elif defined(CONFIG_NET_CAN)
|
||||
# define NETLIB_SOCK_FAMILY AF_CAN
|
||||
#elif defined(CONFIG_NET_IEEE802154)
|
||||
# define NETLIB_SOCK_FAMILY AF_IEEE802154
|
||||
#elif defined(CONFIG_WIRELESS_PKTRADIO)
|
||||
# define NETLIB_SOCK_FAMILY AF_PKTRADIO
|
||||
#elif defined(CONFIG_NET_BLUETOOTH)
|
||||
# define NETLIB_SOCK_FAMILY AF_BLUETOOTH
|
||||
#elif defined(CONFIG_NET_USRSOCK)
|
||||
# define NETLIB_SOCK_FAMILY AF_INET
|
||||
#elif defined(CONFIG_NET_NETLINK)
|
||||
# define NETLIB_SOCK_FAMILY AF_NETLINK
|
||||
#elif defined(CONFIG_NET_RPMSG)
|
||||
# define NETLIB_SOCK_FAMILY AF_RPMSG
|
||||
#else
|
||||
# define NETLIB_SOCK_FAMILY AF_UNSPEC
|
||||
#endif
|
||||
|
||||
/* Socket protocol of zero normally works */
|
||||
|
||||
#define NETLIB_SOCK_PROTOCOL 0
|
||||
|
||||
/* SOCK_DGRAM is the preferred socket type to use when we just want a
|
||||
* socket for performing driver ioctls. However, we can't use SOCK_DRAM
|
||||
* if UDP is disabled.
|
||||
*
|
||||
* Pick a socket type (and perhaps protocol) compatible with the currently
|
||||
* selected address family.
|
||||
*/
|
||||
|
||||
#if NETLIB_SOCK_FAMILY == AF_INET
|
||||
# if defined(CONFIG_NET_UDP)
|
||||
# define NETLIB_SOCK_TYPE SOCK_DGRAM
|
||||
# elif defined(CONFIG_NET_TCP)
|
||||
# define NETLIB_SOCK_TYPE SOCK_STREAM
|
||||
# elif defined(CONFIG_NET_ICMP_SOCKET)
|
||||
# define NETLIB_SOCK_TYPE SOCK_DGRAM
|
||||
# undef NETLIB_SOCK_PROTOCOL
|
||||
# define NETLIB_SOCK_PROTOCOL IPPROTO_ICMP
|
||||
# endif
|
||||
#elif NETLIB_SOCK_FAMILY == AF_INET6
|
||||
# if defined(CONFIG_NET_UDP)
|
||||
# define NETLIB_SOCK_TYPE SOCK_DGRAM
|
||||
# elif defined(CONFIG_NET_TCP)
|
||||
# define NETLIB_SOCK_TYPE SOCK_STREAM
|
||||
# elif defined(CONFIG_NET_ICMPv6_SOCKET)
|
||||
# define NETLIB_SOCK_TYPE SOCK_DGRAM
|
||||
# undef NETLIB_SOCK_PROTOCOL
|
||||
# define NETLIB_SOCK_PROTOCOL IPPROTO_ICMP6
|
||||
# endif
|
||||
#elif NETLIB_SOCK_FAMILY == AF_LOCAL
|
||||
# if defined(CONFIG_NET_LOCAL_DGRAM)
|
||||
# define NETLIB_SOCK_TYPE SOCK_DGRAM
|
||||
# elif defined(CONFIG_NET_LOCAL_STREAM)
|
||||
# define NETLIB_SOCK_TYPE SOCK_STREAM
|
||||
# endif
|
||||
#elif NETLIB_SOCK_FAMILY == AF_PACKET
|
||||
# define NETLIB_SOCK_TYPE SOCK_RAW
|
||||
#elif NETLIB_SOCK_FAMILY == AF_CAN
|
||||
# define NETLIB_SOCK_TYPE SOCK_RAW
|
||||
#elif NETLIB_SOCK_FAMILY == AF_IEEE802154
|
||||
# define NETLIB_SOCK_TYPE SOCK_DGRAM
|
||||
#elif NETLIB_SOCK_FAMILY == AF_BLUETOOTH
|
||||
# define NETLIB_SOCK_TYPE SOCK_RAW
|
||||
#elif NETLIB_SOCK_FAMILY == AF_NETLINK
|
||||
# define NETLIB_SOCK_TYPE SOCK_DGRAM
|
||||
#elif NETLIB_SOCK_FAMILY == AF_RPMSG
|
||||
# define NETLIB_SOCK_TYPE SOCK_STREAM
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
* Public Types
|
||||
****************************************************************************/
|
||||
|
||||
Reference in New Issue
Block a user