summaryrefslogtreecommitdiffstats
path: root/man3/insque.3
diff options
context:
space:
mode:
Diffstat (limited to 'man3/insque.3')
-rw-r--r--man3/insque.375
1 files changed, 75 insertions, 0 deletions
diff --git a/man3/insque.3 b/man3/insque.3
new file mode 100644
index 000000000..c33575436
--- /dev/null
+++ b/man3/insque.3
@@ -0,0 +1,75 @@
+.\" peter memishian -- meem@gnu.ai.mit.edu
+.\" $Id: insque.3,v 1.2 1996/10/30 21:03:39 meem Exp meem $
+.\"
+.\" Permission is granted to make and distribute verbatim copies of this
+.\" manual provided the copyright notice and this permission notice are
+.\" preserved on all copies.
+.\"
+.\" Permission is granted to copy and distribute modified versions of this
+.\" manual under the conditions for verbatim copying, provided that the
+.\" entire resulting derived work is distributed under the terms of a
+.\" permission notice identical to this one.
+.\"
+.\" Since the Linux kernel and libraries are constantly changing, this
+.\" manual page may be incorrect or out-of-date. The author(s) assume no
+.\" responsibility for errors or omissions, or for damages resulting from
+.\" the use of the information contained herein. The author(s) may not
+.\" have taken the same level of care in the production of this manual,
+.\" which is licensed free of charge, as they might when working
+.\" professionally.
+.\"
+.\" Formatted or processed versions of this manual, if unaccompanied by
+.\" the source, must acknowledge the copyright and authors of this work.
+.\"
+.\" References consulted:
+.\" Linux libc source code (5.4.7)
+.\" Solaris 2.x, OSF/1, and HP-UX manpages
+.\" Curry's "UNIX Systems Programming for SVR4" (O'Reilly & Associates 1996)
+.\"
+.\" Changed to POSIX, 2003-08-11, aeb+wh
+.\"
+.TH INSQUE 3 2003-08-11 "" "Linux Programmer's Manual"
+.SH NAME
+insque, remque \- insert/remove an item from a queue
+.SH SYNOPSIS
+.nf
+.B #include <search.h>
+.sp
+.BI "void insque(void *" elem ", void *" prev );
+.BI "void remque(void *" elem );
+.SH DESCRIPTION
+\fBinsque()\fP and \fBremque()\fP are functions for manipulating
+doubly-linked lists. Each element in the list is a structure of
+which the first two structure elements are a forward and a
+backward pointer.
+
+\fBinsque()\fP inserts the element pointed to by \fIelem\fP
+immediately after the element pointed to by \fIprev\fP, which must
+not be NULL.
+
+\fBremque()\fP removes the element pointed to by \fIelem\fP from the
+doubly-linked list.
+.SH "CONFORMING TO"
+POSIX 1003.1-2001
+.SH "HISTORICAL NOTES"
+Traditionally (e.g. SunOS, Linux libc 4,5) the parameters of these
+functions were of type \fBstruct qelem *\fP, where the struct
+is defined as
+
+.RS
+.nf
+struct qelem {
+ struct qelem *q_forw;
+ struct qelem *q_back;
+ char q_data[1];
+};
+.fi
+.RE
+
+This is still what you will get if _GNU_SOURCE is defined before
+including <search.h>.
+
+The location of the prototypes for these functions differs among several
+versions of UNIX. The above is the POSIX version.
+Some systems place them in <string.h>. Linux libc4,5 placed them
+in <stdlib.h>.