summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiklos Szeredi <mszeredi@suse.cz>2013-06-21 13:35:30 +0200
committerMiklos Szeredi <mszeredi@suse.cz>2013-06-21 13:35:30 +0200
commit2bcfd55fc145430e49193715417ced10d58d7b54 (patch)
treee041c58ce5530b6150d2bf6437d689ff8294d9c3
parentaf57c73304b8a23c6ca0e1aebf4ce49071ac784a (diff)
downloadfuse-2bcfd55fc145430e49193715417ced10d58d7b54.tar.gz
libfuse: replace fuse_session_next_chan
Replace fuse_session_next_chan() with fuse_session_chan(), as multiple channels per session were never actually supported and probably never will.
-rw-r--r--include/fuse_lowlevel.h17
-rw-r--r--lib/fuse.c2
-rw-r--r--lib/fuse_loop.c2
-rw-r--r--lib/fuse_loop_mt.c2
-rw-r--r--lib/fuse_session.c9
-rw-r--r--lib/fuse_versionscript2
-rw-r--r--lib/helper.c2
7 files changed, 11 insertions, 25 deletions
diff --git a/include/fuse_lowlevel.h b/include/fuse_lowlevel.h
index 9a16237..f62afcc 100644
--- a/include/fuse_lowlevel.h
+++ b/include/fuse_lowlevel.h
@@ -1627,9 +1627,6 @@ struct fuse_session *fuse_session_new(struct fuse_session_ops *op, void *data);
/**
* Assign a channel to a session
*
- * Note: currently only a single channel may be assigned. This may
- * change in the future
- *
* If a session is destroyed, the assigned channel is also destroyed
*
* @param se the session
@@ -1638,7 +1635,7 @@ struct fuse_session *fuse_session_new(struct fuse_session_ops *op, void *data);
void fuse_session_add_chan(struct fuse_session *se, struct fuse_chan *ch);
/**
- * Remove a channel from a session
+ * Remove the channel from a session
*
* If the channel is not assigned to a session, then this is a no-op
*
@@ -1647,18 +1644,12 @@ void fuse_session_add_chan(struct fuse_session *se, struct fuse_chan *ch);
void fuse_session_remove_chan(struct fuse_chan *ch);
/**
- * Iterate over the channels assigned to a session
- *
- * The iterating function needs to start with a NULL channel, and
- * after that needs to pass the previously returned channel to the
- * function.
+ * Return channel assigned to the session
*
* @param se the session
- * @param ch the previous channel, or NULL
- * @return the next channel, or NULL if no more channels exist
+ * @return the channel
*/
-struct fuse_chan *fuse_session_next_chan(struct fuse_session *se,
- struct fuse_chan *ch);
+struct fuse_chan *fuse_session_chan(struct fuse_session *se);
/**
* Process a raw request
diff --git a/lib/fuse.c b/lib/fuse.c
index e2d48d3..f159063 100644
--- a/lib/fuse.c
+++ b/lib/fuse.c
@@ -4021,7 +4021,7 @@ static int fuse_session_loop_remember(struct fuse *f)
int res = 0;
struct timespec now;
time_t next_clean;
- struct fuse_chan *ch = fuse_session_next_chan(se, NULL);
+ struct fuse_chan *ch = fuse_session_chan(se);
size_t bufsize = fuse_chan_bufsize(ch);
char *buf = (char *) malloc(bufsize);
struct pollfd fds = {
diff --git a/lib/fuse_loop.c b/lib/fuse_loop.c
index b7b4ca4..987a8d7 100644
--- a/lib/fuse_loop.c
+++ b/lib/fuse_loop.c
@@ -15,7 +15,7 @@
int fuse_session_loop(struct fuse_session *se)
{
int res = 0;
- struct fuse_chan *ch = fuse_session_next_chan(se, NULL);
+ struct fuse_chan *ch = fuse_session_chan(se);
size_t bufsize = fuse_chan_bufsize(ch);
char *buf = (char *) malloc(bufsize);
if (!buf) {
diff --git a/lib/fuse_loop_mt.c b/lib/fuse_loop_mt.c
index 82e3001..f328fec 100644
--- a/lib/fuse_loop_mt.c
+++ b/lib/fuse_loop_mt.c
@@ -224,7 +224,7 @@ int fuse_session_loop_mt(struct fuse_session *se)
memset(&mt, 0, sizeof(struct fuse_mt));
mt.se = se;
- mt.prevch = fuse_session_next_chan(se, NULL);
+ mt.prevch = fuse_session_chan(se);
mt.error = 0;
mt.numworker = 0;
mt.numavail = 0;
diff --git a/lib/fuse_session.c b/lib/fuse_session.c
index 80bf0ea..2a4fc8d 100644
--- a/lib/fuse_session.c
+++ b/lib/fuse_session.c
@@ -58,14 +58,9 @@ void fuse_session_remove_chan(struct fuse_chan *ch)
}
}
-struct fuse_chan *fuse_session_next_chan(struct fuse_session *se,
- struct fuse_chan *ch)
+struct fuse_chan *fuse_session_chan(struct fuse_session *se)
{
- assert(ch == NULL || ch == se->ch);
- if (ch == NULL)
- return se->ch;
- else
- return NULL;
+ return se->ch;
}
void fuse_session_process(struct fuse_session *se, const char *buf, size_t len,
diff --git a/lib/fuse_versionscript b/lib/fuse_versionscript
index 7c717f4..391c4f8 100644
--- a/lib/fuse_versionscript
+++ b/lib/fuse_versionscript
@@ -25,7 +25,7 @@ FUSE_3.0 {
fuse_session_loop;
fuse_session_loop_mt;
fuse_session_new;
- fuse_session_next_chan;
+ fuse_session_chan;
fuse_session_process;
fuse_session_reset;
fuse_opt_parse;
diff --git a/lib/helper.c b/lib/helper.c
index 58dfb43..139e1ae 100644
--- a/lib/helper.c
+++ b/lib/helper.c
@@ -299,7 +299,7 @@ err_free:
static void fuse_teardown(struct fuse *fuse, char *mountpoint)
{
struct fuse_session *se = fuse_get_session(fuse);
- struct fuse_chan *ch = fuse_session_next_chan(se, NULL);
+ struct fuse_chan *ch = fuse_session_chan(se);
fuse_remove_signal_handlers(se);
fuse_unmount(mountpoint, ch);
fuse_destroy(fuse);