insque(3)

insque3

Doubly-linked list management

Usage

#include <search.h>

void

insque(void *element1, void *pred);

void

remque(void *element);

Library

Standard C Library (libc, -lc)

Overview

The insque() and remque() functions encapsulate the ever-repeating task of doing insertion and removal operations on doubly linked lists. The functions expect their arguments to point to a structure whose first and second members are pointers to the next and previous element, respectively. The insque() function also allows the pred argument to be a NULL pointer for the initialization of a new list's head element.

Releases

87 releases since FreeBSD 2.0.5-RELEASE; the text changed 38 times.

  1. 2.0.5–2.2.5
  2. 2.2.6–3.5.1
  3. 4.0–4.2
  4. 4.3
  5. 4.4–4.11
  6. 5.0
  7. 5.1–6.3
  8. 6.4
  9. 7.0
  10. 7.1
  11. 7.2
  12. 7.3
  13. 7.4
  14. 8.0
  15. 8.1
  16. 8.2
  17. 8.3
  18. 8.4
  19. 9.0
  20. 9.1
  21. 9.2
  22. 9.3
  23. 10.0
  24. 10.1
  25. 10.2
  26. 10.3
  27. 10.4
  28. 11.0
  29. 11.1
  30. 11.2
  31. 11.3
  32. 11.4
  33. 12.0
  34. 12.1
  35. 12.2
  36. 12.3
  37. 12.4
  38. 13.0–13.2
  39. 13.3–16.0

Standards

The insque() and remque() functions conform to IEEE Std 1003.1-2001 (“POSIX.1”).

History

The insque() and remque() functions appeared in 4.2BSD. In FreeBSD 5.0, they reappeared conforming to IEEE Std 1003.1-2001 (“POSIX.1”).

From base 16.0-CURRENT-20261027-61c70dc16a79 in FreeBSD 16.0-CURRENT (2026-10-27). Parsed by carta from the page's mdoc source.