aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/fuse.c6
-rw-r--r--lib/fuse_lowlevel.c13
-rw-r--r--lib/fuse_versionscript4
-rw-r--r--lib/helper.c4
4 files changed, 21 insertions, 6 deletions
diff --git a/lib/fuse.c b/lib/fuse.c
index aa5c611..8fbc035 100644
--- a/lib/fuse.c
+++ b/lib/fuse.c
@@ -5009,6 +5009,12 @@ struct fuse *_fuse_new_317(struct fuse_args *args,
f->conf.readdir_ino = 1;
#endif
+ /* not declared globally, to restrict usage of this function */
+ struct fuse_session *_fuse_session_new(
+ struct fuse_args *args, const struct fuse_lowlevel_ops *op,
+ size_t op_size, struct libfuse_version *version,
+ void *userdata);
+
f->se = _fuse_session_new(args, &llop, sizeof(llop), version, f);
if (f->se == NULL)
goto out_free_fs;
diff --git a/lib/fuse_lowlevel.c b/lib/fuse_lowlevel.c
index d84c678..c993860 100644
--- a/lib/fuse_lowlevel.c
+++ b/lib/fuse_lowlevel.c
@@ -3248,10 +3248,15 @@ int fuse_session_receive_buf_internal(struct fuse_session *se,
FUSE_SYMVER("_fuse_session_new_317", "_fuse_session_new@@FUSE_3.17")
struct fuse_session *_fuse_session_new_317(struct fuse_args *args,
- const struct fuse_lowlevel_ops *op,
- size_t op_size,
- struct libfuse_version *version,
- void *userdata)
+ const struct fuse_lowlevel_ops *op,
+ size_t op_size,
+ struct libfuse_version *version,
+ void *userdata);
+struct fuse_session *_fuse_session_new_317(struct fuse_args *args,
+ const struct fuse_lowlevel_ops *op,
+ size_t op_size,
+ struct libfuse_version *version,
+ void *userdata)
{
int err;
struct fuse_session *se;
diff --git a/lib/fuse_versionscript b/lib/fuse_versionscript
index 14cbca1..f20e2b4 100644
--- a/lib/fuse_versionscript
+++ b/lib/fuse_versionscript
@@ -189,11 +189,11 @@ FUSE_3.12 {
FUSE_3.17 {
global:
+#if !defined(LIBFUSE_BUILT_WITH_VERSIONED_SYMBOLS)
_fuse_session_new_317;
- _fuse_new;
- _fuse_new_30;
_fuse_new_317;
fuse_main_real_317;
+#endif
fuse_passthrough_open;
fuse_passthrough_close;
fuse_session_custom_io_30;
diff --git a/lib/helper.c b/lib/helper.c
index e84c857..2794e66 100644
--- a/lib/helper.c
+++ b/lib/helper.c
@@ -344,6 +344,10 @@ int fuse_main_real_317(int argc, char *argv[], const struct fuse_operations *op,
goto out1;
}
+ struct fuse *_fuse_new(struct fuse_args *args,
+ const struct fuse_operations *op, size_t op_size,
+ struct libfuse_version *version,
+ void *user_data);
fuse = _fuse_new(&args, op, op_size, version, user_data);
if (fuse == NULL) {
res = 3;