form_new(3)

form_new3

Create and destroy forms

Usage

#include <form.h>

FORM *new_form(FIELD **fields); int free_form(FORM *form);

Overview

The function new_form creates a new form connected to a specified field pointer array (which must be NULL-terminated).

The function free_form disconnects form from its field array and frees the storage allocated for the form.

Return value

The function new_form returns NULL on error. It sets errno according to the function's success:

E_OK

The routine succeeded.

E_BAD_ARGUMENT

Routine detected an incorrect or out-of-range argument.

E_CONNECTED

The field is already connected to a form.

E_SYSTEM_ERROR

System error occurred, e.g., malloc failure.

The function free_form returns one of the following:

E_OK

The routine succeeded.

E_BAD_ARGUMENT

Routine detected an incorrect or out-of-range argument.

E_POSTED

The form has already been posted.

Portability

These routines emulate the System V forms library. They were not supported on Version 7 or BSD versions.

Releases

66 releases since FreeBSD 4.3-RELEASE; the text changed 8 times.

  1. 4.3–6.2
  2. 6.3–10.4
  3. 11.0–12.4
  4. 13.0–13.5
  5. 14.0–14.1
  6. 14.2–14.4
  7. 14.5
  8. 15.0
  9. 15.1–16.0

Authors

Juergen Pfeifer. Manual pages and adaptation for new curses by Eric S. Raymond.

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