ifaddrs: add union ifa_ifu include ifu_broadaddr and ifu_dstaddr
In order to support the compilation of third-party library, we encounter some situations where the macro is not defined, refer to the common implementation of other systems and add relevant definitions. Signed-off-by: zhanghongyu <zhanghongyu@xiaomi.com>
This commit is contained in:
parent
6ee9ec7656
commit
08b92ef7cf
@ -32,7 +32,10 @@
|
|||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
#ifndef ifa_broadaddr
|
#ifndef ifa_broadaddr
|
||||||
#define ifa_broadaddr ifa_dstaddr /* broadcast address interface */
|
# define ifa_broadaddr ifa_ifu.ifu_broadaddr /* Broadcast address of this interface. */
|
||||||
|
#endif
|
||||||
|
#ifndef ifa_dstaddr
|
||||||
|
# define ifa_dstaddr ifa_ifu.ifu_dstaddr /* Point-to-point destination address. */
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
@ -46,7 +49,17 @@ struct ifaddrs
|
|||||||
unsigned int ifa_flags;
|
unsigned int ifa_flags;
|
||||||
FAR struct sockaddr *ifa_addr;
|
FAR struct sockaddr *ifa_addr;
|
||||||
FAR struct sockaddr *ifa_netmask;
|
FAR struct sockaddr *ifa_netmask;
|
||||||
FAR struct sockaddr *ifa_dstaddr;
|
union
|
||||||
|
{
|
||||||
|
/* At most one of the following two is valid. If the IFF_BROADCAST
|
||||||
|
* bit is set in `ifa_flags', then `ifa_broadaddr' is valid. If the
|
||||||
|
* IFF_POINTOPOINT bit is set, then `ifa_dstaddr' is valid.
|
||||||
|
* It is never the case that both these bits are set at once.
|
||||||
|
*/
|
||||||
|
|
||||||
|
FAR struct sockaddr *ifu_broadaddr; /* Broadcast address of this interface. */
|
||||||
|
FAR struct sockaddr *ifu_dstaddr; /* Point-to-point destination address. */
|
||||||
|
} ifa_ifu;
|
||||||
FAR void *ifa_data;
|
FAR void *ifa_data;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user