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

Unified Diff: native_client_sdk/src/libraries/nacl_io/fuse.h

Issue 604513002: [NaCl SDK] nacl_io: Add chmod/fchmod (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: 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 side-by-side diff with in-line comments
Download patch
Index: native_client_sdk/src/libraries/nacl_io/fuse.h
diff --git a/native_client_sdk/src/libraries/nacl_io/fuse.h b/native_client_sdk/src/libraries/nacl_io/fuse.h
index 5f7978622304d91056d5a625282b715501e71e30..cbc381f790dcaf0bcd9c867dc08a169aeaf176fe 100644
--- a/native_client_sdk/src/libraries/nacl_io/fuse.h
+++ b/native_client_sdk/src/libraries/nacl_io/fuse.h
@@ -87,35 +87,35 @@ struct fuse_operations {
unsigned int flag_nopath : 1;
unsigned int flag_reserved : 31;
- // Called when a filesystem of this type is initialized.
- void* (*init)(struct fuse_conn_info* conn);
- // Called when a filesystem of this type is unmounted.
- void (*destroy)(void*);
- // Called by access()
- int (*access)(const char* path, int mode);
- // Called when O_CREAT is passed to open()
- int (*create)(const char* path, mode_t mode, struct fuse_file_info*);
- // Called by stat()/fstat(). If this function pointer is non-NULL, it is
- // called, otherwise fuse_operations.getattr will be called.
- int (*fgetattr)(const char* path, struct stat*, struct fuse_file_info*);
- // Called by fsync(). The datasync paramater is not currently supported.
- int (*fsync)(const char* path, int datasync, struct fuse_file_info*);
- // Called by ftruncate()
- int (*ftruncate)(const char* path, off_t, struct fuse_file_info*);
// Called by stat()/fstat(), but only when fuse_operations.fgetattr is NULL.
// Also called by open() to determine if the path is a directory or a regular
// file.
int (*getattr)(const char* path, struct stat*);
- // Called by mkdir()
- int (*mkdir)(const char* path, mode_t);
+ // Not called currently.
+ int (*readlink)(const char*, char*, size_t);
// Called when O_CREAT is passed to open(), but only if fuse_operations.create
// is non-NULL.
int (*mknod)(const char* path, mode_t, dev_t);
+ // Called by mkdir()
+ int (*mkdir)(const char* path, mode_t);
+ // Called by unlink()
+ int (*unlink)(const char* path);
+ // Called by rmdir()
+ int (*rmdir)(const char* path);
+ // Not called currently.
+ int (*symlink)(const char*, const char*);
+ // Called by rename()
+ int (*rename)(const char* path, const char* new_path);
+ // Not called currently.
+ int (*link)(const char*, const char*);
+ // Called by chmod()/fchmod()
+ int (*chmod)(const char*, mode_t);
+ // Not called currently.
+ int (*chown)(const char*, uid_t, gid_t);
+ // Called by truncate(), as well as open() when O_TRUNC is passed.
+ int (*truncate)(const char* path, off_t);
// Called by open()
int (*open)(const char* path, struct fuse_file_info*);
- // Called by getdents(), which is called by the more standard functions
- // opendir()/readdir().
- int (*opendir)(const char* path, struct fuse_file_info*);
// Called by read(). Note that FUSE specifies that all reads will fill the
// entire requested buffer. If this function returns less than that, the
// remainder of the buffer is zeroed.
@@ -124,6 +124,34 @@ struct fuse_operations {
size_t count,
off_t,
struct fuse_file_info*);
+ // Called by write(). Note that FUSE specifies that a write should always
+ // return the full count, unless an error occurs.
+ int (*write)(const char* path,
+ const char* buf,
+ size_t count,
+ off_t,
+ struct fuse_file_info*);
+ // Not called currently.
+ int (*statfs)(const char*, struct statvfs*);
+ // Not called currently.
+ int (*flush)(const char*, struct fuse_file_info*);
+ // Called when the last reference to this node is released. This is only
+ // called for regular files. For directories, fuse_operations.releasedir is
+ // called instead.
+ int (*release)(const char* path, struct fuse_file_info*);
+ // Called by fsync(). The datasync paramater is not currently supported.
+ int (*fsync)(const char* path, int datasync, struct fuse_file_info*);
+ // Not called currently.
+ int (*setxattr)(const char*, const char*, const char*, size_t, int);
+ // Not called currently.
+ int (*getxattr)(const char*, const char*, char*, size_t);
+ // Not called currently.
+ int (*listxattr)(const char*, char*, size_t);
+ // Not called currently.
+ int (*removexattr)(const char*, const char*);
+ // Called by getdents(), which is called by the more standard functions
+ // opendir()/readdir().
+ int (*opendir)(const char* path, struct fuse_file_info*);
// Called by getdents(), which is called by the more standard function
// readdir().
//
@@ -176,68 +204,57 @@ struct fuse_operations {
off_t,
struct fuse_file_info*);
// Called when the last reference to this node is released. This is only
- // called for regular files. For directories, fuse_operations.releasedir is
- // called instead.
- int (*release)(const char* path, struct fuse_file_info*);
- // Called when the last reference to this node is released. This is only
// called for directories. For regular files, fuse_operations.release is
// called instead.
int (*releasedir)(const char* path, struct fuse_file_info*);
- // Called by rename()
- int (*rename)(const char* path, const char* new_path);
- // Called by rmdir()
- int (*rmdir)(const char* path);
- // Called by truncate(), as well as open() when O_TRUNC is passed.
- int (*truncate)(const char* path, off_t);
- // Called by unlink()
- int (*unlink)(const char* path);
- // Called by write(). Note that FUSE specifies that a write should always
- // return the full count, unless an error occurs.
- int (*write)(const char* path,
- const char* buf,
- size_t count,
- off_t,
- struct fuse_file_info*);
+ // Not called currently.
+ int (*fsyncdir)(const char*, int, struct fuse_file_info*);
+ // Called when a filesystem of this type is initialized.
+ void* (*init)(struct fuse_conn_info* conn);
+ // Called when a filesystem of this type is unmounted.
+ void (*destroy)(void*);
+ // Called by access()
+ int (*access)(const char* path, int mode);
+ // Called when O_CREAT is passed to open()
+ int (*create)(const char* path, mode_t mode, struct fuse_file_info*);
+ // Called by ftruncate()
+ int (*ftruncate)(const char* path, off_t, struct fuse_file_info*);
+ // Called by stat()/fstat(). If this function pointer is non-NULL, it is
+ // called, otherwise fuse_operations.getattr will be called.
+ int (*fgetattr)(const char* path, struct stat*, struct fuse_file_info*);
+ // Not called currently.
+ int (*lock)(const char*, struct fuse_file_info*, int cmd, struct flock*);
// Called by utime()/utimes()/futimes()/futimens() etc.
int (*utimens)(const char*, const struct timespec tv[2]);
-
- // The following functions are not currently called by the nacl_io
- // implementation of FUSE.
+ // Not called currently.
int (*bmap)(const char*, size_t blocksize, uint64_t* idx);
- int (*chmod)(const char*, mode_t);
- int (*chown)(const char*, uid_t, gid_t);
- int (*fallocate)(const char*, int, off_t, off_t, struct fuse_file_info*);
- int (*flock)(const char*, struct fuse_file_info*, int op);
- int (*flush)(const char*, struct fuse_file_info*);
- int (*fsyncdir)(const char*, int, struct fuse_file_info*);
- int (*getxattr)(const char*, const char*, char*, size_t);
+ // Not called currently.
int (*ioctl)(const char*,
int cmd,
void* arg,
struct fuse_file_info*,
unsigned int flags,
void* data);
- int (*link)(const char*, const char*);
- int (*listxattr)(const char*, char*, size_t);
- int (*lock)(const char*, struct fuse_file_info*, int cmd, struct flock*);
+ // Not called currently.
int (*poll)(const char*,
struct fuse_file_info*,
struct fuse_pollhandle* ph,
unsigned* reventsp);
+ // Not called currently.
+ int (*write_buf)(const char*,
+ struct fuse_bufvec* buf,
+ off_t off,
+ struct fuse_file_info*);
+ // Not called currently.
int (*read_buf)(const char*,
struct fuse_bufvec** bufp,
size_t size,
off_t off,
struct fuse_file_info*);
- int (*readlink)(const char*, char*, size_t);
- int (*removexattr)(const char*, const char*);
- int (*setxattr)(const char*, const char*, const char*, size_t, int);
- int (*statfs)(const char*, struct statvfs*);
- int (*symlink)(const char*, const char*);
- int (*write_buf)(const char*,
- struct fuse_bufvec* buf,
- off_t off,
- struct fuse_file_info*);
+ // Not called currently.
+ int (*flock)(const char*, struct fuse_file_info*, int op);
+ // Not called currently.
+ int (*fallocate)(const char*, int, off_t, off_t, struct fuse_file_info*);
};
#endif // LIBRARIES_NACL_IO_FUSE_H_

Powered by Google App Engine
This is Rietveld 408576698