From 835fc32a3ae2bfcbb7c4b16dbbe3fc5906fd99d1 Mon Sep 17 00:00:00 2001 From: Corinna Vinschen Date: Tue, 16 Jan 2007 12:01:36 +0000 Subject: * fhandler_socket.cc (fhandler_socket::ioctl): Handle SIOCGIFINDEX. * net.cc (get_2k_ifconf): Ditto. (get_nt_ifconf): Fake SIOCGIFINDEX. (get_95_ifconf): Ditto. (get_ifconf): Handle SIOCGIFINDEX. Fake it for loopback on systems not supporting IP Helper Lib. * include/asm/socket.h (SIOCGIFINDEX): Define. * include/cygwin/if.h (struct ifreq): Add member for interface index. (ifr_ifindex): Define. --- winsup/cygwin/include/asm/socket.h | 3 ++- winsup/cygwin/include/cygwin/if.h | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) (limited to 'winsup/cygwin/include') diff --git a/winsup/cygwin/include/asm/socket.h b/winsup/cygwin/include/asm/socket.h index ed062190c..637cec294 100644 --- a/winsup/cygwin/include/asm/socket.h +++ b/winsup/cygwin/include/asm/socket.h @@ -1,6 +1,6 @@ /* asm/socket.h - Copyright 1996, 1997, 1998, 2001 Red Hat, Inc. + Copyright 1996, 1997, 1998, 2001, 2005, 2007 Red Hat, Inc. This file is part of Cygwin. @@ -41,6 +41,7 @@ details. */ #define SIOCGIFHWADDR _IOW('s', 105, struct ifreq) /* Get hw addr */ #define SIOCGIFMETRIC _IOW('s', 106, struct ifreq) /* get metric */ #define SIOCGIFMTU _IOW('s', 107, struct ifreq) /* get MTU size */ +#define SIOCGIFINDEX _IOW('s', 108, struct ifreq) /* get if index */ #define SOL_SOCKET 0xffff /* options for socket level */ diff --git a/winsup/cygwin/include/cygwin/if.h b/winsup/cygwin/include/cygwin/if.h index b0953de36..fe36afcf2 100644 --- a/winsup/cygwin/include/cygwin/if.h +++ b/winsup/cygwin/include/cygwin/if.h @@ -1,6 +1,6 @@ /* cygwin/if.h - Copyright 1996, 2001 Red Hat, Inc. + Copyright 1996, 2001, 2007 Red Hat, Inc. This file is part of Cygwin. @@ -51,6 +51,7 @@ struct ifreq short ifru_flags; int ifru_metric; int ifru_mtu; + int ifru_ifindex; } ifr_ifru; }; @@ -62,7 +63,7 @@ struct ifreq #define ifr_hwaddr ifr_ifru.ifru_hwaddr /* MAC address */ #define ifr_metric ifr_ifru.ifru_metric /* metric */ #define ifr_mtu ifr_ifru.ifru_mtu /* mtu */ - +#define ifr_ifindex ifr_ifru.ifru_ifindex /* interface index */ /* * Structure used in SIOCGIFCONF request. -- cgit v1.2.3