]> git.ipfire.org Git - thirdparty/krb5.git/commitdiff
* lib/helpers.exp, client.c, server.c, config/unix.exp,
authorBarry Jaspan <bjaspan@mit.edu>
Tue, 12 Nov 1996 21:30:02 +0000 (21:30 +0000)
committerBarry Jaspan <bjaspan@mit.edu>
Tue, 12 Nov 1996 21:30:02 +0000 (21:30 +0000)
  Makefile.in: test GSS-RPC with both TCP and UDP transport layers
  [krb5-libs/180]

git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@9389 dc483132-0cff-0310-8789-dd5450dbe970

src/lib/rpc/unit-test/ChangeLog
src/lib/rpc/unit-test/Makefile.in
src/lib/rpc/unit-test/client.c
src/lib/rpc/unit-test/config/unix.exp
src/lib/rpc/unit-test/lib/helpers.exp
src/lib/rpc/unit-test/server.c

index 22cea206a8460619a0a75a62d9e27cbd6cc04c5e..585bbb507d84748de3d38014d55503c13ff6c00a 100644 (file)
@@ -1,3 +1,9 @@
+Tue Nov 12 16:27:51 1996  Barry Jaspan  <bjaspan@mit.edu>
+
+       * lib/helpers.exp, client.c, server.c, config/unix.exp,
+       Makefile.in: test GSS-RPC with both TCP and UDP transport layers
+       [krb5-libs/180]
+
 Tue Nov 12 14:58:20 1996  Tom Yu  <tlyu@mit.edu>
 
        * rpc_test_setup.sh: Fix test of $VERBOSE_TEST so that $VERBOSE
index 4dc6a231e4b77cad9ed0c73524bb6a323d0de5b6..c1cb9e28ed1d16e2ee89c3d161f0c0f427361f98 100644 (file)
@@ -32,12 +32,21 @@ unit-test-:
 
 unit-test-ok:: unit-test-setup unit-test-body unit-test-cleanup
 
-unit-test-body::       
+unit-test-body:: unit-test-body-tcp unit-test-body-udp
+
+unit-test-body-tcp:
+       RPC_TEST_SRVTAB=/tmp/rpc_test_v5srvtab $(ENV_SETUP) \
+               $(RUNTEST) SERVER=./server CLIENT=./client \
+               KINIT=$(BUILDTOP)/clients/kinit/kinit \
+               KDESTROY=$(BUILDTOP)/clients/kdestroy/kdestroy \
+               PROT=-t --tool rpc_test
+
+unit-test-body-udp:
        RPC_TEST_SRVTAB=/tmp/rpc_test_v5srvtab $(ENV_SETUP) \
                $(RUNTEST) SERVER=./server CLIENT=./client \
                KINIT=$(BUILDTOP)/clients/kinit/kinit \
                KDESTROY=$(BUILDTOP)/clients/kdestroy/kdestroy \
-               --tool rpc_test
+               PROT=-u --tool rpc_test
 
 unit-test-setup::
        $(ENV_SETUP) $(START_SERVERS)
index bcf2700e5e4cc99adea6bf0c3359b8f9f9104ef1..8d676ceac1d9aa881c57b2f8e5f3194c5aeed93c 100644 (file)
@@ -5,6 +5,11 @@
  * $Source$
  * 
  * $Log$
+ * Revision 1.14  1996/11/12 21:29:54  bjaspan
+ *     * lib/helpers.exp, client.c, server.c, config/unix.exp,
+ *     Makefile.in: test GSS-RPC with both TCP and UDP transport layers
+ *     [krb5-libs/180]
+ *
  * Revision 1.13  1996/07/22 20:41:40  marc
  * this commit includes all the changes on the OV_9510_INTEGRATION and
  * OV_MERGE branches.  This includes, but is not limited to, the new openvision
@@ -108,6 +113,7 @@ main(argc, argv)
    char **argv;
 {
      char        *host, *target, *echo_arg, **echo_resp, buf[BIG_BUF];
+     char       *prot;
      CLIENT      *clnt;
      AUTH       *tmp_auth;
      struct rpc_err e;
@@ -120,8 +126,9 @@ main(argc, argv)
      whoami = argv[0];
      count = 1026;
      auth_once = 0;
+     prot = NULL;
      
-     while ((c = getopt(argc, argv, "a:m:os:")) != -1) {
+     while ((c = getopt(argc, argv, "a:m:os:tu")) != -1) {
          switch (c) {
          case 'a':
               auth_debug_gssapi = atoi(optarg);
@@ -135,11 +142,19 @@ main(argc, argv)
          case 's':
               svc_debug_gssapi = atoi(optarg);
               break;
+         case 't':
+              prot = "tcp";
+              break;
+         case 'u':
+              prot = "udp";
+              break;
          case '?':
               usage();
               break;
          }
      }
+     if (prot == NULL)
+         usage();
 
      argv += optind;
      argc -= optind;
@@ -160,7 +175,7 @@ main(argc, argv)
      }
      
      /* client handle to rstat */
-     clnt = clnt_create(host, RPC_TEST_PROG, RPC_TEST_VERS_1, "tcp");
+     clnt = clnt_create(host, RPC_TEST_PROG, RPC_TEST_VERS_1, prot);
      if (clnt == NULL) {
          clnt_pcreateerror(whoami);
          exit(1);
@@ -314,7 +329,7 @@ main(argc, argv)
 
 usage()
 {
-     fprintf(stderr, "usage: %s [-a] [-s num] [-m num] host service [count]\n",
+     fprintf(stderr, "usage: %s {-t|-u} [-a] [-s num] [-m num] host service [count]\n",
             whoami);
      exit(1);
 }
index ff7266a0f15cf0aac35525d263667ef1f25aa5d6..e266216743d0c912082a11083eed2d8343b98123 100644 (file)
@@ -46,7 +46,7 @@ proc rpc_test_exit {} {
 # rpc_test_start -- start the rpc_test server running
 #
 proc rpc_test_start { } {
-       global SERVER
+       global SERVER PROT
        global server_id
        global server_pid
        global server_started
@@ -55,7 +55,7 @@ proc rpc_test_start { } {
        set env(KRB5_KTNAME) FILE:$env(RPC_TEST_SRVTAB)
 
        verbose "% $SERVER" 1
-       set server_pid [spawn $SERVER]
+       set server_pid [spawn $SERVER $PROT]
        set server_id $spawn_id
 
        unset env(KRB5_KTNAME)
index 1a37ad512a2bff0ea53582a9eb109a42f4396053..b33af6a50b62e3d205541832ebd4620acf8fd5c2 100644 (file)
@@ -61,11 +61,7 @@ proc flush_server {} {
 
 proc start_client {testname ccname user password lifetime count
                  {target ""}} {
-       global env
-       global CLIENT
-       global hostname
-       global spawn_id
-       global verbose
+       global env CLIENT PROT hostname spawn_id verbose
 
        if {$target == ""} {
                set target "server@$hostname"
@@ -75,9 +71,9 @@ proc start_client {testname ccname user password lifetime count
        kinit $user $password $lifetime
 
        if {$verbose > 0} {
-               spawn $CLIENT -a 1 -s 1 -m 1 $hostname $target $count
+               spawn $CLIENT -a 1 -s 1 -m 1 $PROT $hostname $target $count
        } else {
-               spawn $CLIENT $hostname $target $count
+               spawn $CLIENT $PROT $hostname $target $count
        }
 
        verbose "$testname: client $ccname started"
index 1083502cddd69c3e91d44bf91039c56d7843eee2..4ac8f5f84182da404831a05b841295538323d6a7 100644 (file)
@@ -38,8 +38,15 @@ static void rpc_test_badverf(gss_name_t client, gss_name_t server,
 #define SERVICE_NAME "server"
 #endif
 
+void usage()
+{
+     fprintf(stderr, "Usage: server {-t|-u} [svc-debug] [misc-debug]\n");
+     exit(1);
+}
+
 main(int argc, char **argv)
 {
+     int c, prot;
      auth_gssapi_name names[2];
      register SVCXPRT *transp;
 
@@ -47,30 +54,54 @@ main(int argc, char **argv)
      names[0].type = (gss_OID) gss_nt_service_name;
      names[1].name = 0;
      names[1].type = 0;
-     
+
+     prot = 0;
+     while ((c = getopt(argc, argv, "tu")) != -1) {
+         switch (c) {
+         case 't':
+              prot = IPPROTO_TCP;
+              break;
+         case 'u':
+              prot = IPPROTO_UDP;
+              break;
+         case '?':
+              usage();
+              break;
+         }
+     }
+     if (prot == 0)
+         usage();
+
+     argv += optind;
+     argc -= optind;
+
      switch (argc) {
-     case 3:
-         misc_debug_gssapi = atoi(argv[2]);
      case 2:
-         svc_debug_gssapi = atoi(argv[1]);
+         misc_debug_gssapi = atoi(argv[1]);
      case 1:
+         svc_debug_gssapi = atoi(argv[0]);
+     case 0:
          break;
      default:
-         fprintf(stderr, "Usage: server [svc-debug] [misc-debug]\n");
+         usage();
          exit(1);
      }
 
      (void) pmap_unset(RPC_TEST_PROG, RPC_TEST_VERS_1);
 
-     transp = svctcp_create(RPC_ANYSOCK, 0, 0);
+     if (prot == IPPROTO_TCP)
+         transp = svctcp_create(RPC_ANYSOCK, 0, 0);
+     else
+         transp = svcudp_create(RPC_ANYSOCK);
      if (transp == NULL) {
          fprintf(stderr, "cannot create tcp service.");
          exit(1);
      }
      if (!svc_register(transp, RPC_TEST_PROG, RPC_TEST_VERS_1,
-                      rpc_test_prog_1,  IPPROTO_TCP)) { 
+                      rpc_test_prog_1, prot)) { 
          fprintf(stderr,
-                 "unable to register (RPC_TEST_PROG, RPC_TEST_VERS_1, tcp).");
+                 "unable to register (RPC_TEST_PROG, RPC_TEST_VERS_1, %s).",
+                 prot == IPPROTO_TCP ? "tcp" : "udp");
          exit(1);
      }