[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