Sortix 1.1dev nightly manual
This manual documents Sortix 1.1dev nightly, a development build that has not been officially released. You can instead view this document in the latest official manual.
UI_CREATE_METHOD(3) | Library Functions Manual | UI_CREATE_METHOD(3) |
NAME
UI_create_method
,
UI_destroy_method
,
UI_method_set_opener
,
UI_method_set_writer
,
UI_method_set_flusher
,
UI_method_set_reader
,
UI_method_set_closer
,
UI_method_set_prompt_constructor
,
UI_method_get_opener
,
UI_method_get_writer
,
UI_method_get_flusher
,
UI_method_get_reader
,
UI_method_get_closer
,
UI_method_get_prompt_constructor
—
user interface method creation and destruction
SYNOPSIS
#include
<openssl/ui.h>
UI_METHOD *
UI_create_method
(const
char *name);
void
UI_destroy_method
(UI_METHOD
*ui_method);
int
UI_method_set_opener
(UI_METHOD
*method, int (*opener)(UI *ui));
int
UI_method_set_writer
(UI_METHOD
*method, int (*writer)(UI *ui, UI_STRING
*uis));
int
UI_method_set_flusher
(UI_METHOD
*method, int (*flusher)(UI *ui));
int
UI_method_set_reader
(UI_METHOD
*method, int (*reader)(UI *ui, UI_STRING
*uis));
int
UI_method_set_closer
(UI_METHOD
*method, int (*closer)(UI *ui));
int
UI_method_set_prompt_constructor
(UI_METHOD
*method, char *(*prompt_constructor)(UI *ui,
const char *object_desc, const char *object_name));
int
(*UI_method_get_opener(const UI_METHOD
*method))
(UI *;);
int
(*UI_method_get_writer(const UI_METHOD
*method))
(UI *,
UI_STRING *);
int
(*UI_method_get_flusher(const UI_METHOD
*method))
(UI *);
int
(*UI_method_get_reader(const UI_METHOD
*method))
(UI *,
UI_STRING *);
int
(*UI_method_get_closer(const UI_METHOD
*method))
(UI *);
char *
(*UI_method_get_prompt_constructor(UI_METHOD
*method))
(UI *,
const char *,
const char *);
DESCRIPTION
A method contains a few functions that implement the low level of the User Interface. These functions are:- an opener
- This function takes a reference to a UI and starts a session, for example by opening a channel to a tty, or by creating a dialog box.
- a writer
- This function takes a reference to a UI and a UI String, and writes the string where appropriate, maybe to the tty, maybe added as a field label in a dialog box. Note that this gets fed all strings associated with a UI, one after the other, so care must be taken which ones it actually uses.
- a flusher
- This function takes a reference to a UI, and flushes everything that has been output so far. For example, if the method builds up a dialog box, this can be used to actually display it and accepting input ended with a pressed button.
- a reader
- This function takes a reference to a UI and a UI string and reads off the given prompt, maybe from the tty, maybe from a field in a dialog box. Note that this gets fed all strings associated with a UI, one after the other, so care must be taken which ones it actually uses.
- a closer
- This function takes a reference to a UI, and closes the session, maybe by closing the channel to the tty, maybe by destroying a dialog box.
- Open the session using the opener function if that one is defined. If an error occurs, jump to 5.
- For every UI String associated with the UI, call the writer function if that one is defined. If an error occurs, jump to 5.
- Flush everything using the flusher function if that one is defined. If an error occurs, jump to 5.
- For every UI String associated with the UI, call the reader function if that one is defined. If an error occurs, jump to 5.
- Close the session using the closer function if that one is defined.
UI_create_method
() creates a new UI method
with a given name.
UI_destroy_method
() destroys the given
ui_method.
UI_method_set_opener
(),
UI_method_set_writer
(),
UI_method_set_flusher
(),
UI_method_set_reader
() and
UI_method_set_closer
() set one of the five
main methods to the given function pointer.
UI_method_set_prompt_constructor
() sets the
prompt constructor, see
UI_construct_prompt(3).
RETURN VALUES
UI_create_method
() returns a
UI_METHOD pointer on success or
NULL
on error.
UI_method_set_opener
(),
UI_method_set_writer
(),
UI_method_set_flusher
(),
UI_method_set_reader
(),
UI_method_set_closer
(), and
UI_method_set_prompt_constructor
() return 0
on success or -1 if the given method is
NULL
.
UI_method_get_opener
(),
UI_method_get_writer
(),
UI_method_get_flusher
(),
UI_method_get_reader
(),
UI_method_get_closer
(), and
UI_method_get_prompt_constructor
() return
the requested function pointer if it is set in the method, or otherwise
NULL
.
SEE ALSO
UI_get_string_type(3), UI_new(3)HISTORY
UI_create_method
(),
UI_destroy_method
(),
UI_method_set_opener
(),
UI_method_set_writer
(),
UI_method_set_flusher
(),
UI_method_set_reader
(),
UI_method_set_closer
(),
UI_method_get_opener
(),
UI_method_get_writer
(),
UI_method_get_flusher
(),
UI_method_get_reader
(), and
UI_method_get_closer
() first appeared in
OpenSSL 0.9.7 and have been available since OpenBSD
3.2.
UI_method_set_prompt_constructor
() and
UI_method_get_prompt_constructor
() first
appeared in OpenSSL 1.0.0 and have been available since
OpenBSD 4.9.May 19, 2018 | Debian |