summaryrefslogtreecommitdiff
path: root/include/lldb/Host/FileSystem.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/lldb/Host/FileSystem.h')
-rw-r--r--include/lldb/Host/FileSystem.h31
1 files changed, 24 insertions, 7 deletions
diff --git a/include/lldb/Host/FileSystem.h b/include/lldb/Host/FileSystem.h
index adcbfc9d590d..bea1ec80172e 100644
--- a/include/lldb/Host/FileSystem.h
+++ b/include/lldb/Host/FileSystem.h
@@ -24,19 +24,36 @@ class FileSystem
public:
static FileSpec::PathSyntax GetNativePathSyntax();
- static Error MakeDirectory(const char *path, uint32_t mode);
- static Error DeleteDirectory(const char *path, bool recurse);
+ static Error MakeDirectory(const FileSpec &file_spec, uint32_t mode);
+ static Error DeleteDirectory(const FileSpec &file_spec, bool recurse);
- static Error GetFilePermissions(const char *path, uint32_t &file_permissions);
- static Error SetFilePermissions(const char *path, uint32_t file_permissions);
+ static Error GetFilePermissions(const FileSpec &file_spec,
+ uint32_t &file_permissions);
+ static Error SetFilePermissions(const FileSpec &file_spec,
+ uint32_t file_permissions);
static lldb::user_id_t GetFileSize(const FileSpec &file_spec);
static bool GetFileExists(const FileSpec &file_spec);
- static Error Symlink(const char *src, const char *dst);
- static Error Readlink(const char *path, char *buf, size_t buf_len);
- static Error Unlink(const char *path);
+ static Error Hardlink(const FileSpec &src, const FileSpec &dst);
+ static Error Symlink(const FileSpec &src, const FileSpec &dst);
+ static Error Readlink(const FileSpec &src, FileSpec &dst);
+ static Error Unlink(const FileSpec &file_spec);
static bool CalculateMD5(const FileSpec &file_spec, uint64_t &low, uint64_t &high);
+ static bool CalculateMD5(const FileSpec &file_spec,
+ uint64_t offset,
+ uint64_t length,
+ uint64_t &low,
+ uint64_t &high);
+
+ static bool CalculateMD5AsString(const FileSpec &file_spec, std::string& digest_str);
+ static bool CalculateMD5AsString(const FileSpec &file_spec,
+ uint64_t offset,
+ uint64_t length,
+ std::string& digest_str);
+
+ /// Return \b true if \a spec is on a locally mounted file system, \b false otherwise.
+ static bool IsLocal(const FileSpec &spec);
};
}