NAME
linedisc,
ttyldisc_add,
ttyldisc_lookup,
ttyldisc_remove —
extensible line discipline framework
SYNOPSIS
#include <sys/conf.h>
int
ttyldisc_add(
struct
linesw *disc,
int
no);
struct linesw *
ttyldisc_remove(
const
char *name);
struct linesw *
ttyldisc_lookup(
const
char *name);
DESCRIPTION
The
NetBSD TTY line discipline framework allows
extensibility. Modules that need special line disciplines can add them as
convenient and do not need to modify tty_conf.c. Line disciplines are now
managed by a string, rather than number.
Once the framework has been initialized, a new line discipline can be added by
creating and initializing a
struct linesw and calling
ttyldisc_add().
The following is a brief description of each function in the framework:
-
-
- ttyldisc_add()
- Register a line discipline. The
l_name field of the struct
linesw should point to a string which is to be the symbolic name of
that line discipline. For compatibility purposes, a line discipline number
can be passed in no, but for new disciplines this
should be set to
-1
.
-
-
- ttyldisc_lookup()
- Look up a line discipline by name.
NULL
is returned if it can not be found.
-
-
- ttyldisc_remove()
- Remove a line discipline called name
and return a pointer to it. If the discipline cannot be found or removed
ttyldisc_remove() will return
NULL
.
SEE ALSO
tty(4)
HISTORY
The
linedisc functions were added in
NetBSD
1.6.
AUTHORS
The
NetBSD extensible line discipline framework was
created by
Eduardo Horvath
⟨eeh@NetBSD.org⟩.