home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / msdn_vcb / samples / vc98 / sdk / netds / rpc / ns / cds / nsicom.idl < prev    next >
Encoding:
Text File  |  1995-11-14  |  3.6 KB  |  139 lines

  1. /* --------------------------------------------------------------------
  2.  
  3.                       Microsoft OS/2 LAN Manager
  4.                  Copyright(c) Microsoft Corp., 1990-1995
  5.  
  6.                            RPC locator
  7.  
  8.  
  9.     This file is just a wrapper for MIDL to get a reference to
  10.     types used in the interface.
  11. -------------------------------------------------------------------- */
  12.  
  13. [
  14.     uuid (00000000-0000-0000-0000-000000000000),
  15.     pointer_default (unique)
  16. ]
  17.     interface NSiTypes
  18.  
  19. {
  20.  
  21. /*
  22.  * Misc commonly used standard types.
  23.  */
  24.  
  25. typedef wchar_t  UNSIGNED_CHAR_T;
  26. typedef unsigned long  UNSIGNED32;
  27. typedef unsigned short UNSIGNED16;
  28. typedef unsigned char  UNSIGNED8;
  29. typedef [string, unique] UNSIGNED_CHAR_T *STRING_T;
  30.  
  31. typedef [string] UNSIGNED_CHAR_T *NSI_STRING_BINDING_T;
  32. typedef [context_handle] void * NSI_NS_HANDLE_T;
  33.  
  34. typedef struct _NSI_UUID_T
  35.     {
  36.     UNSIGNED32          time_low;
  37.     UNSIGNED16          time_mid;
  38.     UNSIGNED16          time_hi_and_version;
  39.     UNSIGNED8           clock_seq_hi_and_reserved;
  40.     UNSIGNED8           clock_seq_low;
  41.     UNSIGNED8           node[6];
  42.     } NSI_UUID_T;
  43.  
  44. typedef [unique] NSI_UUID_T *NSI_UUID_P_T;
  45.  
  46. typedef struct _NSI_BINDING_T
  47.     {
  48.     NSI_STRING_BINDING_T  string;
  49.     UNSIGNED32            entry_name_syntax;
  50.     STRING_T              entry_name;
  51.     } NSI_BINDING_T;
  52.  
  53. typedef struct _NSI_BINDING_VECTOR_T
  54.     {
  55.     UNSIGNED32            count;
  56.     [size_is(count)]
  57.     NSI_BINDING_T  binding[*];
  58.     } NSI_BINDING_VECTOR_T;
  59.  
  60. typedef [unique] NSI_BINDING_VECTOR_T *NSI_BINDING_VECTOR_P_T;
  61.  
  62. typedef struct _NSI_SERVER_BINDING_VECTOR_T
  63.     {
  64.     UNSIGNED32            count;
  65.     [size_is(count)]
  66.     NSI_STRING_BINDING_T  string[*];
  67.     } NSI_SERVER_BINDING_VECTOR_T;
  68.  
  69. typedef [unique] NSI_SERVER_BINDING_VECTOR_T *NSI_SERVER_BINDING_VECTOR_P_T;
  70.  
  71. typedef struct _NSI_UUID_VECTOR_T
  72.     {
  73.     UNSIGNED32 count;
  74.     [size_is(count)]
  75.     NSI_UUID_P_T uuid[*];
  76.     } NSI_UUID_VECTOR_T;
  77.  
  78. typedef [unique] NSI_UUID_VECTOR_T *NSI_UUID_VECTOR_P_T;
  79.  
  80. typedef struct _NSI_SYNTAX_ID_T
  81.     {
  82.     NSI_UUID_T          id;
  83.     UNSIGNED32          version;
  84.     } NSI_SYNTAX_ID_T;
  85.  
  86. typedef [unique] NSI_SYNTAX_ID_T *NSI_IF_ID_P_T;
  87.  
  88. typedef struct _NSI_INTERFACE_ID_T
  89.     {
  90.     NSI_SYNTAX_ID_T Interface;
  91.     NSI_SYNTAX_ID_T TransferSyntax;
  92.     } NSI_INTERFACE_ID_T;
  93.  
  94. typedef [unique] NSI_INTERFACE_ID_T *NSI_INTERFACE_ID_P_T;
  95.  
  96. typedef struct _NSI_IF_VECTOR_T
  97.     {
  98.     UNSIGNED32 count;
  99.     [size_is(count)]
  100.     NSI_IF_ID_P_T if_id[*];
  101.     } NSI_IF_ID_VECTOR_T;
  102.  
  103.  
  104. // If you change this table, you must update the status mapping vector
  105. // NsiToRpcStatus in client\util.cxx
  106.  
  107. enum {
  108.     NSI_S_OK,
  109.     NSI_S_NO_MORE_BINDINGS,
  110.     NSI_S_INTERFACE_NOT_FOUND,
  111.     NSI_S_ENTRY_NOT_FOUND,
  112.     NSI_S_NAME_SERVICE_UNAVAILABLE,
  113.     NSI_S_NO_NS_PRIVILEGE,
  114.     NSI_S_UNSUPPORTED_NAME_SYNTAX,
  115.     NSI_S_NOTHING_TO_UNEXPORT,
  116.     NSI_S_INVALID_NAME_SYNTAX,
  117.     NSI_S_INVALID_NS_HANDLE,
  118.     NSI_S_INVALID_OBJECT,
  119.     NSI_S_NOT_ALL_OBJS_UNEXPORTED,    // Was NSI_S_INVALID_INTERFACE, but this
  120.                                       // never could be returned by CSD.
  121.     NSI_S_INVALID_STRING_BINDING,
  122.     NSI_S_SOME_OTHER_ERROR,
  123.  
  124.     // New error codes added after 4/92 and v 1.0 of CSD deamon.
  125.  
  126.     NSI_S_NOTHING_TO_EXPORT,
  127.     NSI_S_UNIMPLEMENTED_API,
  128.     NSI_S_NO_INTERFACES_EXPORTED,
  129.     NSI_S_INCOMPLETE_NAME,
  130.     NSI_S_INVALID_VERS_OPTION,
  131.     NSI_S_NO_MORE_MEMBERS,
  132.     NSI_S_ENTRY_ALREADY_EXISTS,
  133.     NSI_S_OUT_OF_MEMORY,
  134.     NSI_S_GROUP_MEMBER_NOT_FOUND,
  135.     NSI_S_STATUS_MAX,
  136. };
  137.  
  138. }
  139.