History log of /freebsd-current/sys/sys/ttycom.h
Revision Date Author Comments
# 29363fb4 23-Nov-2023 Warner Losh <imp@FreeBSD.org>

sys: Remove ancient SCCS tags.

Remove ancient SCCS tags from the tree, automated scripting, with two
minor fixup to keep things compiling. All the common forms in the tree
were removed with a perl script.

Sponsored by: Netflix


# 2ff63af9 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

sys: Remove $FreeBSD$: one-line .h pattern

Remove /^\s*\*+\s*\$FreeBSD\$.*$\n/


# 7d7fad7b 24-Dec-2020 Konstantin Belousov <kib@FreeBSD.org>

Add tcgetwinsize(3) and tcsetwinsize(3) to termios

These functions get/set tty winsize respectively, and are trivial wrappers
around corresponding termio ioctls.

The functions are expected to be a part of POSIX.1 issue 8:
https://www.austingroupbugs.net/view.php?id=1151#c3856.
They are currently available in NetBSD and in musl libc.

PR: 251868
Submitted by: Soumendra Ganguly <soumendraganguly@gmail.com>
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D27650


# 51369649 20-Nov-2017 Pedro F. Giffuni <pfg@FreeBSD.org>

sys: further adoption of SPDX licensing ID tags.

Mainly focus on files that use BSD 3-Clause license.

The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.

Special thanks to Wind River for providing access to "The Duke of
Highlander" tool: an older (2014) run over FreeBSD tree was useful as a
starting point.


# fbbd9655 28-Feb-2017 Warner Losh <imp@FreeBSD.org>

Renumber copyright clause 4

Renumber cluase 4 to 3, per what everybody else did when BSD granted
them permission to remove clause 3. My insistance on keeping the same
numbering for legal reasons is too pedantic, so give up on that point.

Submitted by: Jan Schaumann <jschauma@stevens.edu>
Pull Request: https://github.com/freebsd/freebsd/pull/96


# cd864a19 06-Feb-2012 Ed Schouten <ed@FreeBSD.org>

Fix whitespace inconsistencies in TTY code.


# a7d5f7eb 19-Oct-2010 Jamie Gritton <jamie@FreeBSD.org>

A new jail(8) with a configuration file, to replace the work currently done
by /etc/rc.d/jail.


# 30fe9de0 06-Sep-2009 Ed Schouten <ed@FreeBSD.org>

Perform cleanups to the TTY headers:

- Properly sort the ioctls in ioctl_compat.h. Also perform some
whitespace fixes.
- Properly comment all the unused/compat ioctls in ttycom.h.


# d7f03759 19-Oct-2008 Ulf Lilleengen <lulf@FreeBSD.org>

- Import the HEAD csup code which is the basis for the cvsmode work.


# bc093719 20-Aug-2008 Ed Schouten <ed@FreeBSD.org>

Integrate the new MPSAFE TTY layer to the FreeBSD operating system.

The last half year I've been working on a replacement TTY layer for the
FreeBSD kernel. The new TTY layer was designed to improve the following:

- Improved driver model:

The old TTY layer has a driver model that is not abstract enough to
make it friendly to use. A good example is the output path, where the
device drivers directly access the output buffers. This means that an
in-kernel PPP implementation must always convert network buffers into
TTY buffers.

If a PPP implementation would be built on top of the new TTY layer
(still needs a hooks layer, though), it would allow the PPP
implementation to directly hand the data to the TTY driver.

- Improved hotplugging:

With the old TTY layer, it isn't entirely safe to destroy TTY's from
the system. This implementation has a two-step destructing design,
where the driver first abandons the TTY. After all threads have left
the TTY, the TTY layer calls a routine in the driver, which can be
used to free resources (unit numbers, etc).

The pts(4) driver also implements this feature, which means
posix_openpt() will now return PTY's that are created on the fly.

- Improved performance:

One of the major improvements is the per-TTY mutex, which is expected
to improve scalability when compared to the old Giant locking.
Another change is the unbuffered copying to userspace, which is both
used on TTY device nodes and PTY masters.

Upgrading should be quite straightforward. Unlike previous versions,
existing kernel configuration files do not need to be changed, except
when they reference device drivers that are listed in UPDATING.

Obtained from: //depot/projects/mpsafetty/...
Approved by: philip (ex-mentor)
Discussed: on the lists, at BSDCan, at the DevSummit
Sponsored by: Snow B.V., the Netherlands
dcons(4) fixed by: kan


# 7717bbe1 16-Jul-2008 Ed Schouten <ed@FreeBSD.org>

Sort the ioctl's in <sys/ttycom.h> by number.

I think one of the reasons why we have so many conflicts in the TTY
ioctl category, is because the ioctl's aren't ordered logically. This
commit only sorts them by number. The comments may still be inaccurate.

Approved by: philip (mentor)


# d61f3de6 15-Apr-2008 David Xu <davidxu@FreeBSD.org>

Implement POSIX function tcgetsid() which returns session id.

PR: stand/107561


# 9fddcc66 27-Sep-2006 Ruslan Ermilov <ru@FreeBSD.org>

Fix our ioctl(2) implementation when the argument is "int". New
ioctls passing integer arguments should use the _IOWINT() macro.
This fixes a lot of ioctl's not working on sparc64, most notable
being keyboard/syscons ioctls.

Full ABI compatibility is provided, with the bonus of fixing the
handling of old ioctls on sparc64.

Reviewed by: bde (with contributions)
Tested by: emax, marius
MFC after: 1 week


# 12af2a0f 25-Jan-2006 Olivier Houchard <cognet@FreeBSD.org>

Bring in a sysv-style pts implementation, as found in the rwatson_pts perforce branch. It works the same as its SysV/linux counterpart : You obtain a fd to the master pseudo terminal by opening /dev/ptmx, which craetes a node for the master as /dev/pty[num] and a node for the slave as /dev/pts/[num].
It should play nicely with the existing BSD ptys.
By default, the system will use the BSD ptys, one can set the sysctl
kern.pts.enable to 1 to make it use the new pts system.
The max number of pty that can be allocated on a system can be changed with the
sysctl kern.pts.max. It defaults to 1000, and can be increased, but it is not
recommanded, as any pty with a number > 999 won't be handled by whatever uses
utmp(5).


# 950cce9b 25-Jun-2004 Poul-Henning Kamp <phk@FreeBSD.org>

Retire the TIOC_REMOTE ioctl.

It was added 22 years ago for emacs to use, but emacs gave up on it
it 17 years ago.


# eb02dd68 24-Jun-2004 Poul-Henning Kamp <phk@FreeBSD.org>

Use the correct names for modem control signals as the primary and make
the aliases aliases.


# fdf5c3da 22-Jun-2004 Poul-Henning Kamp <phk@FreeBSD.org>

Remove the TIOCDCDTIMESTAMP option.

The RFC-2783 PPS-API (<sys/timepps.h>) provides better and more
configurable service.


# 73a4a9a7 09-May-2004 Maksim Yevmenkin <emax@FreeBSD.org>

Mode few Bluetooth defines into system include files

Reviewed by: imp


# 82c6e879 06-Apr-2004 Warner Losh <imp@FreeBSD.org>

Remove advertising clause from University of California Regent's license,
per letter dated July 22, 1999.

Approved by: core


# cff9b99a 04-Feb-2004 Bruce Evans <bde@FreeBSD.org>

Fixed editing error in a comment in previous commit.


# 24d19140 04-Feb-2004 Bruce Evans <bde@FreeBSD.org>

Removed TIOCMODG and TIOCMODS. They were superseded by TIOCMGET and
TIOCMSET before FreeBSD existed and have never been implemented by any
FreeBSD serial driver (not even as aliases).

Moved the TIOCM bit definitions to be with TIOCMGET.

Added more comments gaps between ioctl numbers. There are now a large
number of conflicts with ppp, slip, tap and tun ioctls (especially ppp
ones) from closing gaps that weren't there. This mainly breaks decoding
of ioctl numbers in kdump, but there are some serious conflicts where
the interpretation of a tty ioctl depends on the line discipline.


# 1244f0e6 29-Jan-2000 Peter Wemm <peter@FreeBSD.org>

Remove the TABLDISC line discipline number, it's not in the tree
any more (and never worked in FreeBSD 2.x onwards as far as I can tell),
and isn't used by anything in the tree any more either.


# b58a8a3b 22-Oct-1999 Julian Elischer <julian@FreeBSD.org>

Now that Netgraph is in the system there are some cleanups we can do.
Also save a slightly closer to completion version of the PPPOE code.

Submitted by: Archie Cobbs <archie@freebsd.org>


# c3aac50f 27-Aug-1999 Peter Wemm <peter@FreeBSD.org>

$Id$ -> $FreeBSD$


# f77edc9e 29-Dec-1998 Poul-Henning Kamp <phk@FreeBSD.org>

follow up to:
Pre 3.0 branch cleanup casualty #1: DSI_SOFT_MODEM support.


# 6875d254 22-Feb-1997 Peter Wemm <peter@FreeBSD.org>

Back out part 1 of the MCFH that changed $Id$ to $FreeBSD$. We are not
ready for it yet.


# 1130b656 14-Jan-1997 Jordan K. Hubbard <jkh@FreeBSD.org>

Make the long-awaited change from $Id$ to $FreeBSD$

This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore. This update would have been
insane otherwise.


# 99450dcc 17-Jun-1996 Bruce Evans <bde@FreeBSD.org>

Added TIOCDCDTIMESTAMP (enable/get timestamp of last DCD rise).

Reformatted FreeBSD additions in a consistent style.


# 9b2e5354 30-May-1995 Rodney W. Grimes <rgrimes@FreeBSD.org>

Remove trailing whitespace.


# 85878907 29-Mar-1995 Andrey A. Chernov <ache@FreeBSD.org>

Move DSIMICROCODE ioctl to 85,
old value (88) is equal SLIOGUNIT ioctl


# 33c38bd5 04-Jan-1995 Andrey A. Chernov <ache@FreeBSD.org>

Fight against hanging modems: add timeout to ttywait.
Reviewed by: Bruce


# e6342463 30-Nov-1994 David Greenman <dg@FreeBSD.org>

Changed the TIOCSTAT ioctl to a no argument type so that tcsh and friends
don't have to pass in the address of a bogus variable just to make ioctl
happy.


# 956c2de2 12-Sep-1994 Poul-Henning Kamp <phk@FreeBSD.org>

Add an ioctl to download microcode to DSI softmodem.


# 9a500b2b 18-Aug-1994 David Greenman <dg@FreeBSD.org>

Added support for TIOCSTAT ioctl. This allows shells that use raw/cbreak
tty modes to process a control-T and do the right thing.


# 3c4dd356 02-Aug-1994 David Greenman <dg@FreeBSD.org>

Added $Id$


# 26f9a767 25-May-1994 Rodney W. Grimes <rgrimes@FreeBSD.org>

The big 4.4BSD Lite to FreeBSD 2.0.0 (Development) patch.

Reviewed by: Rodney W. Grimes
Submitted by: John Dyson and David Greenman


# df8bae1d 24-May-1994 Rodney W. Grimes <rgrimes@FreeBSD.org>

BSD 4.4 Lite Kernel Sources