]> sjero.net Git - iperf/blobdiff - include/headers.h
TCP Congestion Control Module via options
[iperf] / include / headers.h
index 5b534f742a3ac978bba8a7f6277565ca5f71a729..0ef1c2e231e53d1faa1da290fc0f5df528baf65f 100644 (file)
@@ -126,15 +126,9 @@ SPECIAL_OSF1_EXTERN_C_STOP
     #define INET_ADDRSTRLEN 15
 #endif
 
-//#ifdef __cplusplus
-    #ifdef HAVE_IPV6
-        #define REPORT_ADDRLEN (INET6_ADDRSTRLEN + 1)
-typedef struct sockaddr_storage iperf_sockaddr;
-    #else
-        #define REPORT_ADDRLEN (INET_ADDRSTRLEN + 1)
-typedef struct sockaddr_in iperf_sockaddr;
-    #endif
-//#endif
+// All addresses use struct sockaddr_storage, for compatibility with both v4/v6
+// The maximum report length is the maximum host name length for getnameinfo(3).
+#define REPORT_ADDRLEN (NI_MAXHOST + 1)
 
 // Rationalize stdint definitions and sizeof, thanks to ac_create_stdint_h.m4
 // from the gnu archive
@@ -153,6 +147,11 @@ typedef uintmax_t max_size_t;
     #define SHUT_RDWR 2
 #endif // SHUT_RD
 
+/* Plug-able TCP congestion control algorithm */
+#ifndef TCP_CONGESTION
+#define TCP_CONGESTION  13      /* include/linux/tcp.h */
+#endif
+
 /* DCCP-specific definitions */
 #include <linux/dccp.h>
 #ifndef SOCK_DCCP