reallocf(3)

reallocf3

Memory reallocation function

Usage

#include <stdlib.h>

void *

reallocf(void *ptr, size_t size);

Library

Standard C Library (libc, -lc)

Overview

The reallocf() function is identical to the realloc() function, except that it will free the passed pointer when the requested memory cannot be allocated. This is a FreeBSD specific API designed to ease the problems with traditional coding styles for realloc() causing memory leaks in libraries.

Return values

The reallocf() function returns a pointer, possibly identical to ptr, to the allocated memory if successful; otherwise a NULL pointer is returned, and errno is set to ENOMEM if the error was the result of an allocation failure. The reallocf() function deletes the original buffer when an error occurs.

Releases

77 releases since FreeBSD 3.0-RELEASE; the text changed 48 times.

  1. 3.0–3.1
  2. 3.2
  3. 3.3
  4. 3.4
  5. 3.5–3.5.1
  6. 4.0
  7. 4.1
  8. 4.1.1–4.2
  9. 4.3
  10. 4.4
  11. 4.5–4.7
  12. 4.8–4.11
  13. 5.0
  14. 5.1–5.5
  15. 6.0–6.1
  16. 6.2–6.3
  17. 6.4
  18. 7.0
  19. 7.1
  20. 7.2
  21. 7.3
  22. 7.4
  23. 8.0
  24. 8.1
  25. 8.2
  26. 8.3
  27. 8.4
  28. 9.0
  29. 9.1
  30. 9.2
  31. 9.3
  32. 10.0
  33. 10.1
  34. 10.2
  35. 10.3
  36. 10.4
  37. 11.0
  38. 11.1
  39. 11.2
  40. 11.3
  41. 11.4
  42. 12.0
  43. 12.1
  44. 12.2
  45. 12.3
  46. 12.4
  47. 13.0–13.2
  48. 13.3–14.5
  49. 15.0–16.0

History

The reallocf() function first appeared in FreeBSD 3.0.

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