Source code of Windows XP (NT5)
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.

128 lines
1.5 KiB

  1. /*++
  2. Copyright (c) 1996 Microsoft Corporation
  3. Module Name:
  4. server.c
  5. Abstract:
  6. This module contains the code to provide the RPC server.
  7. Author:
  8. Wesley Witt (wesw) 16-Jan-1996
  9. Revision History:
  10. --*/
  11. #include "wow64svc.h"
  12. #pragma hdrstop
  13. GUID Wow64SvcGuid = { 0xc3a9d640, 0xffff, 0x11d0, { 0x92, 0xbf, 0x0, 0xa0, 0x24, 0xaa, 0x1c, 0x1 } };
  14. CRITICAL_SECTION CsPerfCounters;
  15. DWORD OutboundSeconds;
  16. DWORD InboundSeconds;
  17. DWORD TotalSeconds;
  18. CHAR Buffer[4096];
  19. HANDLE hServiceEndEvent; // signalled by tapiworkerthread after letting clients know fax service is ending
  20. #ifdef DBG
  21. HANDLE hLogFile = INVALID_HANDLE_VALUE;
  22. LIST_ENTRY CritSecListHead;
  23. #endif
  24. DWORD
  25. ServiceStart(
  26. VOID
  27. )
  28. /*++
  29. Routine Description:
  30. Starts the RPC server. This implementation listens on
  31. a list of protocols. Hopefully this list is inclusive
  32. enough to handle RPC requests from most clients.
  33. Arguments:
  34. None.
  35. Return Value:
  36. Return code. Return zero for success, all other
  37. values indicate errors.
  38. --*/
  39. {
  40. if (StartReflector ())
  41. return 0;
  42. return 1;
  43. }
  44. void EndWow64Svc(
  45. BOOL bEndProcess,
  46. DWORD SeverityLevel
  47. )
  48. /*++
  49. Routine Description:
  50. End the fax service.
  51. Arguments:
  52. None.
  53. Return Value:
  54. None.
  55. --*/
  56. {
  57. ServiceStop();
  58. }
  59. DWORD
  60. ServiceStop(
  61. void
  62. )
  63. /*++
  64. Routine Description:
  65. Stops the RPC server.
  66. Arguments:
  67. None.
  68. Return Value:
  69. None.
  70. --*/
  71. {
  72. if (StopReflector ())
  73. return 0;
  74. return 1;
  75. }