diff options
author | randomdan <randomdan@localhost> | 2014-10-13 18:30:38 +0000 |
---|---|---|
committer | randomdan <randomdan@localhost> | 2014-10-13 18:30:38 +0000 |
commit | 62ef860e426d2e66dfa4b9aaf926b52eade5eec4 (patch) | |
tree | bb57089089d5ad9af257952270907628d4534039 /netfs/fuse | |
parent | Slicer compat fix (diff) | |
download | netfs-62ef860e426d2e66dfa4b9aaf926b52eade5eec4.tar.bz2 netfs-62ef860e426d2e66dfa4b9aaf926b52eade5eec4.tar.xz netfs-62ef860e426d2e66dfa4b9aaf926b52eade5eec4.zip |
Adds mknod support
Diffstat (limited to 'netfs/fuse')
-rw-r--r-- | netfs/fuse/fuse.h | 1 | ||||
-rw-r--r-- | netfs/fuse/fuseMisc.cpp | 12 |
2 files changed, 13 insertions, 0 deletions
diff --git a/netfs/fuse/fuse.h b/netfs/fuse/fuse.h index 1f80686..3821285 100644 --- a/netfs/fuse/fuse.h +++ b/netfs/fuse/fuse.h @@ -58,6 +58,7 @@ namespace NetFS { int symlink(const char *, const char *); int unlink(const char *); int utimens(const char *, const struct timespec tv[2]); + int mknod(const char *, mode_t, dev_t); // dirs int opendir(const char * p, struct fuse_file_info * fi); int releasedir(const char *, struct fuse_file_info * fi); diff --git a/netfs/fuse/fuseMisc.cpp b/netfs/fuse/fuseMisc.cpp index d5064f3..0e366be 100644 --- a/netfs/fuse/fuseMisc.cpp +++ b/netfs/fuse/fuseMisc.cpp @@ -65,6 +65,18 @@ NetFS::FuseApp::link(const char * p1, const char * p2) } int +NetFS::FuseApp::mknod(const char * p, mode_t mode, dev_t dev) +{ + try { + volume->mknod(reqEnv(), p, mode, dev); + return 0; + } + catch (NetFS::SystemError & e) { + return -e.syserrno; + } +} + +int NetFS::FuseApp::symlink(const char * p1, const char * p2) { try { |