Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

181 lines
4.5 KiB

  1. //+-------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. //
  5. // Copyright (C) Microsoft Corporation, 1997 - 1999
  6. //
  7. // File: nsicom.idl
  8. //
  9. //--------------------------------------------------------------------------
  10. /* --------------------------------------------------------------------
  11. Microsoft OS/2 LAN Manager
  12. Copyright(c) Microsoft Corp., 1990
  13. RPC locator - Written by Steven Zeck
  14. - Modified by Satish Thatte (10/1/95)
  15. This file is just a wrapper for MIDL to get a reference to
  16. types used in the interface.
  17. -------------------------------------------------------------------- */
  18. [
  19. uuid (00000000-0000-0000-0000-000000000000),
  20. pointer_default (unique)
  21. ]
  22. interface NSiTypes
  23. {
  24. cpp_quote("#ifndef GUID_DEFINED")
  25. cpp_quote("#define GUID_DEFINED")
  26. typedef struct _GUID
  27. {
  28. unsigned long Data1;
  29. unsigned short Data2;
  30. unsigned short Data3;
  31. unsigned char Data4[8];
  32. } GUID;
  33. cpp_quote("#endif /* GUID_DEFINED */")
  34. cpp_quote("#ifndef UUID_DEFINED")
  35. cpp_quote("#define UUID_DEFINED")
  36. typedef GUID UUID;
  37. cpp_quote("#endif")
  38. cpp_quote("#ifndef __RPCDCEP_H__")
  39. typedef struct _RPC_VERSION {
  40. unsigned short MajorVersion;
  41. unsigned short MinorVersion;
  42. } RPC_VERSION;
  43. typedef struct _RPC_SYNTAX_IDENTIFIER {
  44. GUID SyntaxGUID;
  45. RPC_VERSION SyntaxVersion;
  46. } RPC_SYNTAX_IDENTIFIER, * PRPC_SYNTAX_IDENTIFIER;
  47. cpp_quote("#endif")
  48. /*
  49. * Misc commonly used standard types.
  50. */
  51. #pragma midl_echo("#pragma warning(disable:4200)")
  52. typedef unsigned long UNSIGNED32;
  53. typedef unsigned short UNSIGNED16;
  54. typedef unsigned char UNSIGNED8;
  55. typedef [string, unique] wchar_t *STRING_T;
  56. typedef [string] wchar_t *NSI_STRING_BINDING_T;
  57. typedef [context_handle] void * NSI_NS_HANDLE_T;
  58. typedef GUID NSI_UUID_T;
  59. typedef [unique] NSI_UUID_T *NSI_UUID_P_T;
  60. typedef struct _NSI_BINDING_T
  61. {
  62. NSI_STRING_BINDING_T string;
  63. UNSIGNED32 entry_name_syntax;
  64. STRING_T entry_name;
  65. } NSI_BINDING_T;
  66. typedef struct _NSI_BINDING_VECTOR_T
  67. {
  68. UNSIGNED32 count;
  69. [size_is(count)]
  70. NSI_BINDING_T binding[*];
  71. } NSI_BINDING_VECTOR_T;
  72. typedef [unique] NSI_BINDING_VECTOR_T *NSI_BINDING_VECTOR_P_T;
  73. typedef struct _NSI_SERVER_BINDING_VECTOR_T
  74. {
  75. UNSIGNED32 count;
  76. [size_is(count)]
  77. NSI_STRING_BINDING_T string[*];
  78. } NSI_SERVER_BINDING_VECTOR_T;
  79. typedef [unique] NSI_SERVER_BINDING_VECTOR_T *NSI_SERVER_BINDING_VECTOR_P_T;
  80. typedef struct _NSI_UUID_VECTOR_T
  81. {
  82. UNSIGNED32 count;
  83. [size_is(count)]
  84. NSI_UUID_P_T uuid[*];
  85. } NSI_UUID_VECTOR_T;
  86. typedef [unique] NSI_UUID_VECTOR_T *NSI_UUID_VECTOR_P_T;
  87. typedef RPC_SYNTAX_IDENTIFIER NSI_SYNTAX_ID_T;
  88. typedef [unique] NSI_SYNTAX_ID_T *NSI_IF_ID_P_T;
  89. typedef struct _NSI_INTERFACE_ID_T
  90. {
  91. NSI_SYNTAX_ID_T Interface;
  92. NSI_SYNTAX_ID_T TransferSyntax;
  93. } NSI_INTERFACE_ID_T;
  94. typedef [unique] NSI_INTERFACE_ID_T *NSI_INTERFACE_ID_P_T;
  95. typedef struct _NSI_IF_VECTOR_T
  96. {
  97. UNSIGNED32 count;
  98. [size_is(count)]
  99. NSI_IF_ID_P_T if_id[*];
  100. } NSI_IF_ID_VECTOR_T;
  101. // If you change this table, you must update the status mapping vector
  102. // NsiToRpcStatus in client\util.cxx
  103. enum {
  104. NSI_S_OK,
  105. NSI_S_NO_MORE_BINDINGS,
  106. NSI_S_INTERFACE_NOT_FOUND,
  107. NSI_S_ENTRY_NOT_FOUND,
  108. NSI_S_NAME_SERVICE_UNAVAILABLE,
  109. NSI_S_NO_NS_PRIVILEGE,
  110. NSI_S_UNSUPPORTED_NAME_SYNTAX,
  111. NSI_S_NOTHING_TO_UNEXPORT,
  112. NSI_S_INVALID_NAME_SYNTAX,
  113. NSI_S_INVALID_NS_HANDLE,
  114. NSI_S_INVALID_OBJECT,
  115. NSI_S_NOT_ALL_OBJS_UNEXPORTED, // Was NSI_S_INVALID_INTERFACE, but this
  116. // never could be returned by CSD.
  117. NSI_S_INVALID_STRING_BINDING,
  118. NSI_S_SOME_OTHER_ERROR,
  119. // New error codes added after 4/92 and v 1.0 of CSD deamon.
  120. NSI_S_NOTHING_TO_EXPORT,
  121. NSI_S_UNIMPLEMENTED_API,
  122. NSI_S_NO_INTERFACES_EXPORTED,
  123. NSI_S_INCOMPLETE_NAME,
  124. NSI_S_INVALID_VERS_OPTION,
  125. NSI_S_NO_MORE_MEMBERS,
  126. NSI_S_ENTRY_ALREADY_EXISTS,
  127. NSI_S_OUT_OF_MEMORY,
  128. NSI_S_GROUP_MEMBER_NOT_FOUND,
  129. NSI_S_NO_MASTER_LOCATOR,
  130. // New error codes added on 10/97
  131. NSI_S_ENTRY_TYPE_MISMATCH,
  132. NSI_S_NOT_ALL_OBJS_EXPORTED,
  133. NSI_S_INTERFACE_NOT_EXPORTED,
  134. NSI_S_PROFILE_NOT_ADDED,
  135. NSI_S_PRF_ELT_NOT_ADDED,
  136. NSI_S_PRF_ELT_NOT_REMOVED,
  137. NSI_S_GRP_ELT_NOT_ADDED,
  138. NSI_S_GRP_ELT_NOT_REMOVED,
  139. NSI_S_STATUS_MAX,
  140. };
  141. #pragma midl_echo("#pragma warning(default:4200)")
  142. }
  143.