1.\" Copyright (c) 2001 2.\" The FreeBSD Project 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. 9.\" 10.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND 11.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 12.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 13.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE 14.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 15.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 16.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 17.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 18.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 19.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 20.\" SUCH DAMAGE. 21.\" 22.Dd July 11, 2020 23.Dt NMDM 4 24.Os 25.Sh NAME 26.Nm nmdm 27.Nd nullmodem terminal driver 28.Sh SYNOPSIS 29To compile this driver into the kernel, 30place the following line in your 31kernel configuration file: 32.Bd -ragged -offset indent 33.Cd "device nmdm" 34.Ed 35.Pp 36Alternatively, to load the driver as a 37module at boot time, place the following line in 38.Xr loader.conf 5 : 39.Bd -literal -offset indent 40nmdm_load="YES" 41.Ed 42.Sh DESCRIPTION 43The 44.Nm 45driver provides two 46.Xr tty 4 47devices connected 48by a virtual 49.Dq "null modem" 50cable. 51.Pp 52If either of the two tty devices have the 53.Dv CDSR_OFLOW 54bit 55.Pq Dq Li "stty dsrflow" 56set in their line discipline, the 57.Nm 58device will emulate the speed configured in the 59.Xr termios 4 60settings. 61The speed emulation works independently in the two directions, 62controlled by the slower end's termios settings 63.Va ( c_ispeed , c_ospeed , 64.Dv CS5 ... CS8 , CSTOPB 65and 66.Dv PARENB ) . 67.Sh FILES 68.Bl -tag -width ".Pa /dev/nmdm Ns Ar N Ns Op Pa AB" -compact 69.It Pa /dev/nmdm Ns Ar N Ns Op Pa AB 70nullmodem device nodes. 71Where the 72.Pa A 73node has a matching 74.Pa B 75node. 76.El 77.Pp 78The 79.Nm 80driver implements 81.Dq "on-demand device creation" 82so simply accessing a given instance in 83.Pa /dev 84will create it. 85.Sh DIAGNOSTICS 86None. 87.Sh SEE ALSO 88.Xr stty 1 , 89.Xr termios 4 , 90.Xr tty 4 , 91.Xr ttys 5 92.Sh HISTORY 93The 94.Nm 95driver first appeared in 96.Fx 4.4 . 97