mirror of
https://github.com/winfsp/winfsp.git
synced 2025-04-23 17:03:12 -05:00
tst: winfsp-tests: add/remove network shares from memfs_start/memfs_stop to properly support test file system
This commit is contained in:
parent
8b31b1018b
commit
728c1b3402
@ -11,6 +11,7 @@ void *memfs_start_ex(ULONG Flags, ULONG FileInfoTimeout)
|
|||||||
{
|
{
|
||||||
if (-1 == Flags)
|
if (-1 == Flags)
|
||||||
{
|
{
|
||||||
|
AddNetShareIfNeeded();
|
||||||
memfs_running = 1;
|
memfs_running = 1;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -38,6 +39,7 @@ void *memfs_start_ex(ULONG Flags, ULONG FileInfoTimeout)
|
|||||||
Result = MemfsStart(Memfs);
|
Result = MemfsStart(Memfs);
|
||||||
ASSERT(NT_SUCCESS(Result));
|
ASSERT(NT_SUCCESS(Result));
|
||||||
|
|
||||||
|
AddNetShareIfNeeded();
|
||||||
memfs_running = 1;
|
memfs_running = 1;
|
||||||
|
|
||||||
return Memfs;
|
return Memfs;
|
||||||
@ -50,6 +52,7 @@ void *memfs_start(ULONG Flags)
|
|||||||
|
|
||||||
void memfs_stop(void *data)
|
void memfs_stop(void *data)
|
||||||
{
|
{
|
||||||
|
RemoveNetShareIfNeeded();
|
||||||
memfs_running = 0;
|
memfs_running = 0;
|
||||||
|
|
||||||
if (0 == data)
|
if (0 == data)
|
||||||
|
@ -227,8 +227,11 @@ static VOID DisableBackupRestorePrivileges(VOID)
|
|||||||
CloseHandle(Token);
|
CloseHandle(Token);
|
||||||
}
|
}
|
||||||
|
|
||||||
static VOID AddNetworkShare(VOID)
|
VOID AddNetShareIfNeeded(VOID)
|
||||||
{
|
{
|
||||||
|
if (!OptShareName)
|
||||||
|
return;
|
||||||
|
|
||||||
SHARE_INFO_2 ShareInfo = { 0 };
|
SHARE_INFO_2 ShareInfo = { 0 };
|
||||||
NET_API_STATUS NetStatus;
|
NET_API_STATUS NetStatus;
|
||||||
|
|
||||||
@ -244,6 +247,14 @@ static VOID AddNetworkShare(VOID)
|
|||||||
ABORT("cannot add network share");
|
ABORT("cannot add network share");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
VOID RemoveNetShareIfNeeded(VOID)
|
||||||
|
{
|
||||||
|
if (!OptShareName)
|
||||||
|
return;
|
||||||
|
|
||||||
|
NetShareDel(0, OptShareName, 0);
|
||||||
|
}
|
||||||
|
|
||||||
static void abort_handler(int sig)
|
static void abort_handler(int sig)
|
||||||
{
|
{
|
||||||
DWORD Error = GetLastError();
|
DWORD Error = GetLastError();
|
||||||
@ -348,9 +359,6 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
DisableBackupRestorePrivileges();
|
DisableBackupRestorePrivileges();
|
||||||
|
|
||||||
if (OptShareName)
|
|
||||||
AddNetworkShare();
|
|
||||||
|
|
||||||
myrandseed = (unsigned)time(0);
|
myrandseed = (unsigned)time(0);
|
||||||
|
|
||||||
tlib_run_tests(argc, argv);
|
tlib_run_tests(argc, argv);
|
||||||
@ -360,6 +368,5 @@ int main(int argc, char *argv[])
|
|||||||
static void exiting(void)
|
static void exiting(void)
|
||||||
{
|
{
|
||||||
OutputDebugStringA("winfsp-tests: exiting\n");
|
OutputDebugStringA("winfsp-tests: exiting\n");
|
||||||
if (OptShareName)
|
RemoveNetShareIfNeeded();
|
||||||
NetShareDel(0, OptShareName, 0);
|
|
||||||
}
|
}
|
||||||
|
@ -17,6 +17,9 @@ HANDLE HookCreateFileW(
|
|||||||
DWORD dwFlagsAndAttributes,
|
DWORD dwFlagsAndAttributes,
|
||||||
HANDLE hTemplateFile);
|
HANDLE hTemplateFile);
|
||||||
|
|
||||||
|
VOID AddNetShareIfNeeded(VOID);
|
||||||
|
VOID RemoveNetShareIfNeeded(VOID);
|
||||||
|
|
||||||
extern int NtfsTests;
|
extern int NtfsTests;
|
||||||
extern int WinFspDiskTests;
|
extern int WinFspDiskTests;
|
||||||
extern int WinFspNetTests;
|
extern int WinFspNetTests;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user