vssapi: Add stub implementations for a couple of functions.
This commit is contained in:
parent
153d389f45
commit
a4a48d3fc8
|
@ -1 +1,4 @@
|
|||
MODULE = vssapi.dll
|
||||
|
||||
C_SRCS = \
|
||||
main.c
|
||||
|
|
|
@ -0,0 +1,108 @@
|
|||
/*
|
||||
* Copyright 2014 Hans Leidekker for CodeWeavers
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
#include <stdarg.h>
|
||||
#include "windef.h"
|
||||
#include "winbase.h"
|
||||
#include "vss.h"
|
||||
#include "vswriter.h"
|
||||
#include "wine/debug.h"
|
||||
|
||||
WINE_DEFAULT_DEBUG_CHANNEL( vssapi );
|
||||
|
||||
#ifdef __i386__ /* thiscall functions are i386-specific */
|
||||
|
||||
#define THISCALL(func) __thiscall_ ## func
|
||||
#define THISCALL_NAME(func) __ASM_NAME("__thiscall_" #func)
|
||||
#define __thiscall __stdcall
|
||||
#define DEFINE_THISCALL_WRAPPER(func,args) \
|
||||
extern void THISCALL(func)(void); \
|
||||
__ASM_GLOBAL_FUNC(__thiscall_ ## func, \
|
||||
"popl %eax\n\t" \
|
||||
"pushl %ecx\n\t" \
|
||||
"pushl %eax\n\t" \
|
||||
"jmp " __ASM_NAME(#func) __ASM_STDCALL(args) )
|
||||
#else /* __i386__ */
|
||||
|
||||
#define THISCALL(func) func
|
||||
#define THISCALL_NAME(func) __ASM_NAME(#func)
|
||||
#define __thiscall __cdecl
|
||||
#define DEFINE_THISCALL_WRAPPER(func,args) /* nothing */
|
||||
|
||||
#endif /* __i386__ */
|
||||
|
||||
struct CVssWriter
|
||||
{
|
||||
void **vtable;
|
||||
};
|
||||
|
||||
/******************************************************************
|
||||
* ??0CVssWriter@@QAE@XZ (VSSAPI.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER( VSSAPI_CVssWriter_default_ctor, 4 )
|
||||
struct CVssWriter * __thiscall VSSAPI_CVssWriter_default_ctor( struct CVssWriter *writer )
|
||||
{
|
||||
FIXME( "%p\n", writer );
|
||||
writer->vtable = NULL;
|
||||
return writer;
|
||||
}
|
||||
|
||||
/******************************************************************
|
||||
* ??1CVssWriter@@UAE@XZ (VSSAPI.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER( VSSAPI_CVssWriter_dtor, 4 )
|
||||
void __thiscall VSSAPI_CVssWriter_dtor( struct CVssWriter *writer )
|
||||
{
|
||||
FIXME( "%p\n", writer );
|
||||
}
|
||||
|
||||
/******************************************************************
|
||||
* ?Initialize@CVssWriter@@QAGJU_GUID@@PBGW4VSS_USAGE_TYPE@@W4VSS_SOURCE_TYPE@@W4_VSS_APPLICATION_LEVEL@@KW4VSS_ALTERNATE_WRITER_STATE@@_N@Z
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER( VSSAPI_CVssWriter_Initialize, 52 )
|
||||
HRESULT __thiscall VSSAPI_CVssWriter_Initialize( struct CVssWriter *writer, VSS_ID id,
|
||||
LPCWSTR name, VSS_USAGE_TYPE usage_type, VSS_SOURCE_TYPE source_type,
|
||||
VSS_APPLICATION_LEVEL level, DWORD timeout, VSS_ALTERNATE_WRITER_STATE alt_writer_state,
|
||||
BOOL throttle, LPCWSTR instance )
|
||||
{
|
||||
FIXME( "%p, %s, %s, %u, %u, %u, %u, %u, %d, %s\n", writer, debugstr_guid(&id),
|
||||
debugstr_w(name), usage_type, source_type, level, timeout, alt_writer_state,
|
||||
throttle, debugstr_w(instance) );
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
/******************************************************************
|
||||
* ?Subscribe@CVssWriter@@QAGJK@Z
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER( VSSAPI_CVssWriter_Subscribe, 8 )
|
||||
HRESULT __thiscall VSSAPI_CVssWriter_Subscribe( struct CVssWriter *writer, DWORD flags )
|
||||
{
|
||||
FIXME( "%p, %x\n", writer, flags );
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
/******************************************************************
|
||||
* ?Unsubscribe@CVssWriter@@QAGJXZ
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER( VSSAPI_CVssWriter_Unsubscribe, 4 )
|
||||
HRESULT __thiscall VSSAPI_CVssWriter_Unsubscribe( struct CVssWriter *writer )
|
||||
{
|
||||
FIXME( "%p\n", writer );
|
||||
return S_OK;
|
||||
}
|
|
@ -2,9 +2,9 @@
|
|||
@ stub VssFreeSnapshotProperties
|
||||
@ stub ShouldBlockRevert
|
||||
@ stub ??0CVssJetWriter@@QAE@XZ
|
||||
@ stub ??0CVssWriter@@QAE@XZ
|
||||
@ thiscall -arch=i386 ??0CVssWriter@@QAE@XZ(ptr) VSSAPI_CVssWriter_default_ctor
|
||||
@ stub ??1CVssJetWriter@@UAE@XZ
|
||||
@ stub ??1CVssWriter@@UAE@XZ
|
||||
@ thiscall -arch=i386 ??1CVssWriter@@UAE@XZ(ptr) VSSAPI_CVssWriter_dtor
|
||||
@ stub ?AreComponentsSelected@CVssJetWriter@@IBG_NXZ
|
||||
@ stub ?AreComponentsSelected@CVssWriter@@IBG_NXZ
|
||||
@ stub ?CreateVssBackupComponents@@YGJPAPAVIVssBackupComponents@@@Z
|
||||
|
@ -27,7 +27,7 @@
|
|||
@ stub ?GetSnapshotDeviceName@CVssJetWriter@@IBGJPBGPAPBG@Z
|
||||
@ stub ?GetSnapshotDeviceName@CVssWriter@@IBGJPBGPAPBG@Z
|
||||
@ stub ?Initialize@CVssJetWriter@@QAGJU_GUID@@PBG_N211K@Z
|
||||
@ stub ?Initialize@CVssWriter@@QAGJU_GUID@@PBGW4VSS_USAGE_TYPE@@W4VSS_SOURCE_TYPE@@W4_VSS_APPLICATION_LEVEL@@KW4VSS_ALTERNATE_WRITER_STATE@@_N@Z
|
||||
@ thiscall -arch=i386 ?Initialize@CVssWriter@@QAGJU_GUID@@PBGW4VSS_USAGE_TYPE@@W4VSS_SOURCE_TYPE@@W4_VSS_APPLICATION_LEVEL@@KW4VSS_ALTERNATE_WRITER_STATE@@_N@Z(ptr ptr wstr long long long long long long wstr) VSSAPI_CVssWriter_Initialize
|
||||
@ stub ?InstallAlternateWriter@CVssWriter@@QAGJU_GUID@@0@Z
|
||||
@ stub ?IsBootableSystemStateBackedUp@CVssJetWriter@@IBG_NXZ
|
||||
@ stub ?IsBootableSystemStateBackedUp@CVssWriter@@IBG_NXZ
|
||||
|
@ -67,9 +67,9 @@
|
|||
@ stub ?OnVSSShutdown@CVssWriter@@UAG_NXZ
|
||||
@ stub ?SetWriterFailure@CVssJetWriter@@IAGJJ@Z
|
||||
@ stub ?SetWriterFailure@CVssWriter@@IAGJJ@Z
|
||||
@ stub ?Subscribe@CVssWriter@@QAGJK@Z
|
||||
@ thiscall -arch=i386 ?Subscribe@CVssWriter@@QAGJK@Z(ptr long) VSSAPI_CVssWriter_Subscribe
|
||||
@ stub ?Uninitialize@CVssJetWriter@@QAGXXZ
|
||||
@ stub ?Unsubscribe@CVssWriter@@QAGJXZ
|
||||
@ thiscall -arch=i386 ?Unsubscribe@CVssWriter@@QAGJXZ(ptr) VSSAPI_CVssWriter_Unsubscribe
|
||||
@ stub CreateVssBackupComponentsInternal
|
||||
@ stub CreateVssExamineWriterMetadataInternal
|
||||
@ stub CreateVssExpressWriterInternal
|
||||
|
|
|
@ -118,6 +118,7 @@ PUBLIC_IDL_H_SRCS = \
|
|||
urlhist.idl \
|
||||
urlmon.idl \
|
||||
vmr9.idl \
|
||||
vss.idl \
|
||||
wbemcli.idl \
|
||||
wbemdisp.idl \
|
||||
wbemprov.idl \
|
||||
|
@ -577,6 +578,7 @@ SRCDIR_INCLUDES = \
|
|||
vmrender.idl \
|
||||
vsstyle.h \
|
||||
vssym32.h \
|
||||
vswriter.h \
|
||||
werapi.h \
|
||||
wfext.h \
|
||||
wia.h \
|
||||
|
|
|
@ -0,0 +1,31 @@
|
|||
/*
|
||||
* Copyright 2014 Hans Leidekker for CodeWeavers
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*/
|
||||
|
||||
import "oaidl.idl";
|
||||
|
||||
typedef GUID VSS_ID;
|
||||
|
||||
typedef enum _VSS_APPLICATION_LEVEL
|
||||
{
|
||||
VSS_APP_AUTO = -1,
|
||||
VSS_APP_UNKNOWN = 0,
|
||||
VSS_APP_SYSTEM = 1,
|
||||
VSS_APP_BACK_END = 2,
|
||||
VSS_APP_FRONT_END = 3,
|
||||
VSS_APP_SYSTEM_RM = 4
|
||||
} VSS_APPLICATION_LEVEL;
|
|
@ -0,0 +1,47 @@
|
|||
/*
|
||||
* Copyright 2014 Hans Leidekker for CodeWeavers
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*/
|
||||
|
||||
#ifndef __WINE_VSWRITER_H
|
||||
#define __WINE_VSWRITER_H
|
||||
|
||||
typedef enum
|
||||
{
|
||||
VSS_UT_UNDEFINED,
|
||||
VSS_UT_BOOTABLESYSTEMSTATE,
|
||||
VSS_UT_SYSTEMSERVICE,
|
||||
VSS_UT_USERDATA,
|
||||
VSS_UT_OTHER
|
||||
} VSS_USAGE_TYPE;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
VSS_ST_UNDEFINED,
|
||||
VSS_ST_TRANSACTEDDB,
|
||||
VSS_ST_NONTRANSACTEDDB,
|
||||
VSS_ST_OTHER
|
||||
} VSS_SOURCE_TYPE;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
VSS_AWS_UNDEFINED,
|
||||
VSS_AWS_NO_ALTERNATE_WRITER,
|
||||
VSS_AWS_ALTERNATE_WRITER_EXISTS,
|
||||
VSS_AWS_THIS_IS_ALTERNATE_WRITER
|
||||
} VSS_ALTERNATE_WRITER_STATE;
|
||||
|
||||
#endif /* ___WINE_VSWRITER_H */
|
Loading…
Reference in New Issue