[netperf-dev] netperf2 commit notice r340 - in trunk: . src
raj at netperf.org
raj at netperf.org
Wed Oct 14 16:55:47 PDT 2009
Author: raj
Date: 2009-10-14 16:55:45 -0700 (Wed, 14 Oct 2009)
New Revision: 340
Modified:
trunk/Release_Notes
trunk/src/netlib.c
trunk/src/netsh.c
trunk/src/nettest_bsd.c
trunk/src/nettest_bsd.h
Log:
begin integrating RDS
Modified: trunk/Release_Notes
===================================================================
--- trunk/Release_Notes 2009-10-08 21:36:07 UTC (rev 339)
+++ trunk/Release_Notes 2009-10-14 23:55:45 UTC (rev 340)
@@ -1,5 +1,11 @@
These are the Release Notes for post-revision 2.4.5 of netperf:
+*) At least the beginnings of support for RDS, based on a c 2007 patch
+ against 2.4.2 by Vladimir Sokolovsky. Rather than create the
+ "RDS_STREAM" test of his patch, the intention this time around is
+ to enable RDS for the "omni" tests by using an omni test-specific
+ -T rds specifyer for the "transport" to use.
+
*) Missing fprintf format statements provided by Bruno Cornec
*) Numerous cleanups from Jose Pedro Oliveira
Modified: trunk/src/netlib.c
===================================================================
--- trunk/src/netlib.c 2009-10-08 21:36:07 UTC (rev 339)
+++ trunk/src/netlib.c 2009-10-14 23:55:45 UTC (rev 340)
@@ -490,8 +490,12 @@
break;
#ifdef SOCK_DCCP
case SOCK_DCCP:
- return "SOCK_DCCP";
+ return("SOCK_DCCP");
#endif
+#ifdef SOCK_SEQPACKET
+ case SOCK_SEQPACKET:
+ return("SOCK_SEQPACKET");
+#endif
default:
return("SOCK_UNKNOWN");
}
@@ -538,17 +542,18 @@
switch(family) {
case AF_INET:
return("AF_INET");
- break;
#if defined(AF_INET6)
case AF_INET6:
return("AF_INET6");
- break;
#endif
#if defined(AF_INET_SDP)
case AF_INET_SDP:
return("AF_INET_SDP");
- break;
#endif
+#if defined(AF_RDS)
+ case AF_RDS:
+ return("AF_RDS");
+#endif
default:
return("AF_UNSPEC");
}
@@ -583,6 +588,13 @@
}
break;
#endif
+#if defined(AF_RDS)
+ case AF_RDS:
+ if (cnt >= 4) {
+ memcpy(dst,src,4);
+ return 4;
+ }
+#endif
default:
Set_errno(EAFNOSUPPORT);
return(-1);
Modified: trunk/src/netsh.c
===================================================================
--- trunk/src/netsh.c 2009-10-08 21:36:07 UTC (rev 339)
+++ trunk/src/netsh.c 2009-10-14 23:55:45 UTC (rev 340)
@@ -375,6 +375,12 @@
strstr(temp,"4")) {
return(AF_INET);
}
+#if defined(AF_RDS)
+ if (strstr(temp,"af_rds") ||
+ strstr(temp,"32")) {
+ return(AF_RDS);
+ }
+#endif
if (strstr(temp,"unspec") ||
strstr(temp,"0")) {
return(AF_UNSPEC);
@@ -936,6 +942,9 @@
/* host_name was not set */
switch (address_family) {
case AF_INET:
+#if defined(AF_RDS)
+ case AF_RDS:
+#endif
strcpy(host_name,"localhost");
break;
case AF_UNSPEC:
@@ -944,6 +953,9 @@
switch (local_address_family) {
case AF_INET:
case AF_UNSPEC:
+#if defined(AF_RDS)
+ case AF_RDS:
+#endif
strcpy(host_name,"localhost");
break;
#if defined(AF_INET6)
@@ -985,12 +997,18 @@
if ('\0' == local_host_name[0]) {
switch (local_address_family) {
case AF_INET:
+#if defined(AF_RDS)
+ case AF_RDS:
+#endif
strcpy(local_host_name,"0.0.0.0");
break;
case AF_UNSPEC:
switch (address_family) {
case AF_INET:
case AF_UNSPEC:
+#if defined(AF_RDS)
+ case AF_RDS:
+#endif
strcpy(local_host_name,"0.0.0.0");
break;
#if defined(AF_INET6)
Modified: trunk/src/nettest_bsd.c
===================================================================
--- trunk/src/nettest_bsd.c 2009-10-08 21:36:07 UTC (rev 339)
+++ trunk/src/nettest_bsd.c 2009-10-14 23:55:45 UTC (rev 340)
@@ -453,20 +453,22 @@
switch(nf) {
case NF_INET:
return AF_INET;
- break;
case NF_UNSPEC:
return AF_UNSPEC;
- break;
case NF_INET6:
#if defined(AF_INET6)
return AF_INET6;
#else
return AF_UNSPEC;
#endif
- break;
+ case NF_RDS:
+#if defined(AF_RDS)
+ return AF_RDS;
+#else
+ return AF_UNSPEC;
+#endif
default:
return AF_UNSPEC;
- break;
}
}
@@ -476,18 +478,18 @@
switch(af) {
case AF_INET:
return NF_INET;
- break;
case AF_UNSPEC:
return NF_UNSPEC;
- break;
#if defined(AF_INET6)
case AF_INET6:
return NF_INET6;
- break;
#endif
+#if defined(AF_RDS)
+ case AF_RDS:
+ return NF_RDS;
+#endif
default:
return NF_UNSPEC;
- break;
}
}
@@ -515,6 +517,10 @@
return SOCK_DCCP;
break;
#endif
+#ifdef SOCK_SEQPACKET
+ case NST_SEQPACKET:
+ return NST_SEQPACKET;
+#endif
default:
return -1;
}
@@ -539,6 +545,10 @@
return NST_DCCP;
break;
#endif
+#ifdef SOCK_SEQPACKET
+ case SOCK_SEQPACKET:
+ return NST_SEQPACKET;
+#endif
default:
return NST_UNKN;
}
@@ -562,6 +572,10 @@
return "DCCP";
break;
#endif
+#ifdef SOCK_SEQPACKET
+ case SOCK_SEQPACKET:
+ return "Seqpacket";
+#endif
default:
return "Unknown";
}
@@ -1000,11 +1014,15 @@
set_port_number(struct addrinfo *res, unsigned short port)
{
switch(res->ai_family) {
- case AF_INET: {
- struct sockaddr_in *foo = (struct sockaddr_in *)res->ai_addr;
- foo->sin_port = htons(port);
- break;
- }
+ case AF_INET:
+#if defined(AF_RDS)
+ case AF_RDS:
+#endif
+ {
+ struct sockaddr_in *foo = (struct sockaddr_in *)res->ai_addr;
+ foo->sin_port = htons(port);
+ break;
+ }
#if defined(AF_INET6)
case AF_INET6: {
struct sockaddr_in6 *foo = (struct sockaddr_in6 *)res->ai_addr;
@@ -1029,6 +1047,9 @@
memset(sockaddr,0,sizeof(struct sockaddr_storage));
switch (family) {
+#if defined(AF_RDS)
+ case AF_RDS:
+#endif
case AF_INET: {
struct sockaddr_in *foo = (struct sockaddr_in *)sockaddr;
foo->sin_port = htons((unsigned short) port);
@@ -1077,6 +1098,9 @@
}
switch(family) {
+#if defined(AF_RDS)
+ case AF_RDS:
+#endif
case AF_INET: {
*port = ntohs(sin->sin_port);
memcpy(addr,&(sin->sin_addr),sizeof(sin->sin_addr));
Modified: trunk/src/nettest_bsd.h
===================================================================
--- trunk/src/nettest_bsd.h 2009-10-08 21:36:07 UTC (rev 339)
+++ trunk/src/nettest_bsd.h 2009-10-14 23:55:45 UTC (rev 340)
@@ -14,17 +14,21 @@
#define NF_UNSPEC 0
#define NF_INET 4
#define NF_INET6 6
+/* since it isn't clear that AF_RDS will be the same value everywhere
+ we will have an NF_RDS as well and will make it "lucky 7" raj
+ 20091014 */
+#define NF_RDS 7
/* it would also seem that the socket type defines differ from
platform to platform, which means we need to define our own values
to pass between netperf and netserver so they can be translated to
the local versions. NST == Netperf Socket Type raj 2008-01-14 */
-#define NST_UNKN -1
-#define NST_STREAM 1
-#define NST_DGRAM 2
-#define NST_DCCP 3
+#define NST_UNKN -1
+#define NST_STREAM 1
+#define NST_DGRAM 2
+#define NST_DCCP 3
+#define NST_SEQPACKET 4
-
#ifdef WANT_OMNI
#define OMNI_NO_DELAY 0x1
#define OMNI_USE_SENDFILE 0x2
More information about the netperf-dev
mailing list