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.

145 lines
2.4 KiB

  1. /*++
  2. Copyright (c) 1990,91 Microsoft Corporation
  3. Module Name:
  4. ntrpcp.h
  5. Abstract:
  6. This file contains prototypes for commonly used RPC functionality.
  7. This includes: bind/unbind functions, MIDL user alloc/free functions,
  8. and server start/stop functions.
  9. Author:
  10. Dan Lafferty danl 06-Feb-1991
  11. Environment:
  12. User Mode - Win32
  13. Revision History:
  14. 06-Feb-1991 danl
  15. Created
  16. 26-Apr-1991 JohnRo
  17. Added IN and OUT keywords to MIDL functions. Commented-out
  18. (nonstandard) identifier on endif. Deleted tabs.
  19. 03-July-1991 JimK
  20. Commonly used aspects copied from LM specific file.
  21. --*/
  22. #ifndef _NTRPCP_
  23. #define _NTRPCP_
  24. #include <nt.h>
  25. #include <ntrtl.h> // needed for nturtl.h
  26. #include <nturtl.h>
  27. #include <windows.h> // win32 typedefs
  28. #include <rpc.h>
  29. #ifdef __cplusplus
  30. extern "C" {
  31. #endif
  32. //
  33. // DEFINES
  34. //
  35. //
  36. // Function Prototypes - routines called by MIDL-generated code:
  37. //
  38. void *
  39. MIDL_user_allocate(
  40. IN size_t NumBytes
  41. );
  42. void
  43. MIDL_user_free(
  44. IN void *MemPointer
  45. );
  46. //
  47. // Function Prototypes - routines to go along with the above, but aren't
  48. // needed by MIDL or any other non-network software.
  49. //
  50. void *
  51. MIDL_user_reallocate(
  52. IN void * OldPointer OPTIONAL,
  53. IN size_t NewByteCount
  54. );
  55. unsigned long
  56. MIDL_user_size(
  57. IN void * Pointer
  58. );
  59. //
  60. // client side functions
  61. //
  62. NTSTATUS
  63. RpcpBindRpc(
  64. IN LPWSTR servername,
  65. IN LPWSTR servicename,
  66. IN LPWSTR networkoptions,
  67. OUT RPC_BINDING_HANDLE * pBindingHandle
  68. );
  69. NTSTATUS
  70. RpcpUnbindRpc(
  71. IN RPC_BINDING_HANDLE BindingHandle
  72. );
  73. //
  74. // server side functions
  75. //
  76. NTSTATUS
  77. RpcpInitRpcServer(
  78. VOID
  79. );
  80. NTSTATUS
  81. RpcpAddInterface(
  82. IN LPWSTR InterfaceName,
  83. IN RPC_IF_HANDLE InterfaceSpecification
  84. );
  85. NTSTATUS
  86. RpcpStartRpcServer(
  87. IN LPWSTR InterfaceName,
  88. IN RPC_IF_HANDLE InterfaceSpecification
  89. );
  90. NTSTATUS
  91. RpcpDeleteInterface(
  92. IN RPC_IF_HANDLE InterfaceSpecification
  93. );
  94. NTSTATUS
  95. RpcpStopRpcServer(
  96. IN RPC_IF_HANDLE InterfaceSpecification
  97. );
  98. NTSTATUS
  99. RpcpStopRpcServerEx(
  100. IN RPC_IF_HANDLE InterfaceSpecification
  101. );
  102. #ifdef __cplusplus
  103. }
  104. #endif
  105. #endif // _NTRPCP_