1#ifndef __VSF_LINUX_IFADDRS_H__
2#define __VSF_LINUX_IFADDRS_H__
6#if VSF_LINUX_CFG_RELATIVE_PATH == ENABLED
7# include "../sys/types.h"
8# include "../sys/socket.h"
38# define ifa_broadaddr ifa_ifu.ifu_broadaddr
41# define ifa_dstaddr ifa_ifu.ifu_dstaddr
47#if VSF_LINUX_CFG_WRAPPER == ENABLED
48#define getifaddrs VSF_LINUX_WRAPPER(getifaddrs)
49#define freeifaddrs VSF_LINUX_WRAPPER(freeifaddrs)
52#if VSF_LINUX_APPLET_USE_IFADDRS == ENABLED
59# ifndef __VSF_APPLET__
64#if defined(__VSF_APPLET__) && (defined(__VSF_APPLET_LIB__) || defined(__VSF_APPLET_LINUX_IFADDRS_LIB__))\
65 && VSF_APPLET_CFG_ABI_PATCH != ENABLED && VSF_LINUX_APPLET_USE_IFADDRS == ENABLED
67#ifndef VSF_LINUX_APPLET_IFADDRS_VPLT
68# if VSF_LINUX_USE_APPLET == ENABLED
69# define VSF_LINUX_APPLET_IFADDRS_VPLT \
70 ((vsf_linux_ifaddrs_vplt_t *)(VSF_LINUX_APPLET_VPLT->ifaddrs_vplt))
72# define VSF_LINUX_APPLET_IFADDRS_VPLT \
73 ((vsf_linux_ifaddrs_vplt_t *)vsf_vplt((void *)0))
77#define VSF_LINUX_APPLET_IFADDRS_ENTRY(__NAME) \
78 VSF_APPLET_VPLT_ENTRY_FUNC_ENTRY(VSF_LINUX_APPLET_IFADDRS_VPLT, __NAME)
79#define VSF_LINUX_APPLET_IFADDRS_IMP(...) \
80 VSF_APPLET_VPLT_ENTRY_FUNC_IMP(VSF_LINUX_APPLET_IFADDRS_VPLT, __VA_ARGS__)
84 return VSF_LINUX_APPLET_IFADDRS_ENTRY(
getifaddrs)(ifa);
#define freeifaddrs
Definition ifaddrs.h:49
__VSF_VPLT_DECORATOR__ vsf_linux_ifaddrs_vplt_t vsf_linux_ifaddrs_vplt
Definition vsf_linux_socket.c:734
net_device_flags
Definition ifaddrs.h:18
@ IFF_UP
Definition ifaddrs.h:19
@ IFF_DEBUG
Definition ifaddrs.h:21
@ IFF_BROADCAST
Definition ifaddrs.h:20
@ IFF_RUNNING
Definition ifaddrs.h:23
@ IFF_LOOPBACK
Definition ifaddrs.h:22
#define getifaddrs
Definition ifaddrs.h:48
struct sockaddr * ifa_addr
Definition ifaddrs.h:31
unsigned int ifa_flags
Definition ifaddrs.h:29
char * ifa_name
Definition ifaddrs.h:28
struct sockaddr * ifs_dstaddr
Definition ifaddrs.h:35
struct ifaddrs * ifa_next
Definition ifaddrs.h:27
union ifaddrs::@842 ifa_ifu
void * ifa_data
Definition ifaddrs.h:44
struct sockaddr * ifa_netmask
Definition ifaddrs.h:32
struct sockaddr * ifu_broadaddr
Definition ifaddrs.h:34
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(freeifaddrs)
vsf_vplt_info_t info
Definition ifaddrs.h:54
VSF_APPLET_VPLT_ENTRY_FUNC_DEF(getifaddrs)
#define __VSF_VPLT_DECORATOR__
Definition vsf_cfg.h:93
#define VSF_APPLET_VPLT_ENTRY_FUNC_TRACE()
Definition vsf_cfg.h:165