Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(537)

Side by Side Diff: native_client_sdk/src/libraries/nacl_io/filesystem.h

Issue 565763002: Plumbing though mode parameter to open, since fusefs can make use of it. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef LIBRARIES_NACL_IO_FILESYSTEM_H_ 5 #ifndef LIBRARIES_NACL_IO_FILESYSTEM_H_
6 #define LIBRARIES_NACL_IO_FILESYSTEM_H_ 6 #define LIBRARIES_NACL_IO_FILESYSTEM_H_
7 7
8 #include <map> 8 #include <map>
9 #include <string> 9 #include <string>
10 10
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
55 // |ppapi| can be NULL. If so, this filesystem cannot make any pepper calls. 55 // |ppapi| can be NULL. If so, this filesystem cannot make any pepper calls.
56 virtual Error Init(const FsInitArgs& args); 56 virtual Error Init(const FsInitArgs& args);
57 virtual void Destroy(); 57 virtual void Destroy();
58 58
59 public: 59 public:
60 PepperInterface* ppapi() { return ppapi_; } 60 PepperInterface* ppapi() { return ppapi_; }
61 int dev() { return dev_; } 61 int dev() { return dev_; }
62 62
63 // All paths in functions below are expected to containing a leading "/". 63 // All paths in functions below are expected to containing a leading "/".
64 64
65 // Open a node at |path| with the specified open and modeflags. The resulting
66 // Node is created with a ref count of 1.
67 // Assumes that |out_node| is non-NULL.
68 virtual Error OpenWithMode(const Path& path,
69 int open_flags,
70 mode_t mode_flags,
71 ScopedNode* out_node) = 0;
72
65 // Open a node at |path| with the specified open flags. The resulting 73 // Open a node at |path| with the specified open flags. The resulting
66 // Node is created with a ref count of 1. 74 // Node is created with a ref count of 1.
67 // Assumes that |out_node| is non-NULL. 75 // Assumes that |out_node| is non-NULL.
68 virtual Error Open(const Path& path, 76 virtual Error Open(const Path& path,
binji 2014/09/11 23:51:40 make this non-virtual, since it is just a helper f
bradn 2014/09/12 06:17:03 Done.
69 int open_flags, 77 int open_flags,
70 ScopedNode* out_node) = 0; 78 ScopedNode* out_node);
71 79
72 // OpenResource is only used to read files from the NaCl NMF file. No 80 // OpenResource is only used to read files from the NaCl NMF file. No
73 // filesystem except PassthroughFs should implement it. 81 // filesystem except PassthroughFs should implement it.
74 // Assumes that |out_node| is non-NULL. 82 // Assumes that |out_node| is non-NULL.
75 virtual Error OpenResource(const Path& path, ScopedNode* out_node); 83 virtual Error OpenResource(const Path& path, ScopedNode* out_node);
76 84
77 // Unlink, Mkdir, Rmdir will affect the both the RefCount 85 // Unlink, Mkdir, Rmdir will affect the both the RefCount
78 // and the nlink number in the stat object. 86 // and the nlink number in the stat object.
79 virtual Error Unlink(const Path& path) = 0; 87 virtual Error Unlink(const Path& path) = 0;
80 virtual Error Mkdir(const Path& path, int permissions) = 0; 88 virtual Error Mkdir(const Path& path, int permissions) = 0;
(...skipping 21 matching lines...) Expand all
102 // May only be called by the KernelProxy when the Kernel's 110 // May only be called by the KernelProxy when the Kernel's
103 // lock is held, so we make it private. 111 // lock is held, so we make it private.
104 friend class KernelObject; 112 friend class KernelObject;
105 friend class KernelProxy; 113 friend class KernelProxy;
106 DISALLOW_COPY_AND_ASSIGN(Filesystem); 114 DISALLOW_COPY_AND_ASSIGN(Filesystem);
107 }; 115 };
108 116
109 } // namespace nacl_io 117 } // namespace nacl_io
110 118
111 #endif // LIBRARIES_NACL_IO_FILESYSTEM_H_ 119 #endif // LIBRARIES_NACL_IO_FILESYSTEM_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698