lmrepl.h 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. /**
  2. * This file has no copyright assigned and is placed in the Public Domain.
  3. * This file is part of the mingw-w64 runtime package.
  4. * No warranty is given; refer to the file DISCLAIMER.PD within this package.
  5. */
  6. #ifndef _LMREPL_
  7. #define _LMREPL_
  8. #ifdef __cplusplus
  9. extern "C" {
  10. #endif
  11. #define REPL_ROLE_EXPORT 1
  12. #define REPL_ROLE_IMPORT 2
  13. #define REPL_ROLE_BOTH 3
  14. #define REPL_INTERVAL_INFOLEVEL (PARMNUM_BASE_INFOLEVEL + 0)
  15. #define REPL_PULSE_INFOLEVEL (PARMNUM_BASE_INFOLEVEL + 1)
  16. #define REPL_GUARDTIME_INFOLEVEL (PARMNUM_BASE_INFOLEVEL + 2)
  17. #define REPL_RANDOM_INFOLEVEL (PARMNUM_BASE_INFOLEVEL + 3)
  18. typedef struct _REPL_INFO_0 {
  19. DWORD rp0_role;
  20. LPWSTR rp0_exportpath;
  21. LPWSTR rp0_exportlist;
  22. LPWSTR rp0_importpath;
  23. LPWSTR rp0_importlist;
  24. LPWSTR rp0_logonusername;
  25. DWORD rp0_interval;
  26. DWORD rp0_pulse;
  27. DWORD rp0_guardtime;
  28. DWORD rp0_random;
  29. } REPL_INFO_0,*PREPL_INFO_0,*LPREPL_INFO_0;
  30. typedef struct _REPL_INFO_1000 {
  31. DWORD rp1000_interval;
  32. } REPL_INFO_1000,*PREPL_INFO_1000,*LPREPL_INFO_1000;
  33. typedef struct _REPL_INFO_1001 {
  34. DWORD rp1001_pulse;
  35. } REPL_INFO_1001,*PREPL_INFO_1001,*LPREPL_INFO_1001;
  36. typedef struct _REPL_INFO_1002 {
  37. DWORD rp1002_guardtime;
  38. } REPL_INFO_1002,*PREPL_INFO_1002,*LPREPL_INFO_1002;
  39. typedef struct _REPL_INFO_1003 {
  40. DWORD rp1003_random;
  41. } REPL_INFO_1003,*PREPL_INFO_1003,*LPREPL_INFO_1003;
  42. NET_API_STATUS WINAPI NetReplGetInfo(LPCWSTR servername,DWORD level,LPBYTE *bufptr);
  43. NET_API_STATUS WINAPI NetReplSetInfo(LPCWSTR servername,DWORD level,const LPBYTE buf,LPDWORD parm_err);
  44. #define REPL_INTEGRITY_FILE 1
  45. #define REPL_INTEGRITY_TREE 2
  46. #define REPL_EXTENT_FILE 1
  47. #define REPL_EXTENT_TREE 2
  48. #define REPL_EXPORT_INTEGRITY_INFOLEVEL (PARMNUM_BASE_INFOLEVEL + 0)
  49. #define REPL_EXPORT_EXTENT_INFOLEVEL (PARMNUM_BASE_INFOLEVEL + 1)
  50. typedef struct _REPL_EDIR_INFO_0 {
  51. LPWSTR rped0_dirname;
  52. } REPL_EDIR_INFO_0,*PREPL_EDIR_INFO_0,*LPREPL_EDIR_INFO_0;
  53. typedef struct _REPL_EDIR_INFO_1 {
  54. LPWSTR rped1_dirname;
  55. DWORD rped1_integrity;
  56. DWORD rped1_extent;
  57. } REPL_EDIR_INFO_1,*PREPL_EDIR_INFO_1,*LPREPL_EDIR_INFO_1;
  58. typedef struct _REPL_EDIR_INFO_2 {
  59. LPWSTR rped2_dirname;
  60. DWORD rped2_integrity;
  61. DWORD rped2_extent;
  62. DWORD rped2_lockcount;
  63. DWORD rped2_locktime;
  64. } REPL_EDIR_INFO_2,*PREPL_EDIR_INFO_2,*LPREPL_EDIR_INFO_2;
  65. typedef struct _REPL_EDIR_INFO_1000 {
  66. DWORD rped1000_integrity;
  67. } REPL_EDIR_INFO_1000,*PREPL_EDIR_INFO_1000,*LPREPL_EDIR_INFO_1000;
  68. typedef struct _REPL_EDIR_INFO_1001 {
  69. DWORD rped1001_extent;
  70. } REPL_EDIR_INFO_1001,*PREPL_EDIR_INFO_1001,*LPREPL_EDIR_INFO_1001;
  71. NET_API_STATUS WINAPI NetReplExportDirAdd(LPCWSTR servername,DWORD level,const LPBYTE buf,LPDWORD parm_err);
  72. NET_API_STATUS WINAPI NetReplExportDirDel(LPCWSTR servername,LPCWSTR dirname);
  73. NET_API_STATUS WINAPI NetReplExportDirEnum(LPCWSTR servername,DWORD level,LPBYTE *bufptr,DWORD prefmaxlen,LPDWORD entriesread,LPDWORD totalentries,LPDWORD resumehandle);
  74. NET_API_STATUS WINAPI NetReplExportDirGetInfo(LPCWSTR servername,LPCWSTR dirname,DWORD level,LPBYTE *bufptr);
  75. NET_API_STATUS WINAPI NetReplExportDirSetInfo(LPCWSTR servername,LPCWSTR dirname,DWORD level,const LPBYTE buf,LPDWORD parm_err);
  76. NET_API_STATUS WINAPI NetReplExportDirLock(LPCWSTR servername,LPCWSTR dirname);
  77. NET_API_STATUS WINAPI NetReplExportDirUnlock(LPCWSTR servername,LPCWSTR dirname,DWORD unlockforce);
  78. #define REPL_UNLOCK_NOFORCE 0
  79. #define REPL_UNLOCK_FORCE 1
  80. typedef struct _REPL_IDIR_INFO_0 {
  81. LPWSTR rpid0_dirname;
  82. } REPL_IDIR_INFO_0,*PREPL_IDIR_INFO_0,*LPREPL_IDIR_INFO_0;
  83. typedef struct _REPL_IDIR_INFO_1 {
  84. LPWSTR rpid1_dirname;
  85. DWORD rpid1_state;
  86. LPWSTR rpid1_mastername;
  87. DWORD rpid1_last_update_time;
  88. DWORD rpid1_lockcount;
  89. DWORD rpid1_locktime;
  90. } REPL_IDIR_INFO_1,*PREPL_IDIR_INFO_1,*LPREPL_IDIR_INFO_1;
  91. NET_API_STATUS WINAPI NetReplImportDirAdd(LPCWSTR servername,DWORD level,const LPBYTE buf,LPDWORD parm_err);
  92. NET_API_STATUS WINAPI NetReplImportDirDel(LPCWSTR servername,LPCWSTR dirname);
  93. NET_API_STATUS WINAPI NetReplImportDirEnum(LPCWSTR servername,DWORD level,LPBYTE *bufptr,DWORD prefmaxlen,LPDWORD entriesread,LPDWORD totalentries,LPDWORD resumehandle);
  94. NET_API_STATUS WINAPI NetReplImportDirGetInfo(LPCWSTR servername,LPCWSTR dirname,DWORD level,LPBYTE *bufptr);
  95. NET_API_STATUS WINAPI NetReplImportDirLock(LPCWSTR servername,LPCWSTR dirname);
  96. NET_API_STATUS WINAPI NetReplImportDirUnlock(LPCWSTR servername,LPCWSTR dirname,DWORD unlockforce);
  97. #define REPL_STATE_OK 0
  98. #define REPL_STATE_NO_MASTER 1
  99. #define REPL_STATE_NO_SYNC 2
  100. #define REPL_STATE_NEVER_REPLICATED 3
  101. #ifdef __cplusplus
  102. }
  103. #endif
  104. #endif