|
Revision tags: release/12.4.0, release/13.1.0, release/12.3.0, release/13.0.0, release/12.2.0, release/11.4.0, release/12.1.0, release/11.3.0, release/12.0.0, release/11.2.0, release/10.4.0, release/11.1.0, release/11.0.1, release/11.0.0, release/10.3.0, release/10.2.0, release/10.1.0, release/9.3.0, release/10.0.0, release/9.2.0, release/8.4.0, release/9.1.0, release/8.3.0_cvs, release/8.3.0, release/9.0.0, release/7.4.0_cvs, release/8.2.0_cvs, release/7.4.0, release/8.2.0, release/8.1.0_cvs, release/8.1.0, release/7.3.0_cvs, release/7.3.0 |
|
| #
f14ad5fa |
| 28-Nov-2009 |
Ed Schouten <[email protected]> |
Decompose <sys/termios.h>.
The <sys/termios.h> header file is hardlinked to <termios.h>. It contains both the structures and the flag definitions, but also the C library interface that's implemented
Decompose <sys/termios.h>.
The <sys/termios.h> header file is hardlinked to <termios.h>. It contains both the structures and the flag definitions, but also the C library interface that's implemented by the C library.
This header file has the typical problem of including too many random things and being badly ordered. Instead of trying to fix this, decompose it into two header files:
- <sys/_termios.h>, which contains struct termios and the flags. - <termios.h>, which includes <sys/_termios.h> and contains the C library interface.
This means userspace has to include <termios.h> for struct termios, while kernelspace code has to include <sys/tty.h>. Also add a <sys/termios.h>, which prints a warning message before including <termios.h>. I am aware that there are some applications that use this header file as well.
show more ...
|
|
Revision tags: release/8.0.0_cvs, release/8.0.0 |
|
| #
46b303e8 |
| 07-May-2009 |
Ed Schouten <[email protected]> |
Add tcsetsid(3).
The entire world seems to use the non-standard TIOCSCTTY ioctl to make a TTY a controlling terminal of a session. Even though tcsetsid(3) is also non-standard, I think it's a lot be
Add tcsetsid(3).
The entire world seems to use the non-standard TIOCSCTTY ioctl to make a TTY a controlling terminal of a session. Even though tcsetsid(3) is also non-standard, I think it's a lot better to use in our own source code, mainly because it's similar to tcsetpgrp(), tcgetpgrp() and tcgetsid().
I stole the idea from QNX. They do it the other way around; their TIOCSCTTY is just a wrapper around tcsetsid(). tcsetsid() then calls into an IPC framework.
show more ...
|
|
Revision tags: release/7.2.0_cvs, release/7.2.0 |
|
| #
472f7812 |
| 14-Mar-2009 |
David Schultz <[email protected]> |
Use namespace visibility macros instead of checking for _POSIX_SOURCE.
|
|
Revision tags: release/7.1.0_cvs, release/7.1.0, release/6.4.0_cvs, release/6.4.0 |
|
| #
9d7c8e57 |
| 23-Nov-2008 |
David Malone <[email protected]> |
Make the new CCEQ macro a little more like the old one - first do the comparison between c and val and then compare val to _POSIX_VDISABLE. This avoids comparing c (which is usually of type char) to
Make the new CCEQ macro a little more like the old one - first do the comparison between c and val and then compare val to _POSIX_VDISABLE. This avoids comparing c (which is usually of type char) to _POSIX_VDISABLE (which has value 0xff and may not be representable as a char).
Reviewed by: ed
show more ...
|
| #
4fcf52f6 |
| 06-Sep-2008 |
Ed Schouten <[email protected]> |
Small style(9) nit in <sys/termios.h>.
There are a lot of places where we do "#define<space>" instead of "#define<tab>". Clean this up a little.
|
| #
bc093719 |
| 20-Aug-2008 |
Ed Schouten <[email protected]> |
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
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
show more ...
|
| #
16be775e |
| 16-Jul-2008 |
Ed Schouten <[email protected]> |
Move the TCSA* definitions out of _KERNEL. They are processed in libc.
The tcsetattr() routine already converts the TCSA* arguments to their respective TIOCSETA* ioctl's in the C library. There is n
Move the TCSA* definitions out of _KERNEL. They are processed in libc.
The tcsetattr() routine already converts the TCSA* arguments to their respective TIOCSETA* ioctl's in the C library. There is no need to have these definitions inside the kernel.
Approved by: philip (mentor, implicit)
show more ...
|
| #
21afeb89 |
| 18-Apr-2008 |
David Xu <[email protected]> |
Add missing function prototype for tcgetsid().
|
|
Revision tags: release/7.0.0_cvs, release/7.0.0, release/6.3.0_cvs, release/6.3.0, release/6.2.0_cvs, release/6.2.0, release/5.5.0_cvs, release/5.5.0, release/6.1.0_cvs, release/6.1.0, release/6.0.0_cvs, release/6.0.0, release/5.4.0_cvs, release/5.4.0, release/4.11.0_cvs, release/4.11.0 |
|
| #
60727d8b |
| 07-Jan-2005 |
Warner Losh <[email protected]> |
/* -> /*- for license, minor formatting changes
|
|
Revision tags: release/5.3.0_cvs, release/5.3.0, release/4.10.0_cvs, release/4.10.0 |
|
| #
82c6e879 |
| 07-Apr-2004 |
Warner Losh <[email protected]> |
Remove advertising clause from University of California Regent's license, per letter dated July 22, 1999.
Approved by: core
|
|
Revision tags: release/5.2.1_cvs, release/5.2.1, release/5.2.0_cvs, release/5.2.0, release/4.9.0_cvs, release/4.9.0, release/5.1.0_cvs, release/5.1.0, release/4.8.0_cvs, release/4.8.0, release/5.0.0_cvs, release/5.0.0, release/4.7.0_cvs, release/4.6.2_cvs, release/4.6.2, release/4.6.1, release/4.6.0_cvs |
|
| #
789f12fe |
| 19-Mar-2002 |
Alfred Perlstein <[email protected]> |
Remove __P
|
|
Revision tags: release/4.5.0_cvs, release/4.4.0_cvs |
|
| #
531918e6 |
| 20-Jun-2001 |
Andrey A. Chernov <[email protected]> |
Add B921600 (yes, some serial ports can do this, but generic sio not support them yet)
|
| #
27aa48fd |
| 29-May-2001 |
Andrey A. Chernov <[email protected]> |
Add B460800 define
|
|
Revision tags: release/4.3.0_cvs, release/4.3.0 |
|
| #
3617ddfc |
| 04-Mar-2001 |
Assar Westerlund <[email protected]> |
implement OCRNL, ONOCR, and ONLRET
Obtained from: NetBSD
|
| #
7022a923 |
| 28-Nov-2000 |
Jordan K. Hubbard <[email protected]> |
Kernel support for erase2 character.
Submitted by: Rui Pedro Mendes Salgueiro <[email protected]>
|
|
Revision tags: release/4.2.0, release/4.1.1_cvs, release/4.1.0, release/3.5.0_cvs, release/4.0.0_cvs |
|
| #
664a31e4 |
| 29-Dec-1999 |
Peter Wemm <[email protected]> |
Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" is an application space macro and the applications are supposed to be free to use it as they please (but cannot). This is cons
Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL" is an application space macro and the applications are supposed to be free to use it as they please (but cannot). This is consistant with the other BSD's who made this change quite some time ago. More commits to come.
show more ...
|
|
Revision tags: release/3.4.0_cvs, release/3.3.0_cvs |
|
| #
c3aac50f |
| 28-Aug-1999 |
Peter Wemm <[email protected]> |
$Id$ -> $FreeBSD$
|
|
Revision tags: release/3.2.0, release/3.1.0, release/3.0.0, release/2.2.8, release/2.2.7 |
|
| #
bd7f824e |
| 05-May-1998 |
John Birrell <[email protected]> |
Change a couple of long types to int to match NetBSD so that termios works on alpha without any modifications.
|
|
Revision tags: release/2.2.6 |
|
| #
df5cf212 |
| 12-Mar-1998 |
Bruce Evans <[email protected]> |
Changed speed_t from long to unsigned long. POSIX.1 requires an unsigned integral type. Changing it doesn't seem to cause any sign extension bugs in /usr/src. In the kernel, this is partly because
Changed speed_t from long to unsigned long. POSIX.1 requires an unsigned integral type. Changing it doesn't seem to cause any sign extension bugs in /usr/src. In the kernel, this is partly because `struct speedtab' and its lookup function are too bogus to use speed_t's for speeds - they use ints.
Reminded by: PR 5786
show more ...
|
|
Revision tags: release/2.2.5_cvs, release/2.2.2_cvs, release/2.2.1_cvs, release/2.2.0, release/2.1.7_cvs |
|
| #
6875d254 |
| 22-Feb-1997 |
Peter Wemm <[email protected]> |
Back out part 1 of the MCFH that changed $Id$ to $FreeBSD$. We are not ready for it yet.
|
|
Revision tags: release/2.1.6_cvs, release/2.1.6.1 |
|
| #
1130b656 |
| 14-Jan-1997 |
Jordan K. Hubbard <[email protected]> |
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
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.
show more ...
|
| #
c02039bc |
| 29-Nov-1996 |
Bruce Evans <[email protected]> |
Fixed handling of non-POSIX control characters. They must not do anything special unless IEXTEN is set.
Found by: NIST-PCTS
|
|
Revision tags: release/2.1.5_cvs, release/2.1.0_cvs, release/2.0.5_cvs |
|
| #
9b2e5354 |
| 30-May-1995 |
Rodney W. Grimes <[email protected]> |
Remove trailing whitespace.
|
| #
0de89095 |
| 11-May-1995 |
Bruce Evans <[email protected]> |
Define _POSIX_VDISABLE so that it can be used in #if expressions.
|
| #
d9908e7b |
| 30-Apr-1995 |
Bruce Evans <[email protected]> |
Define CDTR_IFLOW and CDSR_OFLOW which are now required for compiling bin/stty. Define alias CCAR_OFLOW for MDMBUF.
Declare speeds as having type speed_t instead of long. speed_t is long, which is
Define CDTR_IFLOW and CDSR_OFLOW which are now required for compiling bin/stty. Define alias CCAR_OFLOW for MDMBUF.
Declare speeds as having type speed_t instead of long. speed_t is long, which is wrong (POSIX specifies it to be unsigned integral), but fixing it might introduce more serious bugs.
show more ...
|