reactos/sdk/include/psdk/lmrepl.h
Timo Kreuzer b7ab90d932 [PSDK] Improve lmrepl.h
Added public domain header. This file was originally imported in r8283 from w32api where is has no copyright.
2019-04-26 10:30:01 +02:00

250 lines
5.6 KiB
C

/*
* 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_GUARDTIME_INFOLEVEL (PARMNUM_BASE_INFOLEVEL+2)
#define REPL_RANDOM_INFOLEVEL (PARMNUM_BASE_INFOLEVEL+3)
#define REPL_UNLOCK_NOFORCE 0
#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
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