summaryrefslogtreecommitdiffstats
path: root/lldb/source/Host/windows/Host.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Host/windows/Host.cpp')
-rw-r--r--lldb/source/Host/windows/Host.cpp110
1 files changed, 0 insertions, 110 deletions
diff --git a/lldb/source/Host/windows/Host.cpp b/lldb/source/Host/windows/Host.cpp
index bf6c1bdb86f..9fa265200e4 100644
--- a/lldb/source/Host/windows/Host.cpp
+++ b/lldb/source/Host/windows/Host.cpp
@@ -25,7 +25,6 @@
#include "lldb/Core/StreamFile.h"
// Windows includes
-#include <shellapi.h>
#include <TlHelp32.h>
using namespace lldb;
@@ -124,115 +123,6 @@ Host::GetOSVersion(uint32_t &major,
}
Error
-Host::MakeDirectory (const char* path, uint32_t mode)
-{
- // On Win32, the mode parameter is ignored, as Windows files and directories support a
- // different permission model than POSIX.
- Error error;
- if (!::CreateDirectory(path, NULL))
- error.SetError(::GetLastError(), lldb::eErrorTypeWin32);
- return error;
-}
-
-Error
-Host::GetFilePermissions (const char* path, uint32_t &file_permissions)
-{
- Error error;
- file_permissions = 0;
- DWORD attrib = ::GetFileAttributes(path);
- if (attrib == INVALID_FILE_ATTRIBUTES)
- error.SetError(::GetLastError(), lldb::eErrorTypeWin32);
- return error;
-}
-
-Error
-Host::SetFilePermissions (const char* path, uint32_t file_permissions)
-{
- Error error;
- error.SetErrorStringWithFormat("%s is not supported on this host", __PRETTY_FUNCTION__);
- return error;
-}
-
-Error
-Host::Symlink (const char *linkname, const char *target)
-{
- Error error;
- DWORD attrib = ::GetFileAttributes(target);
- if (attrib == INVALID_FILE_ATTRIBUTES)
- {
- error.SetError(::GetLastError(), lldb::eErrorTypeWin32);
- return error;
- }
- bool is_directory = !!(attrib & FILE_ATTRIBUTE_DIRECTORY);
- DWORD flag = is_directory ? SYMBOLIC_LINK_FLAG_DIRECTORY : 0;
- BOOL result = ::CreateSymbolicLink(linkname, target, flag);
- if (!result)
- error.SetError(::GetLastError(), lldb::eErrorTypeWin32);
- return error;
-}
-
-Error
-Host::Readlink (const char *path, char *buf, size_t buf_len)
-{
- Error error;
- HANDLE h = ::CreateFile(path, GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_EXISTING, FILE_FLAG_OPEN_REPARSE_POINT, NULL);
- if (h == INVALID_HANDLE_VALUE)
- {
- error.SetError(::GetLastError(), lldb::eErrorTypeWin32);
- return error;
- }
-
- // Subtract 1 from the path length since this function does not add a null terminator.
- DWORD result = ::GetFinalPathNameByHandle(h, buf, buf_len-1, FILE_NAME_NORMALIZED | VOLUME_NAME_DOS);
- if (result == 0)
- error.SetError(::GetLastError(), lldb::eErrorTypeWin32);
-
- ::CloseHandle(h);
- return error;
-}
-
-Error
-Host::Unlink (const char *path)
-{
- Error error;
- BOOL result = ::DeleteFile(path);
- if (!result)
- error.SetError(::GetLastError(), lldb::eErrorTypeWin32);
- return error;
-}
-
-Error
-Host::RemoveDirectory (const char* path, bool recurse)
-{
- Error error;
- if (!recurse)
- {
- BOOL result = ::RemoveDirectory(path);
- if (!result)
- error.SetError(::GetLastError(), lldb::eErrorTypeWin32);
- }
- else
- {
- // SHFileOperation() accepts a list of paths, and so must be double-null-terminated to
- // indicate the end of the list.
- std::string path_buffer(path);
- path_buffer.push_back(0);
-
- SHFILEOPSTRUCT shfos = {0};
- shfos.wFunc = FO_DELETE;
- shfos.pFrom = path_buffer.c_str();
- shfos.fFlags = FOF_NO_UI;
-
- int result = ::SHFileOperation(&shfos);
- // TODO(zturner): Correctly handle the intricacies of SHFileOperation return values.
- if (result != 0)
- error.SetErrorStringWithFormat("SHFileOperation failed");
- }
- return error;
-}
-
-
-Error
Host::LaunchProcess (ProcessLaunchInfo &launch_info)
{
Error error;
OpenPOWER on IntegriCloud