| 1 |
/***********************************************************************\ |
|---|
| 2 |
* lmrepl.d * |
|---|
| 3 |
* * |
|---|
| 4 |
* Windows API header module * |
|---|
| 5 |
* * |
|---|
| 6 |
* Translated from MinGW Windows headers * |
|---|
| 7 |
* * |
|---|
| 8 |
* Placed into public domain * |
|---|
| 9 |
\***********************************************************************/ |
|---|
| 10 |
module win32.lmrepl; |
|---|
| 11 |
pragma(lib, "netapi32.lib"); |
|---|
| 12 |
|
|---|
| 13 |
private import win32.lmcons, win32.windef; |
|---|
| 14 |
|
|---|
| 15 |
const REPL_ROLE_EXPORT=1; |
|---|
| 16 |
const REPL_ROLE_IMPORT=2; |
|---|
| 17 |
const REPL_ROLE_BOTH=3; |
|---|
| 18 |
|
|---|
| 19 |
const REPL_INTERVAL_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+0; |
|---|
| 20 |
const REPL_PULSE_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+1; |
|---|
| 21 |
const REPL_GUARDTIME_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+2; |
|---|
| 22 |
const REPL_RANDOM_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+3; |
|---|
| 23 |
|
|---|
| 24 |
const REPL_UNLOCK_NOFORCE=0; |
|---|
| 25 |
const REPL_UNLOCK_FORCE=1; |
|---|
| 26 |
const REPL_STATE_OK=0; |
|---|
| 27 |
const REPL_STATE_NO_MASTER=1; |
|---|
| 28 |
const REPL_STATE_NO_SYNC=2; |
|---|
| 29 |
const REPL_STATE_NEVER_REPLICATED=3; |
|---|
| 30 |
const REPL_INTEGRITY_FILE=1; |
|---|
| 31 |
const REPL_INTEGRITY_TREE=2; |
|---|
| 32 |
const REPL_EXTENT_FILE=1; |
|---|
| 33 |
const REPL_EXTENT_TREE=2; |
|---|
| 34 |
|
|---|
| 35 |
const REPL_EXPORT_INTEGRITY_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+0; |
|---|
| 36 |
const REPL_EXPORT_EXTENT_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+1; |
|---|
| 37 |
|
|---|
| 38 |
struct REPL_INFO_0 { |
|---|
| 39 |
DWORD rp0_role; |
|---|
| 40 |
LPWSTR rp0_exportpath; |
|---|
| 41 |
LPWSTR rp0_exportlist; |
|---|
| 42 |
LPWSTR rp0_importpath; |
|---|
| 43 |
LPWSTR rp0_importlist; |
|---|
| 44 |
LPWSTR rp0_logonusername; |
|---|
| 45 |
DWORD rp0_interval; |
|---|
| 46 |
DWORD rp0_pulse; |
|---|
| 47 |
DWORD rp0_guardtime; |
|---|
| 48 |
DWORD rp0_random; |
|---|
| 49 |
} |
|---|
| 50 |
alias REPL_INFO_0* PREPL_INFO_0, LPREPL_INFO_0; |
|---|
| 51 |
|
|---|
| 52 |
struct REPL_INFO_1000 { |
|---|
| 53 |
DWORD rp1000_interval; |
|---|
| 54 |
} |
|---|
| 55 |
alias REPL_INFO_1000* PREPL_INFO_1000, LPREPL_INFO_1000; |
|---|
| 56 |
|
|---|
| 57 |
struct REPL_INFO_1001 { |
|---|
| 58 |
DWORD rp1001_pulse; |
|---|
| 59 |
} |
|---|
| 60 |
alias REPL_INFO_1001* PREPL_INFO_1001, LPREPL_INFO_1001; |
|---|
| 61 |
|
|---|
| 62 |
struct REPL_INFO_1002 { |
|---|
| 63 |
DWORD rp1002_guardtime; |
|---|
| 64 |
} |
|---|
| 65 |
alias REPL_INFO_1002* PREPL_INFO_1002, LPREPL_INFO_1002; |
|---|
| 66 |
|
|---|
| 67 |
struct REPL_INFO_1003 { |
|---|
| 68 |
DWORD rp1003_random; |
|---|
| 69 |
} |
|---|
| 70 |
alias REPL_INFO_1003* PREPL_INFO_1003, LPREPL_INFO_1003; |
|---|
| 71 |
|
|---|
| 72 |
struct REPL_EDIR_INFO_0 { |
|---|
| 73 |
LPWSTR rped0_dirname; |
|---|
| 74 |
} |
|---|
| 75 |
alias REPL_EDIR_INFO_0* PREPL_EDIR_INFO_0, LPREPL_EDIR_INFO_0; |
|---|
| 76 |
|
|---|
| 77 |
struct REPL_EDIR_INFO_1 { |
|---|
| 78 |
LPWSTR rped1_dirname; |
|---|
| 79 |
DWORD rped1_integrity; |
|---|
| 80 |
DWORD rped1_extent; |
|---|
| 81 |
} |
|---|
| 82 |
alias REPL_EDIR_INFO_1* PREPL_EDIR_INFO_1, LPREPL_EDIR_INFO_1; |
|---|
| 83 |
|
|---|
| 84 |
struct REPL_EDIR_INFO_2 { |
|---|
| 85 |
LPWSTR rped2_dirname; |
|---|
| 86 |
DWORD rped2_integrity; |
|---|
| 87 |
DWORD rped2_extent; |
|---|
| 88 |
DWORD rped2_lockcount; |
|---|
| 89 |
DWORD rped2_locktime; |
|---|
| 90 |
} |
|---|
| 91 |
alias REPL_EDIR_INFO_2* PREPL_EDIR_INFO_2, LPREPL_EDIR_INFO_2; |
|---|
| 92 |
|
|---|
| 93 |
struct REPL_EDIR_INFO_1000 { |
|---|
| 94 |
DWORD rped1000_integrity; |
|---|
| 95 |
} |
|---|
| 96 |
alias REPL_EDIR_INFO_1000* PREPL_EDIR_INFO_1000, LPREPL_EDIR_INFO_1000; |
|---|
| 97 |
|
|---|
| 98 |
struct REPL_EDIR_INFO_1001 { |
|---|
| 99 |
DWORD rped1001_extent; |
|---|
| 100 |
} |
|---|
| 101 |
alias REPL_EDIR_INFO_1001* PREPL_EDIR_INFO_1001, LPREPL_EDIR_INFO_1001; |
|---|
| 102 |
|
|---|
| 103 |
struct REPL_IDIR_INFO_0 { |
|---|
| 104 |
LPWSTR rpid0_dirname; |
|---|
| 105 |
} |
|---|
| 106 |
alias REPL_IDIR_INFO_0* PREPL_IDIR_INFO_0, LPREPL_IDIR_INFO_0; |
|---|
| 107 |
|
|---|
| 108 |
struct REPL_IDIR_INFO_1 { |
|---|
| 109 |
LPWSTR rpid1_dirname; |
|---|
| 110 |
DWORD rpid1_state; |
|---|
| 111 |
LPWSTR rpid1_mastername; |
|---|
| 112 |
DWORD rpid1_last_update_time; |
|---|
| 113 |
DWORD rpid1_lockcount; |
|---|
| 114 |
DWORD rpid1_locktime; |
|---|
| 115 |
} |
|---|
| 116 |
alias REPL_IDIR_INFO_1* PREPL_IDIR_INFO_1, LPREPL_IDIR_INFO_1; |
|---|
| 117 |
|
|---|
| 118 |
extern (Windows) { |
|---|
| 119 |
NET_API_STATUS NetReplGetInfo(LPCWSTR,DWORD,PBYTE*); |
|---|
| 120 |
NET_API_STATUS NetReplSetInfo(LPCWSTR,DWORD,PBYTE,PDWORD); |
|---|
| 121 |
NET_API_STATUS NetReplExportDirAdd(LPCWSTR,DWORD,PBYTE,PDWORD); |
|---|
| 122 |
NET_API_STATUS NetReplExportDirDel(LPCWSTR,LPCWSTR); |
|---|
| 123 |
NET_API_STATUS NetReplExportDirEnum(LPCWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD); |
|---|
| 124 |
NET_API_STATUS NetReplExportDirGetInfo(LPCWSTR,LPCWSTR,DWORD,PBYTE*); |
|---|
| 125 |
NET_API_STATUS NetReplExportDirSetInfo(LPCWSTR,LPCWSTR,DWORD,PBYTE,PDWORD); |
|---|
| 126 |
NET_API_STATUS NetReplExportDirLock(LPCWSTR,LPCWSTR); |
|---|
| 127 |
NET_API_STATUS NetReplExportDirUnlock(LPCWSTR,LPCWSTR,DWORD); |
|---|
| 128 |
NET_API_STATUS NetReplImportDirAdd(LPCWSTR,DWORD,PBYTE,PDWORD); |
|---|
| 129 |
NET_API_STATUS NetReplImportDirDel(LPCWSTR,LPCWSTR); |
|---|
| 130 |
NET_API_STATUS NetReplImportDirEnum(LPCWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD); |
|---|
| 131 |
NET_API_STATUS NetReplImportDirGetInfo(LPCWSTR,LPCWSTR,DWORD,PBYTE*); |
|---|
| 132 |
NET_API_STATUS NetReplImportDirLock(LPCWSTR,LPCWSTR); |
|---|
| 133 |
NET_API_STATUS NetReplImportDirUnlock(LPCWSTR,LPCWSTR,DWORD); |
|---|
| 134 |
} |
|---|