diff options
-rw-r--r-- | ChangeLog.rst | 4 | ||||
-rw-r--r-- | example/.gitignore | 1 | ||||
-rw-r--r-- | example/Makefile.am | 2 | ||||
-rw-r--r-- | example/null.c | 108 | ||||
-rw-r--r-- | example/timefs2.c | 4 | ||||
-rw-r--r-- | include/fuse_lowlevel.h | 2 | ||||
-rw-r--r-- | lib/fuse_lowlevel.c | 1 |
7 files changed, 9 insertions, 113 deletions
diff --git a/ChangeLog.rst b/ChangeLog.rst index 654792c..e029cd6 100644 --- a/ChangeLog.rst +++ b/ChangeLog.rst @@ -1,6 +1,10 @@ Unreleased Changes ================== +* Removed ``example/null.c``. This has not been working for a while + for unknown reasons -- maybe because it tries to treat the + mountpoint as a file rather than a directory? + * There is a new ``timefs3`` example that demonstrates the use of `fuse_lowlevel_notify_inval_entry`. diff --git a/example/.gitignore b/example/.gitignore index fb2633e..a738dbc 100644 --- a/example/.gitignore +++ b/example/.gitignore @@ -1,6 +1,5 @@ /fusexmp /fusexmp_fh -/null /hello /hello_ll /fioc diff --git a/example/Makefile.am b/example/Makefile.am index 40f882b..7ddd7d9 100644 --- a/example/Makefile.am +++ b/example/Makefile.am @@ -2,7 +2,7 @@ AM_CPPFLAGS = -I$(top_srcdir)/include -D_REENTRANT noinst_HEADERS = fioc.h -noinst_PROGRAMS = fusexmp fusexmp_fh null hello hello_ll fioc fioclient \ +noinst_PROGRAMS = fusexmp fusexmp_fh hello hello_ll fioc fioclient \ fsel fselclient cusexmp fuse_lo-plus timefs1 timefs2 \ timefs3 diff --git a/example/null.c b/example/null.c deleted file mode 100644 index 1ff1954..0000000 --- a/example/null.c +++ /dev/null @@ -1,108 +0,0 @@ -/* - FUSE: Filesystem in Userspace - Copyright (C) 2001-2007 Miklos Szeredi <miklos@szeredi.hu> - - This program can be distributed under the terms of the GNU GPL. - See the file COPYING. -*/ - -/** @file - * - * null.c - FUSE: Filesystem in Userspace - * - * \section section_compile compiling this example - * - * gcc -Wall null.c `pkg-config fuse3 --cflags --libs` -o null - * - * \section section_source the complete source - * \include null.c - */ - - -#define FUSE_USE_VERSION 30 - -#include <config.h> - -#include <fuse.h> -#include <string.h> -#include <unistd.h> -#include <time.h> -#include <errno.h> - -static int null_getattr(const char *path, struct stat *stbuf) -{ - if(strcmp(path, "/") != 0) - return -ENOENT; - - stbuf->st_mode = S_IFREG | 0644; - stbuf->st_nlink = 1; - stbuf->st_uid = getuid(); - stbuf->st_gid = getgid(); - stbuf->st_size = (1ULL << 32); /* 4G */ - stbuf->st_blocks = 0; - stbuf->st_atime = stbuf->st_mtime = stbuf->st_ctime = time(NULL); - - return 0; -} - -static int null_truncate(const char *path, off_t size) -{ - (void) size; - - if(strcmp(path, "/") != 0) - return -ENOENT; - - return 0; -} - -static int null_open(const char *path, struct fuse_file_info *fi) -{ - (void) fi; - - if(strcmp(path, "/") != 0) - return -ENOENT; - - return 0; -} - -static int null_read(const char *path, char *buf, size_t size, - off_t offset, struct fuse_file_info *fi) -{ - (void) buf; - (void) offset; - (void) fi; - - if(strcmp(path, "/") != 0) - return -ENOENT; - - if (offset >= (1ULL << 32)) - return 0; - - return size; -} - -static int null_write(const char *path, const char *buf, size_t size, - off_t offset, struct fuse_file_info *fi) -{ - (void) buf; - (void) offset; - (void) fi; - - if(strcmp(path, "/") != 0) - return -ENOENT; - - return size; -} - -static struct fuse_operations null_oper = { - .getattr = null_getattr, - .truncate = null_truncate, - .open = null_open, - .read = null_read, - .write = null_write, -}; - -int main(int argc, char *argv[]) -{ - return fuse_main(argc, argv, &null_oper, NULL); -} diff --git a/example/timefs2.c b/example/timefs2.c index 1d3cbd5..3194230 100644 --- a/example/timefs2.c +++ b/example/timefs2.c @@ -291,8 +291,8 @@ static void* update_fs(void *data) { now = localtime(&t); assert(now != NULL); - file_size= strftime(file_contents, MAX_STR_LEN, - "The current time is %H:%M:%S\n", now); + file_size = strftime(file_contents, MAX_STR_LEN, + "The current time is %H:%M:%S\n", now); assert(file_size != 0); if (!options.no_notify && lookup_cnt) { /* Only send notification if the kernel diff --git a/include/fuse_lowlevel.h b/include/fuse_lowlevel.h index 58c0dfa..a834eba 100644 --- a/include/fuse_lowlevel.h +++ b/include/fuse_lowlevel.h @@ -1625,7 +1625,7 @@ struct fuse_cmdline_opts { * removed from *args*. * * If --help or --version is specified, the appropriate information is - * printed to stdout and the function proceeds normally. + * printed to stdout and the function returns -1. * * If neither -o subtype= or -o fsname= options are given, the subtype * is set to the basename of the program (the fsname defaults to diff --git a/lib/fuse_lowlevel.c b/lib/fuse_lowlevel.c index 4ad5daf..8d4ad36 100644 --- a/lib/fuse_lowlevel.c +++ b/lib/fuse_lowlevel.c @@ -2279,6 +2279,7 @@ int fuse_lowlevel_notify_retrieve(struct fuse_session *se, fuse_ino_t ino, outarg.nodeid = ino; outarg.offset = offset; outarg.size = size; + outarg.padding = 0; iov[1].iov_base = &outarg; iov[1].iov_len = sizeof(outarg); |