https://git.reactos.org/?p=reactos.git;a=commitdiff;h=b7ab90d93287ffc02d4c2…
commit b7ab90d93287ffc02d4c2f2603630d9660fc367a
Author: Timo Kreuzer <timo.kreuzer(a)reactos.org>
AuthorDate: Sun Apr 21 12:59:23 2019 +0200
Commit: Timo Kreuzer <timo.kreuzer(a)reactos.org>
CommitDate: Fri Apr 26 10:30:01 2019 +0200
[PSDK] Improve lmrepl.h
Added public domain header. This file was originally imported in r8283 from w32api
where is has no copyright.
---
sdk/include/psdk/lmrepl.h | 300 +++++++++++++++++++++++++++++++++++-----------
1 file changed, 229 insertions(+), 71 deletions(-)
diff --git a/sdk/include/psdk/lmrepl.h b/sdk/include/psdk/lmrepl.h
index 706ebba596..e950f5a273 100644
--- a/sdk/include/psdk/lmrepl.h
+++ b/sdk/include/psdk/lmrepl.h
@@ -1,91 +1,249 @@
-#ifndef _LMREPL_H
-#define _LMREPL_H
+/*
+ * lmrepl.h
+ *
+ * This file is part of the ReactOS PSDK package.
+ *
+ * THIS SOFTWARE IS NOT COPYRIGHTED
+ *
+ * This source code is offered for use in the public domain. You may
+ * use, modify or distribute it freely.
+ *
+ * This code is distributed in the hope that it will be useful but
+ * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
+ * DISCLAIMED. This includes but is not limited to warranties of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ *
+ */
+
+#pragma once
+#define _LMREPL_
#ifdef __cplusplus
extern "C" {
#endif
+
#define REPL_ROLE_EXPORT 1
#define REPL_ROLE_IMPORT 2
-#define REPL_ROLE_BOTH 3
-#define REPL_INTERVAL_INFOLEVEL (PARMNUM_BASE_INFOLEVEL+0)
-#define REPL_PULSE_INFOLEVEL (PARMNUM_BASE_INFOLEVEL+1)
+#define REPL_ROLE_BOTH 3
+
+#define REPL_INTERVAL_INFOLEVEL (PARMNUM_BASE_INFOLEVEL+0)
+#define REPL_PULSE_INFOLEVEL (PARMNUM_BASE_INFOLEVEL+1)
#define REPL_GUARDTIME_INFOLEVEL (PARMNUM_BASE_INFOLEVEL+2)
-#define REPL_RANDOM_INFOLEVEL (PARMNUM_BASE_INFOLEVEL+3)
+#define REPL_RANDOM_INFOLEVEL (PARMNUM_BASE_INFOLEVEL+3)
+
#define REPL_UNLOCK_NOFORCE 0
-#define REPL_UNLOCK_FORCE 1
+#define REPL_UNLOCK_FORCE 1
+
#define REPL_STATE_OK 0
#define REPL_STATE_NO_MASTER 1
#define REPL_STATE_NO_SYNC 2
#define REPL_STATE_NEVER_REPLICATED 3
+
#define REPL_INTEGRITY_FILE 1
#define REPL_INTEGRITY_TREE 2
+
#define REPL_EXTENT_FILE 1
#define REPL_EXTENT_TREE 2
+
#define REPL_EXPORT_INTEGRITY_INFOLEVEL (PARMNUM_BASE_INFOLEVEL+0)
-#define REPL_EXPORT_EXTENT_INFOLEVEL (PARMNUM_BASE_INFOLEVEL+1)
-typedef struct _REPL_INFO_0 {
- DWORD rp0_role;
- LPWSTR rp0_exportpath;
- LPWSTR rp0_exportlist;
- LPWSTR rp0_importpath;
- LPWSTR rp0_importlist;
- LPWSTR rp0_logonusername;
- DWORD rp0_interval;
- DWORD rp0_pulse;
- DWORD rp0_guardtime;
- DWORD rp0_random;
-} REPL_INFO_0,*PREPL_INFO_0,*LPREPL_INFO_0;
-typedef struct _REPL_INFO_1000 { DWORD rp1000_interval; }
REPL_INFO_1000,*PREPL_INFO_1000,*LPREPL_INFO_1000;
-typedef struct _REPL_INFO_1001 { DWORD rp1001_pulse; }
REPL_INFO_1001,*PREPL_INFO_1001,*LPREPL_INFO_1001;
-typedef struct _REPL_INFO_1002 { DWORD rp1002_guardtime; }
REPL_INFO_1002,*PREPL_INFO_1002,*LPREPL_INFO_1002;
-typedef struct _REPL_INFO_1003 { DWORD rp1003_random; }
REPL_INFO_1003,*PREPL_INFO_1003,*LPREPL_INFO_1003;
-
-NET_API_STATUS WINAPI NetReplGetInfo(LPCWSTR,DWORD,PBYTE*);
-NET_API_STATUS WINAPI NetReplSetInfo(LPCWSTR,DWORD,const LPBYTE,PDWORD);
-typedef struct _REPL_EDIR_INFO_0 {
- LPWSTR rped0_dirname;
-} REPL_EDIR_INFO_0,*PREPL_EDIR_INFO_0,*LPREPL_EDIR_INFO_0;
-typedef struct _REPL_EDIR_INFO_1 {
- LPWSTR rped1_dirname;
- DWORD rped1_integrity;
- DWORD rped1_extent;
-} REPL_EDIR_INFO_1,*PREPL_EDIR_INFO_1,*LPREPL_EDIR_INFO_1;
-typedef struct _REPL_EDIR_INFO_2 {
- LPWSTR rped2_dirname;
- DWORD rped2_integrity;
- DWORD rped2_extent;
- DWORD rped2_lockcount;
- DWORD rped2_locktime;
-} REPL_EDIR_INFO_2,*PREPL_EDIR_INFO_2,*LPREPL_EDIR_INFO_2;
-typedef struct _REPL_EDIR_INFO_1000 {
- DWORD rped1000_integrity;
-} REPL_EDIR_INFO_1000,*PREPL_EDIR_INFO_1000,*LPREPL_EDIR_INFO_1000;
-typedef struct _REPL_EDIR_INFO_1001 {
- DWORD rped1001_extent;
-} REPL_EDIR_INFO_1001,*PREPL_EDIR_INFO_1001,*LPREPL_EDIR_INFO_1001;
-typedef struct _REPL_IDIR_INFO_0 { LPWSTR rpid0_dirname; }
REPL_IDIR_INFO_0,*PREPL_IDIR_INFO_0,*LPREPL_IDIR_INFO_0;
-typedef struct _REPL_IDIR_INFO_1 {
- LPWSTR rpid1_dirname;
- DWORD rpid1_state;
- LPWSTR rpid1_mastername;
- DWORD rpid1_last_update_time;
- DWORD rpid1_lockcount;
- DWORD rpid1_locktime;
-} REPL_IDIR_INFO_1,*PREPL_IDIR_INFO_1,*LPREPL_IDIR_INFO_1;
-NET_API_STATUS WINAPI NetReplExportDirAdd(LPCWSTR,DWORD,const LPBYTE,PDWORD);
-NET_API_STATUS WINAPI NetReplExportDirDel(LPCWSTR,LPCWSTR);
-NET_API_STATUS WINAPI
NetReplExportDirEnum(LPCWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD);
-NET_API_STATUS WINAPI NetReplExportDirGetInfo(LPCWSTR,LPCWSTR,DWORD,PBYTE*);
-NET_API_STATUS WINAPI NetReplExportDirSetInfo(LPCWSTR,LPCWSTR,DWORD,const
LPBYTE,PDWORD);
-NET_API_STATUS WINAPI NetReplExportDirLock(LPCWSTR,LPCWSTR);
-NET_API_STATUS WINAPI NetReplExportDirUnlock(LPCWSTR,LPCWSTR,DWORD);
-NET_API_STATUS WINAPI NetReplImportDirAdd(LPCWSTR,DWORD,const LPBYTE,PDWORD);
-NET_API_STATUS WINAPI NetReplImportDirDel(LPCWSTR,LPCWSTR);
-NET_API_STATUS WINAPI
NetReplImportDirEnum(LPCWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD);
-NET_API_STATUS WINAPI NetReplImportDirGetInfo(LPCWSTR,LPCWSTR,DWORD,PBYTE*);
-NET_API_STATUS WINAPI NetReplImportDirLock(LPCWSTR,LPCWSTR);
-NET_API_STATUS WINAPI NetReplImportDirUnlock(LPCWSTR,LPCWSTR,DWORD);
+#define REPL_EXPORT_EXTENT_INFOLEVEL (PARMNUM_BASE_INFOLEVEL+1)
+
+typedef struct _REPL_INFO_0
+{
+ DWORD rp0_role;
+ LPWSTR rp0_exportpath;
+ LPWSTR rp0_exportlist;
+ LPWSTR rp0_importpath;
+ LPWSTR rp0_importlist;
+ LPWSTR rp0_logonusername;
+ DWORD rp0_interval;
+ DWORD rp0_pulse;
+ DWORD rp0_guardtime;
+ DWORD rp0_random;
+} REPL_INFO_0, * PREPL_INFO_0, * LPREPL_INFO_0;
+
+typedef struct _REPL_INFO_1000
+{
+ DWORD rp1000_interval;
+} REPL_INFO_1000,*PREPL_INFO_1000,*LPREPL_INFO_1000;
+
+typedef struct _REPL_INFO_1001
+{
+ DWORD rp1001_pulse;
+} REPL_INFO_1001,*PREPL_INFO_1001,*LPREPL_INFO_1001;
+
+typedef struct _REPL_INFO_1002
+{
+ DWORD rp1002_guardtime;
+} REPL_INFO_1002,*PREPL_INFO_1002,*LPREPL_INFO_1002;
+
+typedef struct _REPL_INFO_1003
+{
+ DWORD rp1003_random;
+} REPL_INFO_1003,*PREPL_INFO_1003,*LPREPL_INFO_1003;
+
+NET_API_STATUS
+NET_API_FUNCTION
+NetReplGetInfo(
+ _In_ LPCWSTR servername OPTIONAL,
+ _In_ DWORD level,
+ _Out_ LPBYTE* bufptr);
+
+NET_API_STATUS
+WINAPI
+NetReplSetInfo(
+ _In_opt_ LPCWSTR servername,
+ _In_ DWORD level,
+ _In_ const LPBYTE buf,
+ _Out_opt_ LPDWORD parm_err);
+
+typedef struct _REPL_EDIR_INFO_0
+{
+ LPWSTR rped0_dirname;
+} REPL_EDIR_INFO_0, * PREPL_EDIR_INFO_0, * LPREPL_EDIR_INFO_0;
+
+typedef struct _REPL_EDIR_INFO_1
+{
+ LPWSTR rped1_dirname;
+ DWORD rped1_integrity;
+ DWORD rped1_extent;
+} REPL_EDIR_INFO_1, * PREPL_EDIR_INFO_1, * LPREPL_EDIR_INFO_1;
+
+typedef struct _REPL_EDIR_INFO_2
+{
+ LPWSTR rped2_dirname;
+ DWORD rped2_integrity;
+ DWORD rped2_extent;
+ DWORD rped2_lockcount;
+ DWORD rped2_locktime;
+} REPL_EDIR_INFO_2, * PREPL_EDIR_INFO_2, * LPREPL_EDIR_INFO_2;
+
+typedef struct _REPL_EDIR_INFO_1000
+{
+ DWORD rped1000_integrity;
+} REPL_EDIR_INFO_1000, * PREPL_EDIR_INFO_1000, * LPREPL_EDIR_INFO_1000;
+
+typedef struct _REPL_EDIR_INFO_1001
+{
+ DWORD rped1001_extent;
+} REPL_EDIR_INFO_1001, * PREPL_EDIR_INFO_1001, * LPREPL_EDIR_INFO_1001;
+
+typedef struct _REPL_IDIR_INFO_0
+{
+ LPWSTR rpid0_dirname;
+} REPL_IDIR_INFO_0, * PREPL_IDIR_INFO_0, * LPREPL_IDIR_INFO_0;
+
+typedef struct _REPL_IDIR_INFO_1
+{
+ LPWSTR rpid1_dirname;
+ DWORD rpid1_state;
+ LPWSTR rpid1_mastername;
+ DWORD rpid1_last_update_time;
+ DWORD rpid1_lockcount;
+ DWORD rpid1_locktime;
+} REPL_IDIR_INFO_1, * PREPL_IDIR_INFO_1, * LPREPL_IDIR_INFO_1;
+
+NET_API_STATUS
+NET_API_FUNCTION
+NetReplExportDirAdd(
+ _In_opt_ LPCWSTR servername,
+ _In_ DWORD level,
+ _In_ const LPBYTE buf,
+ _Out_opt_ LPDWORD parm_err);
+
+NET_API_STATUS
+NET_API_FUNCTION
+NetReplExportDirDel(
+ _In_opt_ LPCWSTR servername,
+ _In_ LPCWSTR dirname);
+
+NET_API_STATUS
+NET_API_FUNCTION
+NetReplExportDirEnum(
+ _In_opt_ LPCWSTR servername,
+ _In_ DWORD level,
+ _Out_ LPBYTE* bufptr,
+ _In_ DWORD prefmaxlen,
+ _Out_ LPDWORD entriesread,
+ _Out_ LPDWORD totalentries,
+ _Inout_opt_ LPDWORD resumehandle);
+
+NET_API_STATUS
+NET_API_FUNCTION
+NetReplExportDirGetInfo(
+ _In_opt_ LPCWSTR servername,
+ _In_ LPCWSTR dirname,
+ _In_ DWORD level,
+ _Out_ LPBYTE* bufptr);
+
+NET_API_STATUS
+NET_API_FUNCTION
+NetReplExportDirSetInfo(
+ _In_opt_ LPCWSTR servername,
+ _In_ LPCWSTR dirname,
+ _In_ DWORD level,
+ _In_ const LPBYTE buf,
+ _Out_opt_ LPDWORD parm_err);
+
+NET_API_STATUS
+NET_API_FUNCTION
+NetReplExportDirLock(
+ _In_opt_ LPCWSTR servername,
+ _In_ LPCWSTR dirname);
+
+NET_API_STATUS
+NET_API_FUNCTION
+NetReplExportDirUnlock(
+ _In_opt_ LPCWSTR servername,
+ _In_ LPCWSTR dirname,
+ _In_ DWORD unlockforce);
+
+NET_API_STATUS
+NET_API_FUNCTION
+NetReplImportDirAdd(
+ _In_opt_ LPCWSTR servername,
+ _In_ DWORD level,
+ _In_ const LPBYTE buf,
+ _Out_opt_ LPDWORD parm_err);
+
+NET_API_STATUS
+NET_API_FUNCTION
+NetReplImportDirDel(
+ _In_opt_ LPCWSTR servername,
+ _In_ LPCWSTR dirname);
+
+NET_API_STATUS
+NET_API_FUNCTION
+NetReplImportDirEnum(
+ _In_opt_ LPCWSTR servername,
+ _In_ DWORD level,
+ _Out_ LPBYTE* bufptr,
+ _In_ DWORD prefmaxlen,
+ _Out_ LPDWORD entriesread,
+ _Out_ LPDWORD totalentries,
+ _Inout_opt_ LPDWORD resumehandle);
+
+NET_API_STATUS
+NET_API_FUNCTION
+NetReplImportDirGetInfo(
+ _In_opt_ LPCWSTR servername,
+ _In_ LPCWSTR dirname,
+ _In_ DWORD level,
+ _Out_ LPBYTE* bufptr);
+
+NET_API_STATUS
+NET_API_FUNCTION
+NetReplImportDirLock(
+ _In_opt_ LPCWSTR servername,
+ _In_ LPCWSTR dirname);
+
+NET_API_STATUS
+NET_API_FUNCTION
+NetReplImportDirUnlock(
+ _In_opt_ LPCWSTR servername,
+ _In_ LPCWSTR dirname,
+ _In_ DWORD unlockforce);
+
#ifdef __cplusplus
}
#endif
-#endif