Annotation of mstools/samples/rpc/mandel/server.c, revision 1.1.1.1

1.1       root        1: #include <stdlib.h>    // exit
                      2: #include <windows.h>   // Sleep...
                      3: #include <stdio.h>     // printf...
                      4: #include <string.h>    // strlen...
                      5: #include <ctype.h>
                      6: 
                      7: #include <rpc.h>    // RPC data structures and APIs
                      8: #include "mdlrpc.h"    // interface
                      9: #include "mandel.h"
                     10: 
                     11: 
                     12: HANDLE hSharedBuf = NULL;
                     13: 
                     14: void main(void)
                     15: {
                     16:     RPC_HANDLE Server, Address, Interface;
                     17:     RPC_STATUS status;
                     18: 
                     19: 
                     20: /*  Select named pipes as the transport type and provide the     */
                     21: /*  name of the named pipe that is used for RPC.                 */
                     22: /*  The server specifies the pipe name in the form:              */
                     23: /*       \device\namedpipe\pipename                              */
                     24: /*  In this example, the pipename is "mdlrpc"                    */
                     25: 
                     26:     mdlrpc_ProtocolStack.TransportType = RPC_TRANSPORT_NAMEPIPE;
                     27:     mdlrpc_ProtocolStack.TransportInfo = "\\device\\namedpipe\\mdlrpc";
                     28:     mdlrpc_ProtocolStack.TransportInfoLength = \
                     29:         strlen(mdlrpc_ProtocolStack.TransportInfo) + 1;
                     30: 
                     31:     status = RpcCreateServer( (RPC_EVENT_HANDLERS *)0,
                     32:                               &Server);
                     33:     if (status) {
                     34:         printf("RpcCreateServer: 0x%x\n", status);
                     35:         exit(2);
                     36:     }
                     37: 
                     38:     status = RpcAddAddress(Server,
                     39:                            &mdlrpc_ProtocolStack,
                     40:                            0,            // address flags
                     41:                            &Address,
                     42:                            (void *) 0,   // reserved
                     43:                            RpcNormalResourceUsage,
                     44:                            0L);          // timeout
                     45:     if (status) {
                     46:         printf("RpcAddAddress: 0x%x\n", status);
                     47:         exit(2);
                     48:     }
                     49: 
                     50:     status = RpcAddInterface(Server,
                     51:                              &mdlrpc_ProtocolStack,
                     52:                              &Interface,
                     53:                              (void *) 0,  // reserved
                     54:                              &mdlrpc_DispatchTable);
                     55:     if (status) {
                     56:         printf("RpcAddInterface: 0x%x\n", status);
                     57:         exit(2);
                     58:     }
                     59: // do it once...
                     60:     hSharedBuf = LocalAlloc(LMEM_MOVEABLE, MAX_BUFSIZE);
                     61: 
                     62:     printf("mdlrpc server started.  Waiting for client requests...\n");
                     63: 
                     64:     while (1)
                     65:         Sleep(5000);
                     66: 
                     67: } /* end main() */
                     68: 
                     69: /* end mdlrpc\server.c */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.