Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkib <kib@FreeBSD.org>2019-09-17 21:49:13 +0300
committerSebastian Huber <sebastian.huber@embedded-brains.de>2019-09-25 10:01:28 +0300
commit7e9b1550fd1c9690bc560404388ba4907d10996a (patch)
tree8825bca4a805347216803058024b1adf876c84d7
parent1b356361196fe3095717c91b669976bb91e998ec (diff)
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
-rw-r--r--newlib/libc/sys/rtems/include/net/if.h12
-rw-r--r--newlib/libc/sys/rtems/include/sys/sockio.h4
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 a5539bdcd..c7c5e8669 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 786202a58..7f33ffaef 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_ */