summaryrefslogtreecommitdiff
path: root/doc/man/fqueue.3
diff options
context:
space:
mode:
Diffstat (limited to 'doc/man/fqueue.3')
-rw-r--r--doc/man/fqueue.340
1 files changed, 32 insertions, 8 deletions
diff --git a/doc/man/fqueue.3 b/doc/man/fqueue.3
index 00c28d4c..72a0bc25 100644
--- a/doc/man/fqueue.3
+++ b/doc/man/fqueue.3
@@ -1,6 +1,6 @@
-.\" Ouroboros man pages CC-BY 2017 - 2018
-.\" Dimitri Staessens <dimitri.staessens@ugent.be>
-.\" Sander Vrijders <sander.vrijders@ugent.be>
+.\" Ouroboros man pages CC-BY 2017 - 2024
+.\" Dimitri Staessens <dimitri@ouroboros.rocks>
+.\" Sander Vrijders <sander@ouroboros.rocks>
.TH FQUEUE 3 2017-08-29 Ouroboros "Ouroboros Programmer's Manual"
@@ -19,7 +19,9 @@ on flows
\fBint fqueue_next(fqueue_t * \fIfq\fB);
-\fBint fevent(fset_t * \fIset\fB, fqueue_t * \fIfq\fB,
+\fBint fqueue_type(fqueue_t * \fIfq\fB);
+
+\fBssize_t fevent(fset_t * \fIset\fB, fqueue_t * \fIfq\fB,
const struct timespec * \fItimeo\fB);
Compile and link with \fI-louroboros-dev\fR.
@@ -36,6 +38,22 @@ an \fBfqueue_t\fR \fIfq\fR.
The \fBfqueue_next\fR() function retrieves the next event (a \fIflow
descriptor\fR) that is ready within the event queue \fIfq\fR.
+The \fBfqueue_type\fR() function retrieves the type for the current
+event on the fd that was returned by \fBfqueue_next\fR(). Event types
+are:
+.RS 4
+FLOW_PKT: A new packet arrived on this flow and is ready for reading.
+
+FLOW_UP: The flow is now marked UP and ready for read/write.
+
+FLOW_DOWN: The flow is now marked DOWN and cannot be written to.
+
+FLOW_ALLOC: A pending flow is now allocated.
+
+FLOW_DEALLOC: The flow is deallocated by the other (N+1 or N-1)
+process.
+.RE
+
The \fBfevent\fR() function retrieves all events that occured on any
\fIflow descriptor\fR within \fIset\fR and returns them in the event
queue \fBfq\fR. If a \fBstruct timespec *\fI timeo\fR can be provided,
@@ -50,7 +68,13 @@ On success, \fBfqueue_create\fR() returns a pointer to an
\fBfqueue_destroy\fR() has no return value.
-On success, \fBfevent\fR() returns the number of events that occured in \fIset\fR.
+On success, \fBfevent\fR() returns 1.
+
+On success, \fBfqueue_next\fR() returns the next file descriptor for
+which an event occurred.
+
+On success, \fBfqueue_type\fR() returns the event type for the last
+event returned by \fBfqueue_next\fR().
.SH ERRORS
@@ -62,10 +86,10 @@ were available to create the \fBfqueue_t\fR.
.B -EINVAL
An invalid argument was passed (\fIfq\fR or \fIset\fR was \fINULL\fR).
-In addition, \fBfqueue_next\fR() can return
+In addition, \fBfqueue_next\fR() or \fBqueue_type\fR() can return
.B -EPERM
-No more fds available in \fIfq\fR.
+No more fds available or no current event in \fIfq\fR.
and \fBfevent\fR() can return
@@ -102,7 +126,7 @@ fset "(3), " ouroboros (8)
.SH COLOPHON
This page is part of the Ouroboros project, found at
-http://ouroboros.ilabt.imec.be
+http://ouroboros.rocks
These man pages are licensed under the Creative Commons Attribution
4.0 International License. To view a copy of this license, visit