added support for rpc over tcp in echo test
authortridge <>
Sun, 30 May 2004 18:08:59 +0000 (18:08 +0000)
committertridge <>
Sun, 30 May 2004 18:08:59 +0000 (18:08 +0000)
rpcecho-win32/client.c
rpcecho-win32/client.exe [new file with mode: 0644]
rpcecho-win32/server.c
rpcecho-win32/server.exe [new file with mode: 0644]

index b94a2ff865b956e2643b237d88e940c93988d523..3d2a7db4b84949876e104b855d74cef5a2bcc2a0 100755 (executable)
@@ -82,7 +82,7 @@ void main(int argc, char **argv)
                printf("\tsourcedata size\tReceive an array of size bytes\n");\r
                printf("\ttest\trun testcall\n");\r
                printf("\noptions:\n");\r
-               printf("\t-u username -d domain -p password\n");\r
+               printf("\t-u username -d domain -p password -e endpoint\n");\r
                printf("\t--sign --seal\n");\r
                exit(0);\r
        }\r
diff --git a/rpcecho-win32/client.exe b/rpcecho-win32/client.exe
new file mode 100644 (file)
index 0000000..f6dbb4e
Binary files /dev/null and b/rpcecho-win32/client.exe differ
index 4f11ddaf5ddb91d492882209aff190baa1123b64..46a06dcff0954d64584e74d0936541ae1aeb4482 100755 (executable)
@@ -108,24 +108,43 @@ long TestCall2(short level, echo_Info **info)
 void main(int argc, char **argv)\r
 {\r
        RPC_STATUS status;\r
+       RPC_BINDING_VECTOR *pBindingVector;\r
 \r
        if (argc != 1) {\r
                printf("Usage: rpcechosrv\n");\r
                exit(0);\r
        }\r
 \r
-       status = RpcServerUseProtseqEp(\r
-               "ncacn_np", RPC_MAX_CALLS, RPC_ENDPOINT,\r
-               NULL);\r
+       status = RpcServerUseProtseqEp("ncacn_np", RPC_MAX_CALLS, "\\pipe\\rpcecho", NULL);\r
+       if (status) {\r
+               printf("Failed to register ncacn_np endpoint\n");\r
+               exit(status);\r
+       }\r
 \r
-       if (status)\r
+       status = RpcServerUseProtseqEp("ncacn_ip_tcp", RPC_MAX_CALLS, "1234", NULL);\r
+       if (status) {\r
+               printf("Failed to register ncacn_ip_tcp endpoint\n");\r
                exit(status);\r
+       }\r
 \r
-       status = RpcServerRegisterIf(\r
-               rpcecho_v1_0_s_ifspec, NULL, NULL);\r
+       status = RpcServerInqBindings(&pBindingVector);\r
+       if (status) {\r
+               printf("Failed RpcServerInqBindings\n");\r
+               exit(status);\r
+       }\r
 \r
-       if (status)\r
+       status = RpcEpRegister(rpcecho_v1_0_s_ifspec, pBindingVector, NULL, "rpcecho server");\r
+       if (status) {\r
+               printf("Failed RpcEpRegister\n");\r
                exit(status);\r
+       }\r
+\r
+       status = RpcServerRegisterIf(rpcecho_v1_0_s_ifspec, NULL, NULL);\r
+\r
+       if (status) {\r
+               printf("Failed to register interface\n");\r
+               exit(status);\r
+       }\r
 \r
        status = RpcServerListen(RPC_MIN_CALLS, RPC_MAX_CALLS, FALSE);\r
 \r
diff --git a/rpcecho-win32/server.exe b/rpcecho-win32/server.exe
new file mode 100644 (file)
index 0000000..c403af5
Binary files /dev/null and b/rpcecho-win32/server.exe differ