diff src/win32/libc_internal.h @ 11364:e1840eb860e7

[gaim-migrate @ 13588] Make the stun stuff compile on win32. This is largely untested since this code will not currently ever be called, but it compiles. This is based on a patch from Fran?ois Gagn?." committer: Tailor Script <tailor@pidgin.im>
author Daniel Atallah <daniel.atallah@gmail.com>
date Tue, 30 Aug 2005 00:32:32 +0000
parents 9657e243d001
children d59225f62362
line wrap: on
line diff
--- a/src/win32/libc_internal.h	Mon Aug 29 21:48:22 2005 +0000
+++ b/src/win32/libc_internal.h	Tue Aug 30 00:32:32 2005 +0000
@@ -27,6 +27,63 @@
 #define F_SETFL 1
 #define O_NONBLOCK 1
 
+/* ioctl.h */
+#define SIOCGIFCONF 0x8912 /* get iface list */
+
+/* net/if.h */
+struct ifreq
+{
+	union
+	{
+		char ifrn_name[6];	/* Interface name, e.g. "en0".  */
+	} ifr_ifrn;
+
+	union
+	{
+		struct sockaddr ifru_addr;
+#if 0
+		struct sockaddr ifru_dstaddr;
+		struct sockaddr ifru_broadaddr;
+		struct sockaddr ifru_netmask;
+		struct sockaddr ifru_hwaddr;
+		short int ifru_flags;
+		int ifru_ivalue;
+		int ifru_mtu;
+#endif
+		char *ifru_data;
+	} ifr_ifru;
+};
+# define ifr_name	ifr_ifrn.ifrn_name	/* interface name       */
+# define ifr_addr	ifr_ifru.ifru_addr      /* address              */
+#if 0
+# define ifr_hwaddr	ifr_ifru.ifru_hwaddr	/* MAC address          */
+# define ifr_dstaddr	ifr_ifru.ifru_dstaddr	/* other end of p-p lnk */
+# define ifr_broadaddr	ifr_ifru.ifru_broadaddr	/* broadcast address    */
+# define ifr_netmask	ifr_ifru.ifru_netmask	/* interface net mask   */
+# define ifr_flags	ifr_ifru.ifru_flags	/* flags                */
+# define ifr_metric	ifr_ifru.ifru_ivalue	/* metric               */
+# define ifr_mtu	ifr_ifru.ifru_mtu	/* mtu                  */
+#endif
+# define ifr_data	ifr_ifru.ifru_data	/* for use by interface */
+#if 0
+# define ifr_ifindex	ifr_ifru.ifru_ivalue	/* interface index      */
+# define ifr_bandwidth	ifr_ifru.ifru_ivalue	/* link bandwidth       */
+# define ifr_qlen	ifr_ifru.ifru_ivalue	/* queue length         */
+#endif
+
+
+struct ifconf
+{
+	int ifc_len;			/* Size of buffer.  */
+	union
+	{
+		char *ifcu_buf;
+		struct ifreq *ifcu_req;
+	} ifc_ifcu;
+};
+# define ifc_buf ifc_ifcu.ifcu_buf /* Buffer address.  */
+# define ifc_req ifc_ifcu.ifcu_req /* Array of structures.  */
+
 /* sys/time.h */
 struct timezone {
 	int tz_minuteswest;