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.

107 lines
2.0 KiB

  1. //-------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. //
  5. // Copyright (CC) Microsoft Corporation 1992, 1992
  6. //
  7. // File: dfsm.hxx
  8. //
  9. // Contents:
  10. //
  11. // History:
  12. //
  13. //-------------------------------------------------------------
  14. #ifndef _DFSM_HXX_
  15. #define _DFSM_HXX_
  16. extern "C" {
  17. #include <stdio.h>
  18. #include <malloc.h>
  19. #include <dfsstr.h>
  20. #include <netevent.h>
  21. }
  22. //
  23. // Debug stuff
  24. //
  25. #include <debug.h>
  26. DECLARE_DEBUG(IDfsVol)
  27. #if DBG == 1
  28. #define IDfsVolInlineDebOut(x) IDfsVolInlineDebugOut x
  29. #define DFSVOLTRACE(l,x) IDfsVolInlineDebugOut(l, x)
  30. #else // DBG != 1
  31. #define IDfsVolInlineDebOut(x)
  32. #define DFSVOLTRACE(l,x)
  33. #endif // if DBG == 1
  34. //
  35. // Dfs Manager data structures
  36. //
  37. #define DFS_VOL_TYPE_DFS 0x0001
  38. #define DFS_VOL_TYPE_INTER_DFS 0x0010
  39. #define DFS_VOL_TYPE_REFERRAL_SVC 0x0080
  40. #define DFS_STORAGE_TYPE_DFS 0x0001
  41. #define DFS_STORAGE_TYPE_NONDFS 0x0002
  42. #define DFS_NORMAL_FORCE 0x0000
  43. #define DFS_OVERRIDE_FORCE 0x0001
  44. typedef struct {
  45. ULONG ulReplicaState;
  46. ULONG ulReplicaType;
  47. LPWSTR pwszServerName;
  48. LPWSTR pwszShareName;
  49. } DFS_REPLICA_INFO, *PDFS_REPLICA_INFO;
  50. //
  51. // Function Prototypes
  52. //
  53. VOID MsgPrintError(WCHAR *wszMsg);
  54. DWORD
  55. GetVolObjForPath(
  56. PWSTR pwszEntryPath,
  57. BOOLEAN fExactMatch,
  58. PWSTR *ppwszVolFound);
  59. VOID
  60. GuidToString(
  61. IN GUID *pGuid,
  62. OUT PWSTR pwszGuid);
  63. DWORD
  64. DfsReInitGlobals(
  65. LPWSTR wszDomain,
  66. DWORD dwType);
  67. DWORD
  68. GetDcName(
  69. IN LPCSTR DomainName OPTIONAL,
  70. IN DWORD RetryCount,
  71. OUT LPWSTR *DCName);
  72. typedef enum _DFS_NAME_CONVENTION {
  73. DFS_NAMETYPE_NETBIOS=1,
  74. DFS_NAMETYPE_DNS=2,
  75. DFS_NAMETYPE_EITHER=3
  76. } DFS_NAME_CONVENTION, *PDFS_NAME_CONVENTION;
  77. DWORD
  78. GetDomAndComputerName(
  79. LPWSTR wszDomain OPTIONAL,
  80. LPWSTR wszComputer OPTIONAL,
  81. PDFS_NAME_CONVENTION pNameType);
  82. #endif // _DFSM_HXX