home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 11 / 11.iso / n / n001 / 2.ddi / EXAMPLES / MACRO / COMMON / MACRO.RPC
Encoding:
Text File  |  1989-12-11  |  2.4 KB  |  58 lines

  1. %h{
  2. /*                                                                            *
  3.  *                                                                            *
  4.  *                  Copyright 1987, 1988, 1989 Netwise, Inc.                  *
  5.  *                              All Rights Reserved                           *
  6.  *   This software contains information which is proprietary to and a trade   *
  7.  *   secret of Netwise, Inc. It is not to be used, reproduced, or disclosed   *
  8.  *   except as authorized in your license agreement.                          *
  9.  *                                                                            *
  10.  *                          Restricted Rights Legend                          *
  11.  *   Use, duplication,  or  disclosure  by the  Government  is  subject  to   *
  12.  *   restrictions as set forth in subparagraph (c)(1)(ii) of the Rights  in   *
  13.  *   Technical Data and  Computer Software clause  at 252.227-7013, or  the   *
  14.  *   equivalent Government clause for other agencies.                         *
  15.  *   Contractor: Netwise, Inc., Boulder, CO 80301 USA                         *
  16.  *                                                                            *
  17.  */ 
  18. %}
  19.  
  20. /*
  21.  * File: macro\common\macro.rpc
  22.  *
  23.  * This RPC file runs in the following environment:
  24.  *    NetWare RPC 1.0, NetWare 2.1 or higher, DOS 3.3
  25.  *
  26.  * This is the RPC Specification File for the macro example.
  27.  */
  28.  
  29. /* This declaration defines an implicit, non-persistent process binding. 
  30.  * server_name is a predefined binding type (typedef char *server_name)
  31.  */
  32. extern server_name [bind in] sname;    
  33.  
  34. struct record { 
  35.     char term_1;     /* Termination character used in buffer_1 */
  36.     char term_2;     /* Termination character used in buffer_2 */
  37.     char term_3;     /* Termination character used in buffer_3 */
  38.     char term_4;     /* Termination character used in buffer_4 */
  39.     char term_5;     /* Termination character used in buffer_5 */
  40.     char buffer_1[80] (*$0 == $2->term_1);
  41.     struct {
  42.         char buffer_2[80] (*$0 == $3->term_2);
  43.         struct {
  44.             char buffer_3[80] (*$0 == $4->term_3);
  45.             struct {
  46.                 char buffer_4[80] (*$0 == $5->term_4);
  47.                 char buffer_5[80] (*$0 == $$->term_5);
  48.             } r3;
  49.         } r2;
  50.     } r1;
  51. };
  52.  
  53. /* Specification of the get_record() remote procedure.  This procedure returns
  54.  * a complete record structure pointed to by rp.
  55. */
  56. int
  57. get_record(int [in] num, struct record [out] *rp);
  58.