diff options
author | kib <kib@FreeBSD.org> | 2019-09-17 18:49:13 +0000 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2019-09-25 09:01:28 +0200 |
commit | 7e9b1550fd1c9690bc560404388ba4907d10996a (patch) | |
tree | 8825bca4a805347216803058024b1adf876c84d7 /newlib | |
parent | 1b356361196fe3095717c91b669976bb91e998ec (diff) | |
download | newlib-7e9b1550fd1c9690bc560404388ba4907d10996a.zip newlib-7e9b1550fd1c9690bc560404388ba4907d10996a.tar.gz newlib-7e9b1550fd1c9690bc560404388ba4907d10996a.tar.bz2 |
Add SIOCGIFDOWNREASON.
The ioctl(2) is intended to provide more details about the cause of
the down for the link.
Eventually we might define a comprehensive list of codes for the
situations. But interface also allows the driver to provide free-form
null-terminated ASCII string to provide arbitrary non-formalized
information. Sample implementation exists for mlx5(4), where the
string is fetched from firmware controlling the port.
Reviewed by: hselasky, rrs
Sponsored by: Mellanox Technologies
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D21527
Diffstat (limited to 'newlib')
-rw-r--r-- | newlib/libc/sys/rtems/include/net/if.h | 12 | ||||
-rw-r--r-- | newlib/libc/sys/rtems/include/sys/sockio.h | 4 |
2 files changed, 14 insertions, 2 deletions
diff --git a/newlib/libc/sys/rtems/include/net/if.h b/newlib/libc/sys/rtems/include/net/if.h index a5539bd..c7c5e86 100644 --- a/newlib/libc/sys/rtems/include/net/if.h +++ b/newlib/libc/sys/rtems/include/net/if.h @@ -29,7 +29,7 @@ * SUCH DAMAGE. * * @(#)if.h 8.1 (Berkeley) 6/10/93 - * $FreeBSD: head/sys/net/if.h 340968 2018-11-26 13:42:18Z markj $ + * $FreeBSD: head/sys/net/if.h 352458 2019-09-17 18:49:13Z kib $ */ #ifndef _NET_IF_H_ @@ -585,6 +585,16 @@ struct ifrsshash { #define IFNET_PCP_NONE 0xff /* PCP disabled */ +#define IFDR_MSG_SIZE 64 +#define IFDR_REASON_MSG 1 +#define IFDR_REASON_VENDOR 2 +struct ifdownreason { + char ifdr_name[IFNAMSIZ]; + uint32_t ifdr_reason; + uint32_t ifdr_vendor; + char ifdr_msg[IFDR_MSG_SIZE]; +}; + #endif /* __BSD_VISIBLE */ #ifndef _KERNEL diff --git a/newlib/libc/sys/rtems/include/sys/sockio.h b/newlib/libc/sys/rtems/include/sys/sockio.h index 786202a..7f33ffa 100644 --- a/newlib/libc/sys/rtems/include/sys/sockio.h +++ b/newlib/libc/sys/rtems/include/sys/sockio.h @@ -29,7 +29,7 @@ * SUCH DAMAGE. * * @(#)sockio.h 8.1 (Berkeley) 3/28/94 - * $FreeBSD: head/sys/sys/sockio.h 331622 2018-03-27 15:29:32Z kib $ + * $FreeBSD: head/sys/sys/sockio.h 352458 2019-09-17 18:49:13Z kib $ */ #ifndef _SYS_SOCKIO_H_ @@ -143,4 +143,6 @@ #define SIOCGLANPCP _IOWR('i', 152, struct ifreq) /* Get (V)LAN PCP */ #define SIOCSLANPCP _IOW('i', 153, struct ifreq) /* Set (V)LAN PCP */ +#define SIOCGIFDOWNREASON _IOWR('i', 154, struct ifdownreason) + #endif /* !_SYS_SOCKIO_H_ */ |