summaryrefslogtreecommitdiff
path: root/chromium/components/filesystem/util.h
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@theqtcompany.com>2016-05-09 14:22:11 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2016-05-09 15:11:45 +0000
commit2ddb2d3e14eef3de7dbd0cef553d669b9ac2361c (patch)
treee75f511546c5fd1a173e87c1f9fb11d7ac8d1af3 /chromium/components/filesystem/util.h
parenta4f3d46271c57e8155ba912df46a05559d14726e (diff)
downloadqtwebengine-chromium-2ddb2d3e14eef3de7dbd0cef553d669b9ac2361c.tar.gz
BASELINE: Update Chromium to 51.0.2704.41
Also adds in all smaller components by reversing logic for exclusion. Change-Id: Ibf90b506e7da088ea2f65dcf23f2b0992c504422 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
Diffstat (limited to 'chromium/components/filesystem/util.h')
-rw-r--r--chromium/components/filesystem/util.h53
1 files changed, 53 insertions, 0 deletions
diff --git a/chromium/components/filesystem/util.h b/chromium/components/filesystem/util.h
new file mode 100644
index 00000000000..49214b0b708
--- /dev/null
+++ b/chromium/components/filesystem/util.h
@@ -0,0 +1,53 @@
+// Copyright 2015 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef COMPONENTS_FILESYSTEM_UTIL_H_
+#define COMPONENTS_FILESYSTEM_UTIL_H_
+
+#include <stdint.h>
+
+#include "base/files/file.h"
+#include "components/filesystem/public/interfaces/types.mojom.h"
+
+namespace mojo {
+class String;
+}
+
+namespace filesystem {
+
+// Validation functions (typically used to check arguments; they return
+// |ERROR_OK| if valid, else the standard/recommended error for the validation
+// error):
+
+// Checks if |path|, which must be non-null, is (looks like) a valid (relative)
+// path. (On failure, returns |ERROR_INVALID_ARGUMENT| if |path| is not UTF-8,
+// or |ERROR_PERMISSION_DENIED| if it is not relative.)
+FileError IsPathValid(const mojo::String& path);
+
+// Checks if |whence| is a valid (known) |Whence| value. (On failure, returns
+// |ERROR_UNIMPLEMENTED|.)
+FileError IsWhenceValid(Whence whence);
+
+// Checks if |offset| is a valid file offset (from some point); this is
+// implementation-dependent (typically checking if |offset| fits in an |off_t|).
+// (On failure, returns |ERROR_OUT_OF_RANGE|.)
+FileError IsOffsetValid(int64_t offset);
+
+// Conversion functions:
+
+// Returns the platform dependent error details converted to the
+// filesystem.Error enum.
+FileError GetError(const base::File& file);
+
+// Serializes Info to the wire format.
+FileInformationPtr MakeFileInformation(const base::File::Info& info);
+
+// Creates an absolute file path and ensures that we don't try to traverse up.
+FileError ValidatePath(const mojo::String& raw_path,
+ const base::FilePath& filesystem_base,
+ base::FilePath* out);
+
+} // namespace filesystem
+
+#endif // COMPONENTS_FILESYSTEM_UTIL_H_