From 2f4d7ca9c47d0266196578d45c6dad3bdcbee3e6 Mon Sep 17 00:00:00 2001 From: Bernd Schubert Date: Mon, 24 Mar 2025 18:07:27 +0100 Subject: fuse_lowlevel: Add support for header/payload separation Header/payload separation is part of the fuse-io-uring protocol and might be later on for /dev/fuse legacy communication as well. This is a preparation commit, for now fuse_ll_ops2 is unused. Signed-off-by: Bernd Schubert --- lib/cuse_lowlevel.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'lib/cuse_lowlevel.c') diff --git a/lib/cuse_lowlevel.c b/lib/cuse_lowlevel.c index 5387f84..a25711b 100644 --- a/lib/cuse_lowlevel.c +++ b/lib/cuse_lowlevel.c @@ -192,9 +192,11 @@ static int cuse_reply_init(fuse_req_t req, struct cuse_init_out *arg, return fuse_send_reply_iov_nofree(req, 0, iov, 3); } -void cuse_lowlevel_init(fuse_req_t req, fuse_ino_t nodeid, const void *inarg) +void _cuse_lowlevel_init(fuse_req_t req, const fuse_ino_t nodeid, + const void *op_in, const void *req_payload) { - struct fuse_init_in *arg = (struct fuse_init_in *) inarg; + const struct fuse_init_in *arg = op_in; + (void)req_payload; struct cuse_init_out outarg; struct fuse_session *se = req->se; struct cuse_data *cd = se->cuse_data; @@ -263,6 +265,11 @@ void cuse_lowlevel_init(fuse_req_t req, fuse_ino_t nodeid, const void *inarg) fuse_free_req(req); } +void cuse_lowlevel_init(fuse_req_t req, fuse_ino_t nodeid, const void *inarg) +{ + _cuse_lowlevel_init(req, nodeid, inarg, NULL); +} + struct fuse_session *cuse_lowlevel_setup(int argc, char *argv[], const struct cuse_info *ci, const struct cuse_lowlevel_ops *clop, -- cgit v1.2.3