aboutsummaryrefslogtreecommitdiffstats
path: root/util/system/fs_win.h
blob: e46f7a2fda082ff8b1fbc8d3afc6bd07a36d15a3 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#pragma once

#include "winint.h"
#include "defaults.h"

#include <util/generic/strbuf.h>
#include <util/generic/string.h>

namespace NFsPrivate {
    bool WinRename(const TString& oldPath, const TString& newPath);

    bool WinSymLink(const TString& targetName, const TString& linkName);

    bool WinHardLink(const TString& existingPath, const TString& newPath);

    TString WinReadLink(const TString& path);

    ULONG WinReadReparseTag(HANDLE h);

    HANDLE CreateFileWithUtf8Name(const TStringBuf fName, ui32 accessMode, ui32 shareMode, ui32 createMode, ui32 attributes, bool inheritHandle);

    bool WinRemove(const TString& path);

    bool WinExists(const TString& path);

    TString WinCurrentWorkingDirectory();

    bool WinSetCurrentWorkingDirectory(const TString& path);

    bool WinMakeDirectory(const TString& path);
} // namespace NFsPrivate