Sync with trunk (r48545)
[reactos.git] / include / psdk / lmrepl.h
1 #ifndef _LMREPL_H
2 #define _LMREPL_H
3
4 #ifdef __cplusplus
5 extern "C" {
6 #endif
7 #define REPL_ROLE_EXPORT 1
8 #define REPL_ROLE_IMPORT 2
9 #define REPL_ROLE_BOTH 3
10 #define REPL_INTERVAL_INFOLEVEL (PARMNUM_BASE_INFOLEVEL+0)
11 #define REPL_PULSE_INFOLEVEL (PARMNUM_BASE_INFOLEVEL+1)
12 #define REPL_GUARDTIME_INFOLEVEL (PARMNUM_BASE_INFOLEVEL+2)
13 #define REPL_RANDOM_INFOLEVEL (PARMNUM_BASE_INFOLEVEL+3)
14 #define REPL_UNLOCK_NOFORCE 0
15 #define REPL_UNLOCK_FORCE 1
16 #define REPL_STATE_OK 0
17 #define REPL_STATE_NO_MASTER 1
18 #define REPL_STATE_NO_SYNC 2
19 #define REPL_STATE_NEVER_REPLICATED 3
20 #define REPL_INTEGRITY_FILE 1
21 #define REPL_INTEGRITY_TREE 2
22 #define REPL_EXTENT_FILE 1
23 #define REPL_EXTENT_TREE 2
24 #define REPL_EXPORT_INTEGRITY_INFOLEVEL (PARMNUM_BASE_INFOLEVEL+0)
25 #define REPL_EXPORT_EXTENT_INFOLEVEL (PARMNUM_BASE_INFOLEVEL+1)
26 typedef struct _REPL_INFO_0 {
27 DWORD rp0_role;
28 LPWSTR rp0_exportpath;
29 LPWSTR rp0_exportlist;
30 LPWSTR rp0_importpath;
31 LPWSTR rp0_importlist;
32 LPWSTR rp0_logonusername;
33 DWORD rp0_interval;
34 DWORD rp0_pulse;
35 DWORD rp0_guardtime;
36 DWORD rp0_random;
37 } REPL_INFO_0,*PREPL_INFO_0,*LPREPL_INFO_0;
38 typedef struct _REPL_INFO_1000 { DWORD rp1000_interval; } REPL_INFO_1000,*PREPL_INFO_1000,*LPREPL_INFO_1000;
39 typedef struct _REPL_INFO_1001 { DWORD rp1001_pulse; } REPL_INFO_1001,*PREPL_INFO_1001,*LPREPL_INFO_1001;
40 typedef struct _REPL_INFO_1002 { DWORD rp1002_guardtime; } REPL_INFO_1002,*PREPL_INFO_1002,*LPREPL_INFO_1002;
41 typedef struct _REPL_INFO_1003 { DWORD rp1003_random; } REPL_INFO_1003,*PREPL_INFO_1003,*LPREPL_INFO_1003;
42
43 NET_API_STATUS WINAPI NetReplGetInfo(LPCWSTR,DWORD,PBYTE*);
44 NET_API_STATUS WINAPI NetReplSetInfo(LPCWSTR,DWORD,PBYTE,PDWORD);
45 typedef struct _REPL_EDIR_INFO_0 {
46 LPWSTR rped0_dirname;
47 } REPL_EDIR_INFO_0,*PREPL_EDIR_INFO_0,*LPREPL_EDIR_INFO_0;
48 typedef struct _REPL_EDIR_INFO_1 {
49 LPWSTR rped1_dirname;
50 DWORD rped1_integrity;
51 DWORD rped1_extent;
52 } REPL_EDIR_INFO_1,*PREPL_EDIR_INFO_1,*LPREPL_EDIR_INFO_1;
53 typedef struct _REPL_EDIR_INFO_2 {
54 LPWSTR rped2_dirname;
55 DWORD rped2_integrity;
56 DWORD rped2_extent;
57 DWORD rped2_lockcount;
58 DWORD rped2_locktime;
59 } REPL_EDIR_INFO_2,*PREPL_EDIR_INFO_2,*LPREPL_EDIR_INFO_2;
60 typedef struct _REPL_EDIR_INFO_1000 {
61 DWORD rped1000_integrity;
62 } REPL_EDIR_INFO_1000,*PREPL_EDIR_INFO_1000,*LPREPL_EDIR_INFO_1000;
63 typedef struct _REPL_EDIR_INFO_1001 {
64 DWORD rped1001_extent;
65 } REPL_EDIR_INFO_1001,*PREPL_EDIR_INFO_1001,*LPREPL_EDIR_INFO_1001;
66 typedef struct _REPL_IDIR_INFO_0 { LPWSTR rpid0_dirname; } REPL_IDIR_INFO_0,*PREPL_IDIR_INFO_0,*LPREPL_IDIR_INFO_0;
67 typedef struct _REPL_IDIR_INFO_1 {
68 LPWSTR rpid1_dirname;
69 DWORD rpid1_state;
70 LPWSTR rpid1_mastername;
71 DWORD rpid1_last_update_time;
72 DWORD rpid1_lockcount;
73 DWORD rpid1_locktime;
74 } REPL_IDIR_INFO_1,*PREPL_IDIR_INFO_1,*LPREPL_IDIR_INFO_1;
75 NET_API_STATUS WINAPI NetReplExportDirAdd(LPCWSTR,DWORD,PBYTE,PDWORD);
76 NET_API_STATUS WINAPI NetReplExportDirDel(LPCWSTR,LPCWSTR);
77 NET_API_STATUS WINAPI NetReplExportDirEnum(LPCWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD);
78 NET_API_STATUS WINAPI NetReplExportDirGetInfo(LPCWSTR,LPCWSTR,DWORD,PBYTE*);
79 NET_API_STATUS WINAPI NetReplExportDirSetInfo(LPCWSTR,LPCWSTR,DWORD,PBYTE,PDWORD);
80 NET_API_STATUS WINAPI NetReplExportDirLock(LPCWSTR,LPCWSTR);
81 NET_API_STATUS WINAPI NetReplExportDirUnlock(LPCWSTR,LPCWSTR,DWORD);
82 NET_API_STATUS WINAPI NetReplImportDirAdd(LPCWSTR,DWORD,PBYTE,PDWORD);
83 NET_API_STATUS WINAPI NetReplImportDirDel(LPCWSTR,LPCWSTR);
84 NET_API_STATUS WINAPI NetReplImportDirEnum(LPCWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD);
85 NET_API_STATUS WINAPI NetReplImportDirGetInfo(LPCWSTR,LPCWSTR,DWORD,PBYTE*);
86 NET_API_STATUS WINAPI NetReplImportDirLock(LPCWSTR,LPCWSTR);
87 NET_API_STATUS WINAPI NetReplImportDirUnlock(LPCWSTR,LPCWSTR,DWORD);
88 #ifdef __cplusplus
89 }
90 #endif
91 #endif