about summary refs log tree commit diff
path: root/misc
diff options
context:
space:
mode:
Diffstat (limited to 'misc')
-rw-r--r--misc/Makefile2
-rw-r--r--misc/insremque.c10
-rw-r--r--misc/search.h49
3 files changed, 52 insertions, 9 deletions
diff --git a/misc/Makefile b/misc/Makefile
index 289a02430b..8638c08676 100644
--- a/misc/Makefile
+++ b/misc/Makefile
@@ -25,7 +25,7 @@ subdir	:= misc
 headers	:= sys/uio.h sys/ioctl.h sys/ptrace.h ioctls.h sys/file.h	\
 	   a.out.h nlist.h stab.h stab.def sgtty.h sys/dir.h sys/cdefs.h \
 	   ttyent.h syscall.h syslog.h sys/syslog.h paths.h sys/reboot.h \
-	   sys/mman.h sys/param.h fstab.h
+	   sys/mman.h sys/param.h fstab.h search.h
 
 routines := brk sbrk sstk ioctl \
 	    readv writev \
diff --git a/misc/insremque.c b/misc/insremque.c
index d3b9370fdc..2658397294 100644
--- a/misc/insremque.c
+++ b/misc/insremque.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1992 Free Software Foundation, Inc.
+/* Copyright (C) 1992, 1995 Free Software Foundation, Inc.
 This file is part of the GNU C Library.
 
 The GNU C Library is free software; you can redistribute it and/or
@@ -18,13 +18,7 @@ Cambridge, MA 02139, USA.  */
 
 #include <ansidecl.h>
 #include <stddef.h>
-
-struct qelem
-  {
-    struct qelem *q_forw;
-    struct qelem *q_back;
-    char q_data[1];
-  };
+#include <search.h>
 
 /* Insert ELEM into a doubly-linked list, after PREV.  */
 
diff --git a/misc/search.h b/misc/search.h
new file mode 100644
index 0000000000..2e5615de9b
--- /dev/null
+++ b/misc/search.h
@@ -0,0 +1,49 @@
+/* search.h -- declarations for `insque' and `remque'
+Copyright (C) 1995 Free Software Foundation, Inc.
+This file is part of the GNU C Library.
+
+The GNU C Library is free software; you can redistribute it and/or
+modify it under the terms of the GNU Library General Public License as
+published by the Free Software Foundation; either version 2 of the
+License, or (at your option) any later version.
+
+The GNU C Library is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+Library General Public License for more details.
+
+You should have received a copy of the GNU Library General Public
+License along with the GNU C Library; see the file COPYING.LIB.  If
+not, write to the Free Software Foundation, Inc., 675 Mass Ave,
+Cambridge, MA 02139, USA.  */
+
+/* These functions are provided for compatibility with BSD.  */
+
+#ifndef _SEARCH_H
+#define	_SEARCH_H 1
+
+#include <sys/cdefs.h>
+
+__BEGIN_DECLS
+
+/* Prototype structure for a linked-list data structure.
+   This is the type used by the `insque' and `remque' functions.  */
+
+struct qelem
+  {
+    struct qelem *q_forw;
+    struct qelem *q_back;
+    char q_data[1];
+  };
+
+
+/* Insert ELEM into a doubly-linked list, after PREV.  */
+extern void insque __P ((struct qelem *__elem, struct qelem *__prev));
+
+/* Unlink ELEM from the doubly-linked list that it is in.  */
+extern void remque __P ((struct qelem *elem))
+
+
+__END_DECLS
+
+#endif	/* search.h */