iphlpapi: Check for the right TCP statistics structure name (for DragonFly BSD).
This commit is contained in:
parent
cecf1056bb
commit
eaab7a88f4
|
@ -14086,6 +14086,34 @@ _ACEOF
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
ac_fn_c_check_member "$LINENO" "struct tcpstat" "tcps_connattempt" "ac_cv_member_struct_tcpstat_tcps_connattempt" "#ifdef HAVE_NETINET_TCP_VAR_H
|
||||||
|
#include <netinet/tcp_var.h>
|
||||||
|
#endif
|
||||||
|
"
|
||||||
|
if test "x$ac_cv_member_struct_tcpstat_tcps_connattempt" = xyes; then :
|
||||||
|
|
||||||
|
cat >>confdefs.h <<_ACEOF
|
||||||
|
#define HAVE_STRUCT_TCPSTAT_TCPS_CONNATTEMPT 1
|
||||||
|
_ACEOF
|
||||||
|
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
ac_fn_c_check_member "$LINENO" "struct tcp_stats" "tcps_connattempt" "ac_cv_member_struct_tcp_stats_tcps_connattempt" "#ifdef HAVE_NETINET_TCP_VAR_H
|
||||||
|
#include <netinet/tcp_var.h>
|
||||||
|
#endif
|
||||||
|
"
|
||||||
|
if test "x$ac_cv_member_struct_tcp_stats_tcps_connattempt" = xyes; then :
|
||||||
|
|
||||||
|
cat >>confdefs.h <<_ACEOF
|
||||||
|
#define HAVE_STRUCT_TCP_STATS_TCPS_CONNATTEMPT 1
|
||||||
|
_ACEOF
|
||||||
|
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
ac_fn_c_check_member "$LINENO" "struct ifreq" "ifr_hwaddr" "ac_cv_member_struct_ifreq_ifr_hwaddr" "#ifdef HAVE_SYS_TYPES_H
|
ac_fn_c_check_member "$LINENO" "struct ifreq" "ifr_hwaddr" "ac_cv_member_struct_ifreq_ifr_hwaddr" "#ifdef HAVE_SYS_TYPES_H
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
12
configure.ac
12
configure.ac
|
@ -2324,6 +2324,18 @@ AC_CHECK_MEMBERS([struct ip_stats.ips_total],,,
|
||||||
#include <netinet/ip_var.h>
|
#include <netinet/ip_var.h>
|
||||||
#endif])
|
#endif])
|
||||||
|
|
||||||
|
dnl Check for struct tcpstat
|
||||||
|
AC_CHECK_MEMBERS([struct tcpstat.tcps_connattempt],,,
|
||||||
|
[#ifdef HAVE_NETINET_TCP_VAR_H
|
||||||
|
#include <netinet/tcp_var.h>
|
||||||
|
#endif])
|
||||||
|
|
||||||
|
dnl Check for struct tcp_stats
|
||||||
|
AC_CHECK_MEMBERS([struct tcp_stats.tcps_connattempt],,,
|
||||||
|
[#ifdef HAVE_NETINET_TCP_VAR_H
|
||||||
|
#include <netinet/tcp_var.h>
|
||||||
|
#endif])
|
||||||
|
|
||||||
dnl Check for struct ifreq.ifr_hwaddr
|
dnl Check for struct ifreq.ifr_hwaddr
|
||||||
AC_CHECK_MEMBERS([struct ifreq.ifr_hwaddr],,,
|
AC_CHECK_MEMBERS([struct ifreq.ifr_hwaddr],,,
|
||||||
[#ifdef HAVE_SYS_TYPES_H
|
[#ifdef HAVE_SYS_TYPES_H
|
||||||
|
|
|
@ -812,7 +812,7 @@ DWORD WINAPI GetTcpStatistics(PMIB_TCPSTATS stats)
|
||||||
}
|
}
|
||||||
if (kc) kstat_close( kc );
|
if (kc) kstat_close( kc );
|
||||||
}
|
}
|
||||||
#elif defined(HAVE_SYS_SYSCTL_H) && defined(UDPCTL_STATS)
|
#elif defined(HAVE_SYS_SYSCTL_H) && defined(TCPCTL_STATS) && (HAVE_STRUCT_TCPSTAT_TCPS_CONNATTEMPT || HAVE_STRUCT_TCP_STATS_TCPS_CONNATTEMPT)
|
||||||
{
|
{
|
||||||
#ifndef TCPTV_MIN /* got removed in Mac OS X for some reason */
|
#ifndef TCPTV_MIN /* got removed in Mac OS X for some reason */
|
||||||
#define TCPTV_MIN 2
|
#define TCPTV_MIN 2
|
||||||
|
@ -821,7 +821,11 @@ DWORD WINAPI GetTcpStatistics(PMIB_TCPSTATS stats)
|
||||||
int mib[] = {CTL_NET, PF_INET, IPPROTO_TCP, TCPCTL_STATS};
|
int mib[] = {CTL_NET, PF_INET, IPPROTO_TCP, TCPCTL_STATS};
|
||||||
#define MIB_LEN (sizeof(mib) / sizeof(mib[0]))
|
#define MIB_LEN (sizeof(mib) / sizeof(mib[0]))
|
||||||
#define hz 1000
|
#define hz 1000
|
||||||
|
#if HAVE_STRUCT_TCPSTAT_TCPS_CONNATTEMPT
|
||||||
struct tcpstat tcp_stat;
|
struct tcpstat tcp_stat;
|
||||||
|
#elif HAVE_STRUCT_TCP_STATS_TCPS_CONNATTEMPT
|
||||||
|
struct tcp_stats tcp_stat;
|
||||||
|
#endif
|
||||||
size_t needed = sizeof(tcp_stat);
|
size_t needed = sizeof(tcp_stat);
|
||||||
|
|
||||||
if(sysctl(mib, MIB_LEN, &tcp_stat, &needed, NULL, 0) != -1)
|
if(sysctl(mib, MIB_LEN, &tcp_stat, &needed, NULL, 0) != -1)
|
||||||
|
|
|
@ -857,6 +857,12 @@
|
||||||
/* Define to 1 if `st_mtim' is a member of `struct stat'. */
|
/* Define to 1 if `st_mtim' is a member of `struct stat'. */
|
||||||
#undef HAVE_STRUCT_STAT_ST_MTIM
|
#undef HAVE_STRUCT_STAT_ST_MTIM
|
||||||
|
|
||||||
|
/* Define to 1 if `tcps_connattempt' is a member of `struct tcpstat'. */
|
||||||
|
#undef HAVE_STRUCT_TCPSTAT_TCPS_CONNATTEMPT
|
||||||
|
|
||||||
|
/* Define to 1 if `tcps_connattempt' is a member of `struct tcp_stats'. */
|
||||||
|
#undef HAVE_STRUCT_TCP_STATS_TCPS_CONNATTEMPT
|
||||||
|
|
||||||
/* Define to 1 if the system has the type `struct xinpgen'. */
|
/* Define to 1 if the system has the type `struct xinpgen'. */
|
||||||
#undef HAVE_STRUCT_XINPGEN
|
#undef HAVE_STRUCT_XINPGEN
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue