summaryrefslogtreecommitdiff
path: root/netfs/fuse
diff options
context:
space:
mode:
authorrandomdan <randomdan@localhost>2014-10-13 18:30:38 +0000
committerrandomdan <randomdan@localhost>2014-10-13 18:30:38 +0000
commit62ef860e426d2e66dfa4b9aaf926b52eade5eec4 (patch)
treebb57089089d5ad9af257952270907628d4534039 /netfs/fuse
parentSlicer compat fix (diff)
downloadnetfs-62ef860e426d2e66dfa4b9aaf926b52eade5eec4.tar.bz2
netfs-62ef860e426d2e66dfa4b9aaf926b52eade5eec4.tar.xz
netfs-62ef860e426d2e66dfa4b9aaf926b52eade5eec4.zip
Adds mknod support
Diffstat (limited to 'netfs/fuse')
-rw-r--r--netfs/fuse/fuse.h1
-rw-r--r--netfs/fuse/fuseMisc.cpp12
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 {