Mechanically kill hard sentence breaks and double whitespaces.

This commit is contained in:
Ruslan Ermilov 2004-07-03 18:29:24 +00:00
parent b524342941
commit 5203edcdc5
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=131530
223 changed files with 1649 additions and 992 deletions

View File

@ -44,21 +44,25 @@
.Sh DESCRIPTION .Sh DESCRIPTION
.Nm .Nm
gets summary and detailed SCSI Environmental Services (or SAF-TE) device gets summary and detailed SCSI Environmental Services (or SAF-TE) device
enclosure status. The overall status is printed out. If the overall status enclosure status.
The overall status is printed out.
If the overall status
is considered okay, nothing else is printed out (unless the is considered okay, nothing else is printed out (unless the
.Fl v .Fl v
option is used). option is used).
.Pp .Pp
A SCSI Environmental Services device enclosure may be either in the state A SCSI Environmental Services device enclosure may be either in the state
of being \fBOK\fR, or in one or more of the states of \fBINFORMATIONAL\fR, of being \fBOK\fR, or in one or more of the states of \fBINFORMATIONAL\fR,
\fBNON-CRITICAL\fR, \fBCRITICAL\fB or \fBUNRECOVERABLE\fR states. These \fBNON-CRITICAL\fR, \fBCRITICAL\fB or \fBUNRECOVERABLE\fR states.
These
overall states reflect a summary of the states of each object within overall states reflect a summary of the states of each object within
such a device (such as power supplies or disk drives). such a device (such as power supplies or disk drives).
.Pp .Pp
With the With the
.Fl v .Fl v
option, the status of all objects within the device is printed, whether option, the status of all objects within the device is printed, whether
\fBOK\fR or not. Along with the status of each object is the object identifier. \fBOK\fR or not.
Along with the status of each object is the object identifier.
.Pp .Pp
The user may then use The user may then use
.Xr setencstat 8 .Xr setencstat 8

View File

@ -49,8 +49,10 @@ argument may be determined by running
.Pp .Pp
The status fields are partially common (first byte only, which must The status fields are partially common (first byte only, which must
have a value of 0x80 contained in it), but otherwise quite device have a value of 0x80 contained in it), but otherwise quite device
specific. A complete discussion of the possible values is impractical specific.
here. Please refer to the ANSI SCSI specification (available on A complete discussion of the possible values is impractical
here.
Please refer to the ANSI SCSI specification (available on
the FTP site ftp.t10.org). the FTP site ftp.t10.org).
.Pp .Pp
Note that devices may simply and silently ignore the setting of these values. Note that devices may simply and silently ignore the setting of these values.

View File

@ -100,9 +100,11 @@ New code should use the functionality provided by
When a floating point exception is detected, the exception sticky flag is When a floating point exception is detected, the exception sticky flag is
set and the exception mask is tested. set and the exception mask is tested.
If the mask is set, then a trap If the mask is set, then a trap
occurs. These routines allow both setting the floating point exception occurs.
masks, and resetting the exception sticky flags after an exception is These routines allow both setting the floating point exception
detected. In addition, they allow setting the floating point rounding mode masks, and resetting the exception sticky flags after an exception is
detected.
In addition, they allow setting the floating point rounding mode
and precision. and precision.
.Pp .Pp
The The
@ -170,7 +172,8 @@ At present, they are implemented only on the i386 and amd64 platforms.
.Xr isnan 3 .Xr isnan 3
.Sh CAVEAT .Sh CAVEAT
After a floating point exception and before a mask is set, the sticky After a floating point exception and before a mask is set, the sticky
flags must be reset. If another exception occurs before the sticky flags must be reset.
If another exception occurs before the sticky
flags are reset, then a wrong exception type may be signaled. flags are reset, then a wrong exception type may be signaled.
.Sh HISTORY .Sh HISTORY
These routines are based on SysV/386 routines of the same name. These routines are based on SysV/386 routines of the same name.

View File

@ -97,7 +97,8 @@ Use of these routines should, for the most part, be avoided.
The manual page entry for each compatibility routine The manual page entry for each compatibility routine
indicates the proper interface to use. indicates the proper interface to use.
.It Xr libkvm Pq Fl l Ns Ar kvm .It Xr libkvm Pq Fl l Ns Ar kvm
Functions used to access kernel memory are in this library. They can be used Functions used to access kernel memory are in this library.
They can be used
against both a running system and a crash dump. against both a running system and a crash dump.
(See (See
.Xr kvm 3 . ) .Xr kvm 3 . )

View File

@ -47,7 +47,7 @@ expands to a constant expression of type
whose value matches no pointer to an object in memory nor the value whose value matches no pointer to an object in memory nor the value
.Dv NULL . .Dv NULL .
.Sh RETURN VALUES .Sh RETURN VALUES
If successful, the If successful, the
.Fn pthread_cancel .Fn pthread_cancel
functions will return zero. functions will return zero.
Otherwise an error number will be returned to Otherwise an error number will be returned to

View File

@ -95,7 +95,7 @@ The signal mask is inherited from the creating thread.
The set of signals pending for the new thread is empty. The set of signals pending for the new thread is empty.
.El .El
.Sh RETURN VALUES .Sh RETURN VALUES
If successful, the If successful, the
.Fn pthread_create .Fn pthread_create
function will return zero. function will return zero.
Otherwise an error number will be returned to Otherwise an error number will be returned to

View File

@ -60,7 +60,7 @@ The effect of multiple
.Fn pthread_detach .Fn pthread_detach
calls on the same target thread is unspecified. calls on the same target thread is unspecified.
.Sh RETURN VALUES .Sh RETURN VALUES
If successful, the If successful, the
.Fn pthread_detach .Fn pthread_detach
function will return zero. function will return zero.
Otherwise an error number will be returned to Otherwise an error number will be returned to

View File

@ -68,7 +68,8 @@ An implicit call to
is made when a thread other than the thread in which is made when a thread other than the thread in which
.Fn main .Fn main
was first invoked returns from the start routine that was used to create was first invoked returns from the start routine that was used to create
it. The function's return value serves as the thread's exit status. it.
The function's return value serves as the thread's exit status.
.Pp .Pp
The behavior of The behavior of
.Fn pthread_exit .Fn pthread_exit

View File

@ -75,7 +75,7 @@ is cancelled, then the target thread is not detached.
A thread that has exited but remains unjoined counts against A thread that has exited but remains unjoined counts against
[_POSIX_THREAD_THREADS_MAX]. [_POSIX_THREAD_THREADS_MAX].
.Sh RETURN VALUES .Sh RETURN VALUES
If successful, the If successful, the
.Fn pthread_join .Fn pthread_join
function will return zero. function will return zero.
Otherwise an error number will be returned to Otherwise an error number will be returned to

View File

@ -94,7 +94,7 @@ is undefined if
has automatic storage duration or is not initialized by has automatic storage duration or is not initialized by
.Fa PTHREAD_ONCE_INIT . .Fa PTHREAD_ONCE_INIT .
.Sh RETURN VALUES .Sh RETURN VALUES
If successful, the If successful, the
.Fn pthread_once .Fn pthread_once
function will return zero. function will return zero.
Otherwise an error number will be returned to Otherwise an error number will be returned to

View File

@ -46,7 +46,8 @@ function is used to destroy a read/write lock previously created with
.Sh RETURN VALUES .Sh RETURN VALUES
If successful, the If successful, the
.Fn pthread_rwlock_destroy .Fn pthread_rwlock_destroy
function will return zero. Otherwise an error number will be returned function will return zero.
Otherwise an error number will be returned
to indicate the error. to indicate the error.
.Sh SEE ALSO .Sh SEE ALSO
.Xr pthread_rwlock_init 3 .Xr pthread_rwlock_init 3

View File

@ -54,7 +54,8 @@ with an already initialized lock are undefined.
.Sh RETURN VALUES .Sh RETURN VALUES
If successful, the If successful, the
.Fn pthread_rwlock_init .Fn pthread_rwlock_init
function will return zero. Otherwise an error number will be returned function will return zero.
Otherwise an error number will be returned
to indicate the error. to indicate the error.
.Sh SEE ALSO .Sh SEE ALSO
.Xr pthread_rwlockattr_init 3 , .Xr pthread_rwlockattr_init 3 ,

View File

@ -49,17 +49,19 @@ function acquires a read lock on
provided that provided that
.Fa lock .Fa lock
is not presently held for writing and no writer threads are is not presently held for writing and no writer threads are
presently blocked on the lock. If the read lock cannot be presently blocked on the lock.
If the read lock cannot be
immediately acquired, the calling thread blocks until it can immediately acquired, the calling thread blocks until it can
acquire the lock. acquire the lock.
.Pp .Pp
The The
.Fn pthread_rwlock_tryrdlock .Fn pthread_rwlock_tryrdlock
function performs the same action, but does not block if the lock function performs the same action, but does not block if the lock
cannot be immediately obtained (i.e. the lock is held for writing cannot be immediately obtained (i.e., the lock is held for writing
or there are waiting writers). or there are waiting writers).
.Pp .Pp
A thread may hold multiple concurrent read locks. If so, A thread may hold multiple concurrent read locks.
If so,
.Fn pthread_rwlock_unlock .Fn pthread_rwlock_unlock
must be called once for each lock obtained. must be called once for each lock obtained.
.Pp .Pp
@ -72,7 +74,8 @@ If successful, the
.Fn pthread_rwlock_rdlock .Fn pthread_rwlock_rdlock
and and
.Fn pthread_rwlock_tryrdlock .Fn pthread_rwlock_tryrdlock
functions will return zero. Otherwise an error number will be returned functions will return zero.
Otherwise an error number will be returned
to indicate the error. to indicate the error.
.Sh SEE ALSO .Sh SEE ALSO
.Xr pthread_rwlock_init 3 , .Xr pthread_rwlock_init 3 ,

View File

@ -50,7 +50,8 @@ or
.Sh RETURN VALUES .Sh RETURN VALUES
If successful, the If successful, the
.Fn pthread_rwlock_unlock .Fn pthread_rwlock_unlock
function will return zero. Otherwise an error number will be returned function will return zero.
Otherwise an error number will be returned
to indicate the error. to indicate the error.
.Pp .Pp
The results are undefined if The results are undefined if

View File

@ -60,7 +60,8 @@ If successful, the
.Fn pthread_rwlock_wrlock .Fn pthread_rwlock_wrlock
and and
.Fn pthread_rwlock_trywrlock .Fn pthread_rwlock_trywrlock
functions will return zero. Otherwise an error number will be returned functions will return zero.
Otherwise an error number will be returned
to indicate the error. to indicate the error.
.Sh SEE ALSO .Sh SEE ALSO
.Xr pthread_rwlock_init 3 , .Xr pthread_rwlock_init 3 ,

View File

@ -47,7 +47,8 @@ previously created with
.Sh RETURN VALUES .Sh RETURN VALUES
If successful, the If successful, the
.Fn pthread_rwlockattr_destroy .Fn pthread_rwlockattr_destroy
function will return zero. Otherwise an error number will be returned function will return zero.
Otherwise an error number will be returned
to indicate the error. to indicate the error.
.Sh SEE ALSO .Sh SEE ALSO
.Xr pthread_rwlockattr_init 3 .Xr pthread_rwlockattr_init 3

View File

@ -42,7 +42,8 @@
The The
.Fn pthread_rwlockattr_getpshared .Fn pthread_rwlockattr_getpshared
function is used to get the process shared setting of a read/write function is used to get the process shared setting of a read/write
lock attribute object. The setting is returned via lock attribute object.
The setting is returned via
.Fa pshared , .Fa pshared ,
and may be one of two values: and may be one of two values:
.Bl -tag -width PTHREAD_PROCESS_PRIVATE .Bl -tag -width PTHREAD_PROCESS_PRIVATE
@ -51,13 +52,15 @@ Any thread of any process that has access to the memory where the
read/write lock resides can manipulate the lock. read/write lock resides can manipulate the lock.
.It Dv PTHREAD_PROCESS_PRIVATE .It Dv PTHREAD_PROCESS_PRIVATE
Only threads created within the same process as the thread that Only threads created within the same process as the thread that
initialized the read/write lock can manipulate the lock. This is initialized the read/write lock can manipulate the lock.
This is
the default value. the default value.
.El .El
.Sh RETURN VALUES .Sh RETURN VALUES
If successful, the If successful, the
.Fn pthread_rwlockattr_getpshared .Fn pthread_rwlockattr_getpshared
function will return zero. Otherwise an error number will be returned function will return zero.
Otherwise an error number will be returned
to indicate the error. to indicate the error.
.Sh SEE ALSO .Sh SEE ALSO
.Xr pthread_rwlockattr_init 3 , .Xr pthread_rwlockattr_init 3 ,

View File

@ -45,7 +45,8 @@ function is used to initialize a read/write lock attributes object.
.Sh RETURN VALUES .Sh RETURN VALUES
If successful, the If successful, the
.Fn pthread_rwlockattr_init .Fn pthread_rwlockattr_init
function will return zero. Otherwise an error number will be returned function will return zero.
Otherwise an error number will be returned
to indicate the error. to indicate the error.
.Sh SEE ALSO .Sh SEE ALSO
.Xr pthread_rwlockattr_destroy 3 , .Xr pthread_rwlockattr_destroy 3 ,

View File

@ -54,13 +54,15 @@ Any thread of any process that has access to the memory where the
read/write lock resides can manipulate the lock. read/write lock resides can manipulate the lock.
.It Dv PTHREAD_PROCESS_PRIVATE .It Dv PTHREAD_PROCESS_PRIVATE
Only threads created within the same process as the thread that Only threads created within the same process as the thread that
initialized the read/write lock can manipulate the lock. This is initialized the read/write lock can manipulate the lock.
This is
the default value. the default value.
.El .El
.Sh RETURN VALUES .Sh RETURN VALUES
If successful, the If successful, the
.Fn pthread_rwlockattr_setpshared .Fn pthread_rwlockattr_setpshared
function will return zero. Otherwise an error number will be returned function will return zero.
Otherwise an error number will be returned
to indicate the error. to indicate the error.
.Sh SEE ALSO .Sh SEE ALSO
.Xr pthread_rwlockattr_getpshared 3 , .Xr pthread_rwlockattr_getpshared 3 ,

View File

@ -85,7 +85,7 @@ and must be called first.
The parameter The parameter
.Fa last .Fa last
is the name of the last parameter before the variable argument list, is the name of the last parameter before the variable argument list,
i.e. the last parameter of which the calling function knows the type. i.e., the last parameter of which the calling function knows the type.
.Pp .Pp
Because the address of this parameter is used in the Because the address of this parameter is used in the
.Fn va_start .Fn va_start

View File

@ -40,7 +40,8 @@ According to
it is not a good practice to call it is not a good practice to call
.Xr exit 3 .Xr exit 3
with arbitrary values to indicate a failure condition when ending with arbitrary values to indicate a failure condition when ending
a program. Instead, the pre-defined exit codes from a program.
Instead, the pre-defined exit codes from
.Nm .Nm
should be used, so the caller of the process can get a rough should be used, so the caller of the process can get a rough
estimation about the failure class without looking up the source code. estimation about the failure class without looking up the source code.
@ -50,14 +51,16 @@ The successful exit is always indicated by a status of 0, or
Error numbers begin at Error numbers begin at
.Sy EX__BASE .Sy EX__BASE
to reduce the possibility of clashing with other exit statuses that to reduce the possibility of clashing with other exit statuses that
random programs may already return. The meaning of the codes is random programs may already return.
The meaning of the codes is
approximately as follows: approximately as follows:
.Bl -tag -width "EX_UNAVAILABLEXX(XX)" .Bl -tag -width "EX_UNAVAILABLEXX(XX)"
.It Sy EX_USAGE Pq 64 .It Sy EX_USAGE Pq 64
The command was used incorrectly, e.g., with the wrong number of The command was used incorrectly, e.g., with the wrong number of
arguments, a bad flag, a bad syntax in a parameter, or whatever. arguments, a bad flag, a bad syntax in a parameter, or whatever.
.It Sy EX_DATAERR Pq 65 .It Sy EX_DATAERR Pq 65
The input data was incorrect in some way. This should only be used The input data was incorrect in some way.
This should only be used
for user's data and not system files. for user's data and not system files.
.It Sy EX_NOINPUT Pq 66 .It Sy EX_NOINPUT Pq 66
An input file (not a system file) did not exist or was not readable. An input file (not a system file) did not exist or was not readable.
@ -65,24 +68,31 @@ This could also include errors like
.Dq \&No message .Dq \&No message
to a mailer (if it cared to catch it). to a mailer (if it cared to catch it).
.It Sy EX_NOUSER Pq 67 .It Sy EX_NOUSER Pq 67
The user specified did not exist. This might be used for mail The user specified did not exist.
This might be used for mail
addresses or remote logins. addresses or remote logins.
.It Sy EX_NOHOST Pq 68 .It Sy EX_NOHOST Pq 68
The host specified did not exist. This is used in mail addresses or The host specified did not exist.
This is used in mail addresses or
network requests. network requests.
.It Sy EX_UNAVAILABLE Pq 69 .It Sy EX_UNAVAILABLE Pq 69
A service is unavailable. This can occur if a support program or file A service is unavailable.
does not exist. This can also be used as a catchall message when This can occur if a support program or file
does not exist.
This can also be used as a catchall message when
something you wanted to do doesn't work, but you don't know why. something you wanted to do doesn't work, but you don't know why.
.It Sy EX_SOFTWARE Pq 70 .It Sy EX_SOFTWARE Pq 70
An internal software error has been detected. This should be limited An internal software error has been detected.
This should be limited
to non-operating system related errors as possible. to non-operating system related errors as possible.
.It Sy EX_OSERR Pq 71 .It Sy EX_OSERR Pq 71
An operating system error has been detected. This is intended to be An operating system error has been detected.
This is intended to be
used for such things as used for such things as
.Dq cannot fork , .Dq cannot fork ,
.Dq cannot create pipe , .Dq cannot create pipe ,
or the like. It includes things like getuid returning a user that or the like.
It includes things like getuid returning a user that
does not exist in the passwd file. does not exist in the passwd file.
.It Sy EX_OSFILE Pq 72 .It Sy EX_OSFILE Pq 72
Some system file (e.g., Some system file (e.g.,
@ -103,7 +113,8 @@ The remote system returned something that was
.Dq not possible .Dq not possible
during a protocol exchange. during a protocol exchange.
.It Sy EX_NOPERM Pq 77 .It Sy EX_NOPERM Pq 77
You did not have sufficient permission to perform the operation. This You did not have sufficient permission to perform the operation.
This
is not intended for file system problems, which should use is not intended for file system problems, which should use
.Sy EX_NOINPUT .Sy EX_NOINPUT
or or

View File

@ -75,13 +75,13 @@ command.
.It "Function Key number" .It "Function Key number"
Function Key Function Key
.It "1, 2,...12" .It "1, 2,...12"
F1, F2,... F12 F1, F2,...\& F12
.It "13, 14,...24" .It "13, 14,...24"
Shift+F1, Shift+F2,... Shift+F12 Shift+F1, Shift+F2,...\& Shift+F12
.It "25, 26,...36" .It "25, 26,...36"
Ctl+F1, Ctl+F2,... Ctl+F12 Ctl+F1, Ctl+F2,...\& Ctl+F12
.It "37, 38,...48" .It "37, 38,...48"
Shift+Ctl+F1, Shift+Ctl+F2,... Shift+Ctl+F12 Shift+Ctl+F1, Shift+Ctl+F2,...\& Shift+Ctl+F12
.It 49 .It 49
Home and Numpad 7 (without NumLock) Home and Numpad 7 (without NumLock)
.It 50 .It 50

View File

@ -169,7 +169,7 @@ and
.Em The Ports Collection .Em The Ports Collection
also be installed. also be installed.
.It Pa /usr/ports/audio/xmradio .It Pa /usr/ports/audio/xmradio
An FM Radio Tuner for cards which have an FM Radio tuner fitted. - requires that An FM Radio Tuner for cards which have an FM Radio tuner fitted - requires that
.Em The X Window System .Em The X Window System
and and
.Em The Ports Collection .Em The Ports Collection

View File

@ -175,7 +175,8 @@ structure.
All other fields are undefined. All other fields are undefined.
.It Dv BIOCSETIF .It Dv BIOCSETIF
.Pq Li "struct ifreq" .Pq Li "struct ifreq"
Sets the hardware interface associate with the file. This Sets the hardware interface associate with the file.
This
command must be performed before any packets can be read. command must be performed before any packets can be read.
The device is indicated by name using the The device is indicated by name using the
.Li ifr_name .Li ifr_name
@ -477,26 +478,17 @@ The semantics of all the recognized
.Dv BPF_LD .Dv BPF_LD
instructions follow. instructions follow.
.Pp .Pp
.Bl -tag -width "BPF_LD+BPF_W+BPF_IND" -compact .Bd -literal
.It Li BPF_LD+BPF_W+BPF_ABS BPF_LD+BPF_W+BPF_ABS A <- P[k:4]
A <- P[k:4] BPF_LD+BPF_H+BPF_ABS A <- P[k:2]
.It Li BPF_LD+BPF_H+BPF_ABS BPF_LD+BPF_B+BPF_ABS A <- P[k:1]
A <- P[k:2] BPF_LD+BPF_W+BPF_IND A <- P[X+k:4]
.It Li BPF_LD+BPF_B+BPF_ABS BPF_LD+BPF_H+BPF_IND A <- P[X+k:2]
A <- P[k:1] BPF_LD+BPF_B+BPF_IND A <- P[X+k:1]
.It Li BPF_LD+BPF_W+BPF_IND BPF_LD+BPF_W+BPF_LEN A <- len
A <- P[X+k:4] BPF_LD+BPF_IMM A <- k
.It Li BPF_LD+BPF_H+BPF_IND BPF_LD+BPF_MEM A <- M[k]
A <- P[X+k:2] .Ed
.It Li BPF_LD+BPF_B+BPF_IND
A <- P[X+k:1]
.It Li BPF_LD+BPF_W+BPF_LEN
A <- len
.It Li BPF_LD+BPF_IMM
A <- k
.It Li BPF_LD+BPF_MEM
A <- M[k]
.El
.It Dv BPF_LDX .It Dv BPF_LDX
These instructions load a value into the index register. These instructions load a value into the index register.
Note that Note that
@ -505,32 +497,26 @@ but they include
.Dv BPF_MSH , .Dv BPF_MSH ,
a hack for efficiently loading the IP header length. a hack for efficiently loading the IP header length.
.Pp .Pp
.Bl -tag -width "BPF_LDX+BPF_W+BPF_MEM" -compact .Bd -literal
.It Li BPF_LDX+BPF_W+BPF_IMM BPF_LDX+BPF_W+BPF_IMM X <- k
X <- k BPF_LDX+BPF_W+BPF_MEM X <- M[k]
.It Li BPF_LDX+BPF_W+BPF_MEM BPF_LDX+BPF_W+BPF_LEN X <- len
X <- M[k] BPF_LDX+BPF_B+BPF_MSH X <- 4*(P[k:1]&0xf)
.It Li BPF_LDX+BPF_W+BPF_LEN .Ed
X <- len
.It Li BPF_LDX+BPF_B+BPF_MSH
X <- 4*(P[k:1]&0xf)
.El
.It Dv BPF_ST .It Dv BPF_ST
This instruction stores the accumulator into the scratch memory. This instruction stores the accumulator into the scratch memory.
We do not need an addressing mode since there is only one possibility We do not need an addressing mode since there is only one possibility
for the destination. for the destination.
.Pp .Pp
.Bl -tag -width "BPF_ST" -compact .Bd -literal
.It Li BPF_ST BPF_ST M[k] <- A
M[k] <- A .Ed
.El
.It Dv BPF_STX .It Dv BPF_STX
This instruction stores the index register in the scratch memory store. This instruction stores the index register in the scratch memory store.
.Pp .Pp
.Bl -tag -width "BPF_STX" -compact .Bd -literal
.It Li BPF_STX BPF_STX M[k] <- X
M[k] <- X .Ed
.El
.It Dv BPF_ALU .It Dv BPF_ALU
The alu instructions perform operations between the accumulator and The alu instructions perform operations between the accumulator and
index register or constant, and store the result back in the accumulator. index register or constant, and store the result back in the accumulator.
@ -539,42 +525,25 @@ For binary operations, a source mode is required
or or
.Dv BPF_X ) . .Dv BPF_X ) .
.Pp .Pp
.Bl -tag -width "BPF_ALU+BPF_MUL+BPF_K" -compact .Bd -literal
.It Li BPF_ALU+BPF_ADD+BPF_K BPF_ALU+BPF_ADD+BPF_K A <- A + k
A <- A + k BPF_ALU+BPF_SUB+BPF_K A <- A - k
.It Li BPF_ALU+BPF_SUB+BPF_K BPF_ALU+BPF_MUL+BPF_K A <- A * k
A <- A - k BPF_ALU+BPF_DIV+BPF_K A <- A / k
.It Li BPF_ALU+BPF_MUL+BPF_K BPF_ALU+BPF_AND+BPF_K A <- A & k
A <- A * k BPF_ALU+BPF_OR+BPF_K A <- A | k
.It Li BPF_ALU+BPF_DIV+BPF_K BPF_ALU+BPF_LSH+BPF_K A <- A << k
A <- A / k BPF_ALU+BPF_RSH+BPF_K A <- A >> k
.It Li BPF_ALU+BPF_AND+BPF_K BPF_ALU+BPF_ADD+BPF_X A <- A + X
A <- A & k BPF_ALU+BPF_SUB+BPF_X A <- A - X
.It Li BPF_ALU+BPF_OR+BPF_K BPF_ALU+BPF_MUL+BPF_X A <- A * X
A <- A | k BPF_ALU+BPF_DIV+BPF_X A <- A / X
.It Li BPF_ALU+BPF_LSH+BPF_K BPF_ALU+BPF_AND+BPF_X A <- A & X
A <- A << k BPF_ALU+BPF_OR+BPF_X A <- A | X
.It Li BPF_ALU+BPF_RSH+BPF_K BPF_ALU+BPF_LSH+BPF_X A <- A << X
A <- A >> k BPF_ALU+BPF_RSH+BPF_X A <- A >> X
.It Li BPF_ALU+BPF_ADD+BPF_X BPF_ALU+BPF_NEG A <- -A
A <- A + X .Ed
.It Li BPF_ALU+BPF_SUB+BPF_X
A <- A - X
.It Li BPF_ALU+BPF_MUL+BPF_X
A <- A * X
.It Li BPF_ALU+BPF_DIV+BPF_X
A <- A / X
.It Li BPF_ALU+BPF_AND+BPF_X
A <- A & X
.It Li BPF_ALU+BPF_OR+BPF_X
A <- A | X
.It Li BPF_ALU+BPF_LSH+BPF_X
A <- A << X
.It Li BPF_ALU+BPF_RSH+BPF_X
A <- A >> X
.It Li BPF_ALU+BPF_NEG
A <- -A
.El
.It Dv BPF_JMP .It Dv BPF_JMP
The jump instructions alter flow of control. The jump instructions alter flow of control.
Conditional jumps Conditional jumps
@ -592,26 +561,17 @@ opcode uses the 32 bit
field as the offset, allowing arbitrarily distant destinations. field as the offset, allowing arbitrarily distant destinations.
All conditionals use unsigned comparison conventions. All conditionals use unsigned comparison conventions.
.Pp .Pp
.Bl -tag -width "BPF_JMP+BPF_KSET+BPF_X" -compact .Bd -literal
.It Li BPF_JMP+BPF_JA BPF_JMP+BPF_JA pc += k
pc += k BPF_JMP+BPF_JGT+BPF_K pc += (A > k) ? jt : jf
.It Li BPF_JMP+BPF_JGT+BPF_K BPF_JMP+BPF_JGE+BPF_K pc += (A >= k) ? jt : jf
pc += (A > k) ? jt : jf BPF_JMP+BPF_JEQ+BPF_K pc += (A == k) ? jt : jf
.It Li BPF_JMP+BPF_JGE+BPF_K BPF_JMP+BPF_JSET+BPF_K pc += (A & k) ? jt : jf
pc += (A >= k) ? jt : jf BPF_JMP+BPF_JGT+BPF_X pc += (A > X) ? jt : jf
.It Li BPF_JMP+BPF_JEQ+BPF_K BPF_JMP+BPF_JGE+BPF_X pc += (A >= X) ? jt : jf
pc += (A == k) ? jt : jf BPF_JMP+BPF_JEQ+BPF_X pc += (A == X) ? jt : jf
.It Li BPF_JMP+BPF_JSET+BPF_K BPF_JMP+BPF_JSET+BPF_X pc += (A & X) ? jt : jf
pc += (A & k) ? jt : jf .Ed
.It Li BPF_JMP+BPF_JGT+BPF_X
pc += (A > X) ? jt : jf
.It Li BPF_JMP+BPF_JGE+BPF_X
pc += (A >= X) ? jt : jf
.It Li BPF_JMP+BPF_JEQ+BPF_X
pc += (A == X) ? jt : jf
.It Li BPF_JMP+BPF_JSET+BPF_X
pc += (A & X) ? jt : jf
.El
.It Dv BPF_RET .It Dv BPF_RET
The return instructions terminate the filter program and specify the amount The return instructions terminate the filter program and specify the amount
of packet to accept (i.e., they return the truncation amount). of packet to accept (i.e., they return the truncation amount).
@ -621,12 +581,10 @@ The return value is either a constant
or the accumulator or the accumulator
.Pq Dv BPF_A . .Pq Dv BPF_A .
.Pp .Pp
.Bl -tag -width "BPF_RET+BPF_K" -compact .Bd -literal
.It Li BPF_RET+BPF_A BPF_RET+BPF_A accept A bytes
accept A bytes BPF_RET+BPF_K accept k bytes
.It Li BPF_RET+BPF_K .Ed
accept k bytes
.El
.It Dv BPF_MISC .It Dv BPF_MISC
The miscellaneous category was created for anything that doesn't The miscellaneous category was created for anything that doesn't
fit into the above classes, and for any new instructions that might need to fit into the above classes, and for any new instructions that might need to
@ -634,12 +592,10 @@ be added.
Currently, these are the register transfer instructions Currently, these are the register transfer instructions
that copy the index register to the accumulator or vice versa. that copy the index register to the accumulator or vice versa.
.Pp .Pp
.Bl -tag -width "BPF_MISC+BPF_TAX" -compact .Bd -literal
.It Li BPF_MISC+BPF_TAX BPF_MISC+BPF_TAX X <- A
X <- A BPF_MISC+BPF_TXA A <- X
.It Li BPF_MISC+BPF_TXA .Ed
A <- X
.El
.El .El
.Pp .Pp
The The
@ -765,5 +721,6 @@ and
.An -nosplit .An -nosplit
.An Steven McCanne , .An Steven McCanne ,
of Lawrence Berkeley Laboratory, implemented BPF in of Lawrence Berkeley Laboratory, implemented BPF in
Summer 1990. Much of the design is due to Summer 1990.
Much of the design is due to
.An Van Jacobson . .An Van Jacobson .

View File

@ -108,7 +108,7 @@ you do this, but sequential performance is not usually an issue with a
multitasking load. multitasking load.
.Pp .Pp
An interleave factor must be specified when using a mirroring configuration, An interleave factor must be specified when using a mirroring configuration,
even when you have only two disks (i.e. the layout winds up being the same even when you have only two disks (i.e., the layout winds up being the same
no matter what the interleave factor). no matter what the interleave factor).
The interleave factor will determine The interleave factor will determine
how I/O is broken up, however, and a value 128 or greater is recommended. how I/O is broken up, however, and a value 128 or greater is recommended.

View File

@ -374,7 +374,8 @@ drives; however, this is not yet under way.
The The
.Nm .Nm
driver attempts to automatically determine whether the drive it is talking driver attempts to automatically determine whether the drive it is talking
to supports 6 byte or 10 byte MODE SENSE/MODE SELECT operations. Many to supports 6 byte or 10 byte MODE SENSE/MODE SELECT operations.
Many
.Tn SCSI .Tn SCSI
drives only support 6 byte commands, and drives only support 6 byte commands, and
.Tn ATAPI .Tn ATAPI
@ -389,17 +390,22 @@ After that, the
driver defaults to using 6 byte commands (assuming the protocol the drive driver defaults to using 6 byte commands (assuming the protocol the drive
speaks claims to support 6 byte commands), until one fails with a speaks claims to support 6 byte commands), until one fails with a
.Tn SCSI .Tn SCSI
ILLEGAL REQUEST error. Then it tries the 10 byte version of the command to ILLEGAL REQUEST error.
see if that works instead. Users can change the default via per-drive Then it tries the 10 byte version of the command to
sysctl variables and loader tunables. The variable names are the same in see if that works instead.
Users can change the default via per-drive
sysctl variables and loader tunables.
The variable names are the same in
both instances: both instances:
.Pp .Pp
.Va kern.cam.cd.%d.minimum_cmd_size .Va kern.cam.cd.%d.minimum_cmd_size
.Pp .Pp
Where Where
.Dq %d .Dq %d
is the unit number of the drive in question. Valid minimum command sizes is the unit number of the drive in question.
are 6 and 10. Any value above 6 will be rounded to 10, and any value below Valid minimum command sizes
are 6 and 10.
Any value above 6 will be rounded to 10, and any value below
6 will be rounded to 6. 6 will be rounded to 6.
.Sh CHANGER OPERATION .Sh CHANGER OPERATION
This driver has built-in support for LUN-based CD changers. This driver has built-in support for LUN-based CD changers.

View File

@ -292,7 +292,7 @@ A medium is present.
.It Dv CESTATUS_IMPEXP .It Dv CESTATUS_IMPEXP
The medium has been deposited by the operator (and not by a picker). The medium has been deposited by the operator (and not by a picker).
.It Dv CESTATUS_EXCEPT .It Dv CESTATUS_EXCEPT
The element is in an exceptional state (e.g. invalid barcode label, The element is in an exceptional state (e.g.\& invalid barcode label,
barcode not yet scanned). barcode not yet scanned).
.It Dv CESTATUS_ACCESS .It Dv CESTATUS_ACCESS
The element is accessible by the picker. The element is accessible by the picker.

View File

@ -33,7 +33,7 @@ offloading most of the queueing and being-a-disk chores onto CAM.
Entry to the driver is via the PCI bus attachment Entry to the driver is via the PCI bus attachment
.Fn ciss_probe , .Fn ciss_probe ,
.Fn ciss_attach , .Fn ciss_attach ,
etc. and via the CAM interface etc.\& and via the CAM interface
.Fn ciss_cam_action , .Fn ciss_cam_action ,
and and
.Fn ciss_cam_poll . .Fn ciss_cam_poll .
@ -62,12 +62,15 @@ except under extreme load.
Non-disk devices (such as internal DATs and devices Non-disk devices (such as internal DATs and devices
attached to the external SCSI bus) are supported as normal CAM devices attached to the external SCSI bus) are supported as normal CAM devices
provided that they are exported by the controller firmware and are not provided that they are exported by the controller firmware and are not
marked as being masked. Masked devices can be exposed by setting the marked as being masked.
Masked devices can be exposed by setting the
.Va hw.ciss.expose_hidden_physical .Va hw.ciss.expose_hidden_physical
tunable to non-zero at boot time. Direct Access devices (such as disk tunable to non-zero at boot time.
Direct Access devices (such as disk
drives) are only exposed as drives) are only exposed as
.Xr pass 4 .Xr pass 4
devices. Hot-insertion and removal of devices is supported but a bus devices.
Hot-insertion and removal of devices is supported but a bus
rescan might be necessary. rescan might be necessary.
.Pp .Pp
Supported controllers include: Supported controllers include:

View File

@ -154,10 +154,12 @@ in the normal way on the initial-state devices to program
initial termios states suitable for your setup. initial termios states suitable for your setup.
.Pp .Pp
The lock termios state acts as flags to disable changing The lock termios state acts as flags to disable changing
the termios state. E.g., to lock a flag variable such as the termios state.
E.g., to lock a flag variable such as
CRTSCTS, use CRTSCTS, use
.Em "stty crtscts" .Em "stty crtscts"
on the lock-state device. Speeds and special characters on the lock-state device.
Speeds and special characters
may be locked by setting the corresponding value in the lock-state may be locked by setting the corresponding value in the lock-state
device to any nonzero value. device to any nonzero value.
.Pp .Pp
@ -170,11 +172,15 @@ should be set to suit the devices attached and may need to be
locked to prevent buggy programs from changing them. locked to prevent buggy programs from changing them.
E.g., CRTSCTS should be locked on for devices that support E.g., CRTSCTS should be locked on for devices that support
RTS/CTS handshaking at all times and off for devices that don't RTS/CTS handshaking at all times and off for devices that don't
support it at all. CLOCAL should be locked on for devices support it at all.
that don't support carrier. HUPCL may be locked off if you don't CLOCAL should be locked on for devices
want to hang up for some reason. In general, very bad things happen that don't support carrier.
HUPCL may be locked off if you don't
want to hang up for some reason.
In general, very bad things happen
if something is locked to the wrong state, and things should not if something is locked to the wrong state, and things should not
be locked for devices that support more than one setting. The be locked for devices that support more than one setting.
The
CLOCAL flag on callin ports should be locked off for logins CLOCAL flag on callin ports should be locked off for logins
to avoid certain security holes, but this needs to be done by to avoid certain security holes, but this needs to be done by
getty if the callin port is used for anything else. getty if the callin port is used for anything else.

View File

@ -96,7 +96,8 @@ utility.
The read cache is used to store data from device-initiated read ahead The read cache is used to store data from device-initiated read ahead
operations as well as frequently used data. operations as well as frequently used data.
The read cache is transparent The read cache is transparent
to the user and can be enabled without any adverse effect. Most devices to the user and can be enabled without any adverse effect.
Most devices
with a read cache come from the factory with it enabled. with a read cache come from the factory with it enabled.
The read cache can be disabled by setting the The read cache can be disabled by setting the
.Tn RCD .Tn RCD
@ -228,14 +229,14 @@ given
unit. unit.
(The %d above denotes the unit number of the (The %d above denotes the unit number of the
.Nm .Nm
driver instance, e.g. 1, 2, 4, 8, etc.) driver instance, e.g.\& 1, 2, 4, 8, etc.)
Valid minimum command size values are 6, 10, 12 and 16 bytes. Valid minimum command size values are 6, 10, 12 and 16 bytes.
The default is 6 bytes. The default is 6 bytes.
.Pp .Pp
The The
.Nm .Nm
driver issues a CAM Path Inquiry CCB at probe time to determine whether the driver issues a CAM Path Inquiry CCB at probe time to determine whether the
protocol the device in question speaks (e.g. ATAPI) typically doesn't allow protocol the device in question speaks (e.g.\& ATAPI) typically doesn't allow
6 byte commands. 6 byte commands.
If it doesn't, the If it doesn't, the
.Nm .Nm

View File

@ -88,7 +88,8 @@ Others use different receiver filter programming
mechanisms. mechanisms.
At least one supports only chained DMA descriptors At least one supports only chained DMA descriptors
(most support both chained descriptors and contiguously allocated (most support both chained descriptors and contiguously allocated
fixed size rings). Some chips (especially the PNIC) also have fixed size rings).
Some chips (especially the PNIC) also have
peculiar bugs. peculiar bugs.
The The
.Nm .Nm
@ -165,7 +166,7 @@ NDC SOHOware SFA110A (98713A)
.It .It
NDC SOHOware SFA110A Rev B4 (98715AEC-C) NDC SOHOware SFA110A Rev B4 (98715AEC-C)
.It .It
NetGear FA310-TX Rev. D1, D2 or D3 (PNIC 82c169) NetGear FA310-TX Rev.\& D1, D2 or D3 (PNIC 82c169)
.It .It
Netgear FA511 Netgear FA511
.It .It

View File

@ -108,7 +108,8 @@ Packets written into a divert socket
re-enter the packet filter at the rule number re-enter the packet filter at the rule number
following the tag given in the port part of the socket address, which following the tag given in the port part of the socket address, which
is usually already set at the rule number that caused the diversion is usually already set at the rule number that caused the diversion
(not the next rule if there are several at the same number). If the 'tag' (not the next rule if there are several at the same number).
If the 'tag'
is altered to indicate an alternative re-entry point, care should be taken is altered to indicate an alternative re-entry point, care should be taken
to avoid loops, where the same packet is diverted more than once at the to avoid loops, where the same packet is diverted more than once at the
same rule. same rule.

View File

@ -14,7 +14,7 @@
The The
.Nm .Nm
device driver supports Midway-based ATM interfaces including the device driver supports Midway-based ATM interfaces including the
Efficient Networks, Inc. ENI-155 and Adaptec ANA-59x0. Efficient Networks, Inc.\& ENI-155 and Adaptec ANA-59x0.
Midway is an AAL5 SAR (Segmentation and Reassembly) chip. Midway is an AAL5 SAR (Segmentation and Reassembly) chip.
.Pp .Pp
For configuring the card for IP see For configuring the card for IP see

View File

@ -50,7 +50,8 @@ The driver interfaces with the
framework, framework,
.Xr netgraph 4 .Xr netgraph 4
and HARP. and HARP.
It provides only PVC services. Signalling, ATMARP, ILMI and other It provides only PVC services.
Signalling, ATMARP, ILMI and other
higher layer protocols are implemented using higher layer protocols are implemented using
.Xr netgraph 4 .Xr netgraph 4
or HARP. or HARP.
@ -71,12 +72,15 @@ Returns a list of
with internal driver statistics. with internal driver statistics.
.It Cm hw.atm.fatmN.retry_tx .It Cm hw.atm.fatmN.retry_tx
If this is set packets are stuffed back into the interface's send queue when If this is set packets are stuffed back into the interface's send queue when
the cards transmit queue is found to be full. They are transmitted later. the cards transmit queue is found to be full.
If this is not set the packets are dropped. It may be useful to set this They are transmitted later.
If this is not set the packets are dropped.
It may be useful to set this
if only UBR traffic is sent. if only UBR traffic is sent.
.It Cm hw.atm.fatmN.debug .It Cm hw.atm.fatmN.debug
.Em (only if debugging enabled) .Em (only if debugging enabled)
These are debugging flags. See These are debugging flags.
See
.Fn if_fatmvar.h .Fn if_fatmvar.h
for the possible flags. for the possible flags.
.El .El
@ -97,9 +101,12 @@ fatm0: <FORE PCA200E> mem 0xd5800000-0xd59fffff irq 9 at device 9.0 on pci0
.Xr natmip 4 , .Xr natmip 4 ,
.Xr utopia 4 .Xr utopia 4
.Sh BUGS .Sh BUGS
These cards can CBR shape a single VCC only. It is currently possible to These cards can CBR shape a single VCC only.
request more than one CBR connection. In this case all the timing will be It is currently possible to
wrong. See request more than one CBR connection.
In this case all the timing will be
wrong.
See
.Xr hatm 4 .Xr hatm 4
for a better card. for a better card.
.Sh AUTHORS .Sh AUTHORS

View File

@ -54,15 +54,18 @@ Compared to traditional "volume management", GEOM differs from most
and in some cases all previous implementations in the following ways: and in some cases all previous implementations in the following ways:
.Bl -bullet .Bl -bullet
.It .It
GEOM is extensible. It is trivially simple to write a new class GEOM is extensible.
of transformation and it will not be given stepchild treatment. If It is trivially simple to write a new class
of transformation and it will not be given stepchild treatment.
If
someone for some reason wanted to mount IBM MVS diskpacks, a class someone for some reason wanted to mount IBM MVS diskpacks, a class
recognizing and configuring their VTOC information would be a trivial recognizing and configuring their VTOC information would be a trivial
matter. matter.
.It .It
GEOM is topologically agnostic. Most volume management implementations GEOM is topologically agnostic.
Most volume management implementations
have very strict notions of how classes can fit together, very often have very strict notions of how classes can fit together, very often
one fixed hierarchy is provided for instance subdisk - plex - one fixed hierarchy is provided for instance subdisk - plex -
volume. volume.
.El .El
.Pp .Pp
@ -83,11 +86,13 @@ GEOM is quite object oriented and consequently the terminology
borrows a lot of context and semantics from the OO vocabulary: borrows a lot of context and semantics from the OO vocabulary:
.Pp .Pp
A "class", represented by the data structure g_class implements one A "class", represented by the data structure g_class implements one
particular kind of transformation. Typical examples are MBR disk particular kind of transformation.
Typical examples are MBR disk
partition, BSD disklabel, and RAID5 classes. partition, BSD disklabel, and RAID5 classes.
.Pp .Pp
An instance of a class is called a "geom" and represented by the An instance of a class is called a "geom" and represented by the
data structure "g_geom". In a typical i386 FreeBSD system, there data structure "g_geom".
In a typical i386 FreeBSD system, there
will be one geom of class MBR for each disk. will be one geom of class MBR for each disk.
.Pp .Pp
A "provider", represented by the data structure "g_provider", is A "provider", represented by the data structure "g_provider", is
@ -116,7 +121,8 @@ A provider can have zero or more consumers attached.
.El .El
.Pp .Pp
All geoms have a rank-number assigned, which is used to detect and All geoms have a rank-number assigned, which is used to detect and
prevent loops in the acyclic directed graph. This rank number is prevent loops in the acyclic directed graph.
This rank number is
assigned as follows: assigned as follows:
.Bl -enum .Bl -enum
.It .It
@ -161,7 +167,8 @@ is the process by which a provider is removed while
it potentially is still being used. it potentially is still being used.
.Pp .Pp
When a geom orphans a provider, all future I/O requests will When a geom orphans a provider, all future I/O requests will
"bounce" on the provider with an error code set by the geom. Any "bounce" on the provider with an error code set by the geom.
Any
consumers attached to the provider will receive notification about consumers attached to the provider will receive notification about
the orphanization when the eventloop gets around to it, and they the orphanization when the eventloop gets around to it, and they
can take appropriate action at that time. can take appropriate action at that time.
@ -226,7 +233,7 @@ Imagine a disk, "da0" on top of which a MBR geom provides
"da0s1a" through "da0s1e", both the MBR and BSD geoms have "da0s1a" through "da0s1e", both the MBR and BSD geoms have
autoconfigured based on data structures on the disk media. autoconfigured based on data structures on the disk media.
Now imagine the case where "da0" is opened for writing and those Now imagine the case where "da0" is opened for writing and those
data structures are modified or overwritten: Now the geoms would data structures are modified or overwritten: Now the geoms would
be operating on stale metadata unless some notification system be operating on stale metadata unless some notification system
can inform them otherwise. can inform them otherwise.
.Pp .Pp
@ -273,7 +280,8 @@ again, it has served its purpose.
.Pp .Pp
.Em CONFIGURE .Em CONFIGURE
is the process where the administrator issues instructions is the process where the administrator issues instructions
for a particular class to instantiate itself. There are multiple for a particular class to instantiate itself.
There are multiple
ways to express intent in this case, a particular provider can be ways to express intent in this case, a particular provider can be
specified with a level of override forcing for instance a BSD specified with a level of override forcing for instance a BSD
disklabel module to attach to a provider which was not found palatable disklabel module to attach to a provider which was not found palatable
@ -311,7 +319,8 @@ range to reduce the amount of data available for attack.
It is important to recognize that a delete indication is not a It is important to recognize that a delete indication is not a
request and consequently there is no guarantee that the data actually request and consequently there is no guarantee that the data actually
will be erased or made unavailable unless guaranteed by specific will be erased or made unavailable unless guaranteed by specific
geoms in the graph. If "secure delete" semantics are required, a geoms in the graph.
If "secure delete" semantics are required, a
geom should be pushed which converts delete indications into (a geom should be pushed which converts delete indications into (a
sequence of) write requests. sequence of) write requests.
.Pp .Pp
@ -328,7 +337,8 @@ under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part of the
DARPA CHATS research program. DARPA CHATS research program.
.Pp .Pp
The first precursor for GEOM was a gruesome hack to Minix 1.2 and was The first precursor for GEOM was a gruesome hack to Minix 1.2 and was
never distributed. An earlier attempt to implement a less general scheme never distributed.
An earlier attempt to implement a less general scheme
in FreeBSD never succeeded. in FreeBSD never succeeded.
.Sh AUTHORS .Sh AUTHORS
.An "Poul-Henning Kamp" Aq phk@FreeBSD.org .An "Poul-Henning Kamp" Aq phk@FreeBSD.org

View File

@ -70,7 +70,7 @@ Encapsulated datagrams are
prepended an outer datagram and a GRE header. prepended an outer datagram and a GRE header.
The GRE header specifies The GRE header specifies
the type of the encapsulated datagram and thus allows for tunneling other the type of the encapsulated datagram and thus allows for tunneling other
protocols than IP like e.g. AppleTalk. protocols than IP like e.g.\& AppleTalk.
GRE mode is also the default tunnel mode on Cisco routers. GRE mode is also the default tunnel mode on Cisco routers.
This is also the default mode of operation of the This is also the default mode of operation of the
.Nm .Nm
@ -158,7 +158,7 @@ Query operation mode.
Note that the IP addresses of the tunnel endpoints may be the same as the Note that the IP addresses of the tunnel endpoints may be the same as the
ones defined with ones defined with
.Xr ifconfig 8 .Xr ifconfig 8
for the interface (as if IP is encapsulated), but need not be, as e.g. when for the interface (as if IP is encapsulated), but need not be, as e.g.\& when
encapsulating AppleTalk. encapsulating AppleTalk.
.Sh EXAMPLES .Sh EXAMPLES
Configuration example: Configuration example:
@ -204,7 +204,7 @@ ifconfig tunnel greN D A
If all goes well, you should see packets flowing ;-) If all goes well, you should see packets flowing ;-)
.Pp .Pp
If you want to reach Host A over the tunnel (from Host D (Cisco)), then If you want to reach Host A over the tunnel (from Host D (Cisco)), then
you have to have an alias on Host A for e.g. the Ethernet interface like: you have to have an alias on Host A for e.g.\& the Ethernet interface like:
.Pp .Pp
.Dl "ifconfig <etherif> alias Y" .Dl "ifconfig <etherif> alias Y"
.Pp .Pp

View File

@ -57,7 +57,8 @@ Gravis UltraSound MAX
.Pp .Pp
The value of flags specifies the secondary DMA channel. The value of flags specifies the secondary DMA channel.
If the secondary If the secondary
DMA channel is C, set the flags to (C | 0x10). For a sound card without the DMA channel is C, set the flags to (C | 0x10).
For a sound card without the
secondary DMA channel, the flags should be set to zero. secondary DMA channel, the flags should be set to zero.
.Sh DIAGNOSTICS .Sh DIAGNOSTICS
.Bl -diag .Bl -diag

View File

@ -51,7 +51,8 @@ The driver interfaces with the
framework, framework,
.Xr netgraph 4 .Xr netgraph 4
and the HARP ATM stack. and the HARP ATM stack.
It provides only PVC services. Signalling, ATMARP, ILMI and other It provides only PVC services.
Signalling, ATMARP, ILMI and other
higher layer protocols are implemented using higher layer protocols are implemented using
.Xr netgraph 4 .Xr netgraph 4
or HARP. or HARP.
@ -64,7 +65,8 @@ handled by
.Xr utopia 4 : .Xr utopia 4 :
.Bl -tag -width XXX .Bl -tag -width XXX
.It Cm hw.atm.hatm.natm_traffic .It Cm hw.atm.hatm.natm_traffic
This is the traffic type to be used for NATM pvc connections. The type of This is the traffic type to be used for NATM pvc connections.
The type of
this variable is integer and it must have one of the values 0 (UBR) or 1 (CBR). this variable is integer and it must have one of the values 0 (UBR) or 1 (CBR).
.It Cm hw.atm.hatm.natm_pcr .It Cm hw.atm.hatm.natm_pcr
This is the peak cell rate to be used for NATM CBR connections. This is the peak cell rate to be used for NATM CBR connections.
@ -78,12 +80,14 @@ Contains an array of
with internal driver statistics. with internal driver statistics.
.It Cm hw.atm.hatmN.debug .It Cm hw.atm.hatmN.debug
.Em (only if debugging enabled) .Em (only if debugging enabled)
These are the debugging flags. See These are the debugging flags.
See
.Fn if_hatmvar.h .Fn if_hatmvar.h
for the possible flags. for the possible flags.
.It Cm hw.atm.hatmN.tsr .It Cm hw.atm.hatmN.tsr
.Em (only if debugging enabled) .Em (only if debugging enabled)
This is an array containing all transmission status registers. For each of the This is an array containing all transmission status registers.
For each of the
4096 possible VCCs there are 15 32-bit registers. 4096 possible VCCs there are 15 32-bit registers.
.It Cm hw.atm.hatmN.tpd .It Cm hw.atm.hatmN.tpd
.Em (only if debugging enabled) .Em (only if debugging enabled)
@ -120,86 +124,120 @@ hatm0: ForeRunnerHE 622, Rev. D, S/N 2949834, MAC=00:20:48:2d:02:ca
When attaching to a device the driver checks the kernel environment When attaching to a device the driver checks the kernel environment
(see (see
.Xr kenv 4 ) .Xr kenv 4 )
to see if the default queues sizes should be overwritten or not. The to see if the default queues sizes should be overwritten or not.
The
following variables are checked and interpreted as unsigned integer following variables are checked and interpreted as unsigned integer
values (in either radix): values (in either radix):
.Bl -tag -width XXX .Bl -tag -width XXX
.It Cm hw.hatmN.rbps0_size .It Cm hw.hatmN.rbps0_size
Size of the small receive buffer pool 0. This pool is used for all Size of the small receive buffer pool 0.
except raw AAL connections. The pool size must be a power of two between This pool is used for all
4 and 8192 inclusive. When attaching the driver allocates this number except raw AAL connections.
The pool size must be a power of two between
4 and 8192 inclusive.
When attaching the driver allocates this number
of mbufs. of mbufs.
.It Cm hw.hatmN.rbps0_thresh .It Cm hw.hatmN.rbps0_thresh
Interrupt threshold for small receive buffer pool 0. When the number of free Interrupt threshold for small receive buffer pool 0.
When the number of free
buffers in the pool falls below this threshold it generates an interrupt buffers in the pool falls below this threshold it generates an interrupt
so that the driver can refill the pool. so that the driver can refill the pool.
.It Cm hw.hatmN.rbpl0_thresh .It Cm hw.hatmN.rbpl0_thresh
Size of the large receive buffer pool 0. This pool is used for all Size of the large receive buffer pool 0.
except raw AAL connections. The pool size must be a power of two between This pool is used for all
4 and 8192 inclusive. When attaching the driver allocates this number except raw AAL connections.
The pool size must be a power of two between
4 and 8192 inclusive.
When attaching the driver allocates this number
of mbufs with clusters. of mbufs with clusters.
.It Cm hw.hatmN.rbpl0_thresh .It Cm hw.hatmN.rbpl0_thresh
Interrupt threshold for large receive buffer pool 0. When the number of free Interrupt threshold for large receive buffer pool 0.
When the number of free
buffers in the pool falls below this threshold it generates an interrupt buffers in the pool falls below this threshold it generates an interrupt
so that the driver can refill the pool. so that the driver can refill the pool.
.It Cm hw.hatmN.rbrq0_size .It Cm hw.hatmN.rbrq0_size
Size of receive buffer return queue 0. This queue is used to return buffers Size of receive buffer return queue 0.
filled with received frames to the driver. The size must be a power of 2 This queue is used to return buffers
filled with received frames to the driver.
The size must be a power of 2
between 1 and 16384 inclusive. between 1 and 16384 inclusive.
.It Cm hw.hatmN.rbrq0_thresh .It Cm hw.hatmN.rbrq0_thresh
Interrupt threshold for receive buffer return queue 0. This threshold Interrupt threshold for receive buffer return queue 0.
This threshold
should only be triggered in exceptional cases. should only be triggered in exceptional cases.
.It Cm hw.hatmN.rbrq0_tout .It Cm hw.hatmN.rbrq0_tout
Interrupt timeout for receive buffer return queue 0. An interrupt is generated Interrupt timeout for receive buffer return queue 0.
after this time if the queue is not empty. The number is in internal card An interrupt is generated
after this time if the queue is not empty.
The number is in internal card
ticks. ticks.
.It Cm hw.hatmN.rbrq0_pcnt .It Cm hw.hatmN.rbrq0_pcnt
Packet count threshold for receive buffer return queue 0. An interrupt Packet count threshold for receive buffer return queue 0.
An interrupt
is generated if this number of packets is in the queue. is generated if this number of packets is in the queue.
.It Cm hw.hatmN.rbps1_size .It Cm hw.hatmN.rbps1_size
Size of the small receive buffer pool 1. This pool is used for all Size of the small receive buffer pool 1.
raw AAL connections. The pool size must be a power of two between This pool is used for all
4 and 8192 inclusive. When attaching the driver allocates this number raw AAL connections.
The pool size must be a power of two between
4 and 8192 inclusive.
When attaching the driver allocates this number
of mbufs. of mbufs.
.It Cm hw.hatmN.rbps1_thresh .It Cm hw.hatmN.rbps1_thresh
Interrupt threshold for small receive buffer pool 1. When the number of free Interrupt threshold for small receive buffer pool 1.
When the number of free
buffers in the pool falls below this threshold it generates an interrupt buffers in the pool falls below this threshold it generates an interrupt
so that the driver can refill the pool. so that the driver can refill the pool.
.It Cm hw.hatmN.rbrq1_size .It Cm hw.hatmN.rbrq1_size
Size of receive buffer return queue 1. This queue is used to return buffers Size of receive buffer return queue 1.
filled with received cells to the driver. The size must be a power of 2 This queue is used to return buffers
filled with received cells to the driver.
The size must be a power of 2
between 1 and 16384 inclusive. between 1 and 16384 inclusive.
.It Cm hw.hatmN.rbrq1_thresh .It Cm hw.hatmN.rbrq1_thresh
Interrupt threshold for receive buffer return queue 1. This threshold Interrupt threshold for receive buffer return queue 1.
This threshold
should only be triggered in exceptional cases. should only be triggered in exceptional cases.
.It Cm hw.hatmN.rbrq1_tout .It Cm hw.hatmN.rbrq1_tout
Interrupt timeout for receive buffer return queue 1. An interrupt is generated Interrupt timeout for receive buffer return queue 1.
after this time if the queue is not empty. The number is in internal card An interrupt is generated
after this time if the queue is not empty.
The number is in internal card
ticks. ticks.
.It Cm hw.hatmN.rbrq1_pcnt .It Cm hw.hatmN.rbrq1_pcnt
Packet count threshold for receive buffer return queue 0. An interrupt Packet count threshold for receive buffer return queue 0.
An interrupt
is generated if this number of cells is in the queue. is generated if this number of cells is in the queue.
.It Cm hw.hatmN.irq0_size .It Cm hw.hatmN.irq0_size
Size of interrupt queue 0. This must be a number between 1 and 1023 inclusive. Size of interrupt queue 0.
This must be a number between 1 and 1023 inclusive.
.It Cm hw.hatmN.irq0_thresh .It Cm hw.hatmN.irq0_thresh
Interrupt retrigger threshold of interrupt queue 0. A new interrupt is trigger Interrupt retrigger threshold of interrupt queue 0.
A new interrupt is trigger
if the queue fill state reaches this threshold and the interrupt was no if the queue fill state reaches this threshold and the interrupt was no
served. served.
.It Cm hw.hatmN.tbrq0_size .It Cm hw.hatmN.tbrq0_size
Transmit buffer return queue 0 size. This queue is used to feed back empty Transmit buffer return queue 0 size.
buffers of transmitted frames back to the driver. It must be a power of 2 This queue is used to feed back empty
buffers of transmitted frames back to the driver.
It must be a power of 2
between 1 and 4096 inclusive. between 1 and 4096 inclusive.
.It Cm hw.hatmN.tbrq0_thresh .It Cm hw.hatmN.tbrq0_thresh
Transmit buffer return queue 0 threshold. An interrupt is generated if the Transmit buffer return queue 0 threshold.
An interrupt is generated if the
queue fill state reaches this point. queue fill state reaches this point.
.It Cm hw.hatmN.tpdrq_size .It Cm hw.hatmN.tpdrq_size
Transmit descriptor ready queue size. This queue is used by the driver Transmit descriptor ready queue size.
to feed transmit descriptors into the card. The size must be a power of 2 This queue is used by the driver
to feed transmit descriptors into the card.
The size must be a power of 2
between 1 and 16384 inclusive. between 1 and 16384 inclusive.
.It Cm hw.hatmN.tpdmax .It Cm hw.hatmN.tpdmax
Maximum number of active TPDs per connection. This controls the maximum Maximum number of active TPDs per connection.
This controls the maximum
number of outstanding packet chunks per connection and thus the maximum number of outstanding packet chunks per connection and thus the maximum
delay packets can have because of queueing on the adapter. If set to 0, delay packets can have because of queueing on the adapter.
If set to 0,
a connection can eat up all available TPDs. a connection can eat up all available TPDs.
.It Cm hw.hatmN.mbuf_max_pages .It Cm hw.hatmN.mbuf_max_pages
Maximum number of memory pages allocated to small external mbufs. Maximum number of memory pages allocated to small external mbufs.

View File

@ -90,7 +90,7 @@ The index of the last row in the table is given by
A management application searching for a particular interface should A management application searching for a particular interface should
start with row 1 and continue through the table row-by-row until the start with row 1 and continue through the table row-by-row until the
desired interface is found, or the interface count is reached. desired interface is found, or the interface count is reached.
Note that the table may be sparse, i.e. a given row may not exist, Note that the table may be sparse, i.e., a given row may not exist,
indicated by an indicated by an
.Va errno .Va errno
of of

View File

@ -38,7 +38,9 @@ The
character device driver provides generic i/o to any character device driver provides generic i/o to any
.Xr iicbus 4 .Xr iicbus 4
instance. instance.
In order to control I2C devices, use /dev/iic? with the In order to control I2C devices, use
.Pa /dev/iic?
with the
following ioctls: following ioctls:
.Pp .Pp
.Bl -column "I2CRSTCARD" -compact .Bl -column "I2CRSTCARD" -compact

View File

@ -44,7 +44,7 @@
.Sh DESCRIPTION .Sh DESCRIPTION
The Internet protocol family is a collection of protocols The Internet protocol family is a collection of protocols
layered atop the layered atop the
.Em Internet Protocol .Em Internet Protocol
.Pq Tn IP .Pq Tn IP
transport layer, and utilizing the Internet address format. transport layer, and utilizing the Internet address format.
The Internet family provides protocol support for the The Internet family provides protocol support for the

View File

@ -127,7 +127,7 @@ This includes making backups of entire disk partitions, or
to to
.Em raw .Em raw
floppy disks floppy disks
(i.e. those used like tapes). (i.e., those used like tapes).
.Pp .Pp
Access restrictions to device nodes are usually subject to the regular Access restrictions to device nodes are usually subject to the regular
file permissions of the device node entry, instead of being enforced file permissions of the device node entry, instead of being enforced

View File

@ -104,7 +104,7 @@ The basic API looks very similar to the API presented in
Advanced API uses ancillary data and can handle more complex cases. Advanced API uses ancillary data and can handle more complex cases.
.Pp .Pp
To specify some of socket options, certain privilege To specify some of socket options, certain privilege
(i.e. root privilege) is required. (i.e., root privilege) is required.
.\" .\"
.Ss Basic IPv6 sockets API .Ss Basic IPv6 sockets API
.Dv IPV6_UNICAST_HOPS .Dv IPV6_UNICAST_HOPS

View File

@ -33,8 +33,10 @@
.Cd "device ispfw" .Cd "device ispfw"
.Sh DESCRIPTION .Sh DESCRIPTION
This trivial driver provides access to firmware sets for the Qlogic This trivial driver provides access to firmware sets for the Qlogic
based SCSI and FibreChannel SCSI Host Adapters. It may either be based SCSI and FibreChannel SCSI Host Adapters.
statically linked into the kernel, or loaded as a module. In either It may either be
statically linked into the kernel, or loaded as a module.
In either
case, the case, the
.Xr isp 4 .Xr isp 4
driver will notice that firmware is available to be downloaded onto driver will notice that firmware is available to be downloaded onto

View File

@ -61,16 +61,16 @@ only interested by the buttons status.
Get the time limit (in microseconds) used for reading the joystick Get the time limit (in microseconds) used for reading the joystick
status. status.
.It Dv JOY_SET_X_OFFSET Fa int *offset .It Dv JOY_SET_X_OFFSET Fa int *offset
Set the value to be added to the X position when reading the joystick Set the value to be added to the X position when reading the joystick
status. status.
.It Dv JOY_SET_Y_OFFSET Fa int *offset .It Dv JOY_SET_Y_OFFSET Fa int *offset
Set the value to be added to the Y position when reading the joystick Set the value to be added to the Y position when reading the joystick
status. status.
.It Dv JOY_GET_X_OFFSET Fa int *offset .It Dv JOY_GET_X_OFFSET Fa int *offset
Get the value which is added to the X position when reading the joystick Get the value which is added to the X position when reading the joystick
status. status.
.It Dv JOY_GET_Y_OFFSET Fa int *offset .It Dv JOY_GET_Y_OFFSET Fa int *offset
Get the value which is added to the Y position when reading the joystick Get the value which is added to the Y position when reading the joystick
status. status.
.El .El
.Sh TECHNICAL SPECIFICATIONS .Sh TECHNICAL SPECIFICATIONS

View File

@ -50,7 +50,8 @@ Switch virtual console.
Change the meaning of another key. Change the meaning of another key.
.El .El
.Pp .Pp
The keyboard is seen as a number of keys numbered from 1 to n. This The keyboard is seen as a number of keys numbered from 1 to n.
This
number is often referred to as the "scancode" for a given key. number is often referred to as the "scancode" for a given key.
The number The number
of the key is transmitted as an 8 bit char with bit 7 as 0 when a key is of the key is transmitted as an 8 bit char with bit 7 as 0 when a key is
@ -92,17 +93,21 @@ represented by the map array, as shown below:
.Ed .Ed
.Pp .Pp
This is the default mapping for the key labelled 'A' which normally has This is the default mapping for the key labelled 'A' which normally has
scancode 0x1E. The eight states are as shown, giving the 'A' key its scancode 0x1E.
The eight states are as shown, giving the 'A' key its
normal behavior. normal behavior.
The spcl field is used to give the key "special" treatment, and is The spcl field is used to give the key "special" treatment, and is
interpreted as follows. interpreted as follows.
Each bit corresponds to one of the states above. Each bit corresponds to one of the states above.
If the bit is 0 the If the bit is 0 the
key emits the number defined in the corresponding map[] entry. key emits the number defined in the corresponding map[] entry.
If the bit is 1 the key is "special". This means it does not emit If the bit is 1 the key is "special".
anything; instead it changes the "state". That means it is a shift, This means it does not emit
anything; instead it changes the "state".
That means it is a shift,
control, alt, lock, switch-screen, function-key or no-op key. control, alt, lock, switch-screen, function-key or no-op key.
The bitmap is backwards ie. 7 for base, 6 for shift etc. The bitmap is backwards i.e.,
7 for base, 6 for shift etc.
.Pp .Pp
The flgs field defines if the key should react on caps-lock (1), The flgs field defines if the key should react on caps-lock (1),
num-lock (2), both (3) or ignore both (0). num-lock (2), both (3) or ignore both (0).
@ -113,7 +118,7 @@ utility is used to load such a description into/outof
the kernel at runtime. the kernel at runtime.
This makes it possible to change the key This makes it possible to change the key
assignments at runtime, or more important to get (GIO_KEYMAP ioctl) assignments at runtime, or more important to get (GIO_KEYMAP ioctl)
the exact key meanings from the kernel (fx. used by the X server). the exact key meanings from the kernel (e.g.\& used by the X server).
.Pp .Pp
The function keys can be programmed using the SETFKEY ioctl call. The function keys can be programmed using the SETFKEY ioctl call.
.Pp .Pp

View File

@ -153,7 +153,7 @@ The packet format has a two-byte header, comprising the fixed values 0x08,
The start of a packet is indicated by simply signalling the first byte The start of a packet is indicated by simply signalling the first byte
of the header. of the header.
The end of the packet is indicated by inverting The end of the packet is indicated by inverting
the data lines (ie. writing the ones-complement of the previous nibble the data lines (i.e., writing the ones-complement of the previous nibble
to be transmitted) without changing the state of the handshake. to be transmitted) without changing the state of the handshake.
.Pp .Pp
Note that the end-of-packet marker assumes that the handshake signal and Note that the end-of-packet marker assumes that the handshake signal and

View File

@ -273,7 +273,8 @@ This software was contributed to the
.Fx .Fx
Project by Network Associates Labs, Project by Network Associates Labs,
the Security Research Division of Network Associates the Security Research Division of Network Associates
Inc. under DARPA/SPAWAR contract N66001-01-C-8035 Inc.
under DARPA/SPAWAR contract N66001-01-C-8035
.Pq Dq CBOSS , .Pq Dq CBOSS ,
as part of the DARPA CHATS research program. as part of the DARPA CHATS research program.
.Sh BUGS .Sh BUGS

View File

@ -232,6 +232,7 @@ This software was contributed to the
.Fx .Fx
Project by Network Associates Labs, Project by Network Associates Labs,
the Security Research Division of Network Associates the Security Research Division of Network Associates
Inc. under DARPA/SPAWAR contract N66001-01-C-8035 Inc.
under DARPA/SPAWAR contract N66001-01-C-8035
.Pq Dq CBOSS , .Pq Dq CBOSS ,
as part of the DARPA CHATS research program. as part of the DARPA CHATS research program.

View File

@ -105,6 +105,6 @@ Project.
This software was contributed to the This software was contributed to the
.Fx .Fx
Project by NAI Labs, the Security Research Division of Network Associates Project by NAI Labs, the Security Research Division of Network Associates
Inc. under DARPA/SPAWAR contract N66001-01-C-8035 Inc.\& under DARPA/SPAWAR contract N66001-01-C-8035
.Pq Dq CBOSS , .Pq Dq CBOSS ,
as part of the DARPA CHATS research program. as part of the DARPA CHATS research program.

View File

@ -114,7 +114,8 @@ This software was contributed to the
.Fx .Fx
Project by Network Associates Labs, Project by Network Associates Labs,
the Security Research Division of Network Associates the Security Research Division of Network Associates
Inc. under DARPA/SPAWAR contract N66001-01-C-8035 Inc.
under DARPA/SPAWAR contract N66001-01-C-8035
.Pq Dq CBOSS , .Pq Dq CBOSS ,
as part of the DARPA CHATS research program. as part of the DARPA CHATS research program.
.Sh BUGS .Sh BUGS

View File

@ -216,6 +216,7 @@ This software was contributed to the
.Fx .Fx
Project by Network Associates Labs, Project by Network Associates Labs,
the Security Research Division of Network Associates the Security Research Division of Network Associates
Inc. under DARPA/SPAWAR contract N66001-01-C-8035 Inc.
under DARPA/SPAWAR contract N66001-01-C-8035
.Pq Dq CBOSS , .Pq Dq CBOSS ,
as part of the DARPA CHATS research program. as part of the DARPA CHATS research program.

View File

@ -112,7 +112,7 @@ clearance level is lower than the clearance level of the object it is
attempting to observe. attempting to observe.
.It .It
Subjects may not read, write, or otherwise observe objects without proper Subjects may not read, write, or otherwise observe objects without proper
clearance (e.g. subjects may not observe objects whose classification label clearance (e.g.\& subjects may not observe objects whose classification label
dominates its own clearance label) dominates its own clearance label)
.It .It
Subjects may not write to objects with a lower classification level than Subjects may not write to objects with a lower classification level than
@ -233,7 +233,7 @@ This software was contributed to the
.Fx .Fx
Project by Network Associates Laboratories, Project by Network Associates Laboratories,
the Security Research Division of Network Associates the Security Research Division of Network Associates
Inc. under DARPA/SPAWAR contract N66001-01-C-8035 Inc.\& under DARPA/SPAWAR contract N66001-01-C-8035
.Pq Dq CBOSS , .Pq Dq CBOSS ,
as part of the DARPA CHATS research program. as part of the DARPA CHATS research program.
.Sh BUGS .Sh BUGS

View File

@ -93,7 +93,8 @@ This software was contributed to the
.Fx .Fx
Project by Network Associates Labs, Project by Network Associates Labs,
the Security Research Division of Network Associates the Security Research Division of Network Associates
Inc. under DARPA/SPAWAR contract N66001-01-C-8035 Inc.
under DARPA/SPAWAR contract N66001-01-C-8035
.Pq Dq CBOSS , .Pq Dq CBOSS ,
as part of the DARPA CHATS research program. as part of the DARPA CHATS research program.
.Sh BUGS .Sh BUGS

View File

@ -114,7 +114,8 @@ This software was contributed to the
.Fx .Fx
Project by Network Associates Labs, Project by Network Associates Labs,
the Security Research Division of Network Associates the Security Research Division of Network Associates
Inc. under DARPA/SPAWAR contract N66001-01-C-8035 Inc.
under DARPA/SPAWAR contract N66001-01-C-8035
.Pq Dq CBOSS , .Pq Dq CBOSS ,
as part of the DARPA CHATS research program. as part of the DARPA CHATS research program.
.Sh BUGS .Sh BUGS

View File

@ -227,6 +227,6 @@ first appeared in
This software was contributed to the This software was contributed to the
.Fx .Fx
Project by NAI Labs, the Security Research Division of Network Associates Project by NAI Labs, the Security Research Division of Network Associates
Inc. under DARPA/SPAWAR contract N66001-01-C-8035 Inc.\& under DARPA/SPAWAR contract N66001-01-C-8035
.Pq Dq CBOSS , .Pq Dq CBOSS ,
as part of the DARPA CHATS research program. as part of the DARPA CHATS research program.

View File

@ -107,7 +107,8 @@ This software was contributed to the
.Fx .Fx
Project by Network Associates Labs, Project by Network Associates Labs,
the Security Research Division of Network Associates the Security Research Division of Network Associates
Inc. under DARPA/SPAWAR contract N66001-01-C-8035 Inc.
under DARPA/SPAWAR contract N66001-01-C-8035
.Pq Dq CBOSS , .Pq Dq CBOSS ,
as part of the DARPA CHATS research program. as part of the DARPA CHATS research program.
.Sh BUGS .Sh BUGS

View File

@ -96,7 +96,8 @@ This software was contributed to the
.Fx .Fx
Project by Network Associates Labs, Project by Network Associates Labs,
the Security Research Division of Network Associates the Security Research Division of Network Associates
Inc. under DARPA/SPAWAR contract N66001-01-C-8035 Inc.
under DARPA/SPAWAR contract N66001-01-C-8035
.Pq Dq CBOSS , .Pq Dq CBOSS ,
as part of the DARPA CHATS research program. as part of the DARPA CHATS research program.
.Sh BUGS .Sh BUGS

View File

@ -97,7 +97,8 @@ This software was contributed to the
.Fx .Fx
Project by Network Associates Labs, Project by Network Associates Labs,
the Security Research Division of Network Associates the Security Research Division of Network Associates
Inc. under DARPA/SPAWAR contract N66001-01-C-8035 Inc.
under DARPA/SPAWAR contract N66001-01-C-8035
.Pq Dq CBOSS , .Pq Dq CBOSS ,
as part of the DARPA CHATS research program. as part of the DARPA CHATS research program.
.Sh BUGS .Sh BUGS

View File

@ -32,7 +32,7 @@
.Nd OSF/1 ABI support .Nd OSF/1 ABI support
.Sh SYNOPSIS .Sh SYNOPSIS
To link OSF/1 ABI support into the kernel: To link OSF/1 ABI support into the kernel:
.Cd options COMPAT_OSF1 .Cd "options COMPAT_OSF1"
.Pp .Pp
To load the OSF/1 ABI support kernel module: To load the OSF/1 ABI support kernel module:
.Dl kldload osf1 .Dl kldload osf1

View File

@ -81,7 +81,8 @@ TV-Out
.Pp .Pp
Some models also support video switching via the generic Some models also support video switching via the generic
.Xr acpi_video 4 .Xr acpi_video 4
driver. Most models don't, however. driver.
Most models don't, however.
.El .El
.Pp .Pp
Defaults for these variables can be set in Defaults for these variables can be set in

View File

@ -55,7 +55,9 @@ The
driver first appeared in driver first appeared in
.Fx 4.5 . .Fx 4.5 .
.Sh AUTHORS .Sh AUTHORS
This driver was written by Matthew C. Forman. .An -nosplit
This driver was written by
.An "Matthew C. Forman" .
Based heavily on the Based heavily on the
.Nm alpm .Nm alpm
driver by driver by

View File

@ -40,14 +40,17 @@ comprising of system wakeup time and elapsed time during suspended mode.
.It .It
.Nm .Nm
slows CPU clock when there are no system activities (runnable processes, slows CPU clock when there are no system activities (runnable processes,
interrupts, etc.). This function is available only on systems whose APM interrupts, etc.).
This function is available only on systems whose APM
supports CPU idling. supports CPU idling.
.It .It
.Nm .Nm
exports an application interface as a character device. Applications exports an application interface as a character device.
Applications
can control APM, or retrieve APM status information via this interface. can control APM, or retrieve APM status information via this interface.
.Nm .Nm
exports the following interfaces. These symbols are defined in exports the following interfaces.
These symbols are defined in
.In machine/apm_bios.h . .In machine/apm_bios.h .
.Bl -tag -width 4n -offset indent .Bl -tag -width 4n -offset indent
.It Sy APMIO_SUSPEND .It Sy APMIO_SUSPEND
@ -67,11 +70,13 @@ Some APM implementations execute the HLT
(Halt CPU until an interrupt occurs) (Halt CPU until an interrupt occurs)
instruction in the instruction in the
.Dq Em Idle CPU .Dq Em Idle CPU
call, while others do not. Thus enabling this may result in call, while others do not.
Thus enabling this may result in
redundant HLT executions because redundant HLT executions because
.Dq Em Idle CPU .Dq Em Idle CPU
is called from the kernel context switch routine that inherently executes is called from the kernel context switch routine that inherently executes
HLT. This may reduce peak system performance. HLT.
This may reduce peak system performance.
.Pp .Pp
Also the system hangs up if HLT instruction is disabled in the kernel Also the system hangs up if HLT instruction is disabled in the kernel
context switch routine, and if the APM implementation of the machine context switch routine, and if the APM implementation of the machine
@ -89,7 +94,8 @@ The current version of
does not call does not call
.Dq Em Idle CPU .Dq Em Idle CPU
from the kernel context switch routine if clock slowdown is not supported, from the kernel context switch routine if clock slowdown is not supported,
and it executes HLT instruction by default. Therefore, there is and it executes HLT instruction by default.
Therefore, there is
no need to use these two operations in most cases. no need to use these two operations in most cases.
.El .El
.Pp .Pp
@ -112,10 +118,14 @@ polls APM events and handles the following events.
.El .El
.El .El
.Sh BUGS .Sh BUGS
WARNING! Many, if not most, of the implementations of APM-bios in laptops WARNING!
today are buggy. You may be putting your LCD-display and batteries at Many, if not most, of the implementations of APM-bios in laptops
a risk by using this interface. (The reason this isn't a problem for today are buggy.
MS-windows is that they use the real-mode interface.) If you see any You may be putting your LCD-display and batteries at
a risk by using this interface.
(The reason this isn't a problem for
MS-windows is that they use the real-mode interface.)
If you see any
weird behavior from your system with this code in use, unplug the weird behavior from your system with this code in use, unplug the
power and batteries ASAP, if not immediately, and disable this code. power and batteries ASAP, if not immediately, and disable this code.
.Pp .Pp
@ -129,7 +139,8 @@ may cause serious trouble when resuming the system.
BIOS setup programs should be called during bootstrap, or from DOS. BIOS setup programs should be called during bootstrap, or from DOS.
.Pp .Pp
Some APM implementations cannot handle events such as pushing the Some APM implementations cannot handle events such as pushing the
power button or closing the cover. On such implementations, the system power button or closing the cover.
On such implementations, the system
.Ar must .Ar must
be suspended be suspended
.Ar only .Ar only

View File

@ -61,9 +61,11 @@ Alternately, the driver can be compiled to support
(see below). (see below).
.Sh NUMBERING .Sh NUMBERING
Only one line for each card is needed in the kernel configuration file. Only one line for each card is needed in the kernel configuration file.
The first card's ports will be installed from ar0. The numbering of the The first card's ports will be installed from ar0.
next card will continue where the first stopped, eg. if the first card The numbering of the
is a two port card it will use ar0 and ar1. The next card will then next card will continue where the first stopped, e.g.\& if the first card
is a two port card it will use ar0 and ar1.
The next card will then
start at ar2. start at ar2.
.Pp .Pp
The card only supports IRQ 3, 5, 7, 10, 11, 12 and 15. The card only supports IRQ 3, 5, 7, 10, 11, 12 and 15.

View File

@ -47,7 +47,8 @@ driver provides support for ISA ethernet adapters based on the
.Tn Crystal Semiconductor CS8900 .Tn Crystal Semiconductor CS8900
and and
.Tn CS8920 .Tn CS8920
NICs. These devices are used on the NICs.
These devices are used on the
.Tn IBM EtherJet ISA .Tn IBM EtherJet ISA
adapters and in many embedded applications where the high integration, small adapters and in many embedded applications where the high integration, small
size and low cost of the CS89x0 family compensate for their drawbacks. size and low cost of the CS89x0 family compensate for their drawbacks.
@ -62,7 +63,8 @@ Other parameters specified in
.Pa /boot/device.hints .Pa /boot/device.hints
will be used if present; will be used if present;
the card may be soft-configured so these may be any valid the card may be soft-configured so these may be any valid
value. Adapters based on the CS8920 normally offer PnP configuration and the driver value.
Adapters based on the CS8920 normally offer PnP configuration and the driver
will detect the will detect the
.Tn IBM EtherJet .Tn IBM EtherJet
and the and the
@ -70,25 +72,29 @@ and the
adapters automatically. adapters automatically.
.Pp .Pp
Note that the CS8900 is limited to 4 IRQ values; these are normally implemented Note that the CS8900 is limited to 4 IRQ values; these are normally implemented
as 5, 10, 11 and 12. The CS8920 has no such limitation. as 5, 10, 11 and 12.
The CS8920 has no such limitation.
.Pp .Pp
Memory-mapped and DMA operation are not supported at this time. Memory-mapped and DMA operation are not supported at this time.
.Sh DIAGNOSTICS .Sh DIAGNOSTICS
.Bl -diag .Bl -diag
.It "cs%d: full/half duplex negotiation timeout" .It "cs%d: full/half duplex negotiation timeout"
The attempt to negotiate duplex settings with the hub timed out. This may The attempt to negotiate duplex settings with the hub timed out.
This may
indicate a cabling problem or a faulty or incompatible hub. indicate a cabling problem or a faulty or incompatible hub.
.It "cs%d: failed to enable <media>" .It "cs%d: failed to enable <media>"
The CS89x0 failed to select the nominated media, either because it is not The CS89x0 failed to select the nominated media, either because it is not
present or not operating correctly. present or not operating correctly.
.It "cs%d: No EEPROM, assuming defaults" .It "cs%d: No EEPROM, assuming defaults"
The CS89x0 does not have an EEPROM, or the EEPROM is hopelessly damaged. Operation The CS89x0 does not have an EEPROM, or the EEPROM is hopelessly damaged.
Operation
will only be successful if the configuration entry lists suitable values for will only be successful if the configuration entry lists suitable values for
the adapter. the adapter.
.It "cs%d: Invalid irq" .It "cs%d: Invalid irq"
The IRQ specified in the configuration entry is not valid for the adapter. The IRQ specified in the configuration entry is not valid for the adapter.
.It "cs%d: Could not allocate memory for NIC" .It "cs%d: Could not allocate memory for NIC"
There is a critical memory shortage. The adapter will not function. There is a critical memory shortage.
The adapter will not function.
.It "cs%d: Adapter has no media" .It "cs%d: Adapter has no media"
The adapter is not configured for a specific media type. The adapter is not configured for a specific media type.
The media type will have The media type will have
@ -98,11 +104,13 @@ The PnP probe code found a recognised adapter, but the adapter is disabled.
.It "failed to read pnp parms" .It "failed to read pnp parms"
A PnP adapter was found, but configuration parameters for it could not be read. A PnP adapter was found, but configuration parameters for it could not be read.
.It "failed to pnp card parameters" .It "failed to pnp card parameters"
The parameters obtained via PnP were not accepted by the driver. The adapter The parameters obtained via PnP were not accepted by the driver.
The adapter
may not function. may not function.
.El .El
.Sh CAVEATS .Sh CAVEATS
The CS89x0 family of adapters have a very small RAM buffer (4K). This may The CS89x0 family of adapters have a very small RAM buffer (4K).
This may
cause problems with extremely high network loads or bursty network traffic. cause problems with extremely high network loads or bursty network traffic.
In particular, NFS operations should be limited to 1k read/write transactions In particular, NFS operations should be limited to 1k read/write transactions
in order to avoid overruns. in order to avoid overruns.

View File

@ -123,9 +123,12 @@ host adapters.
.Xr scsi 4 .Xr scsi 4
.Sh NOTES .Sh NOTES
Historically, the driver for the Cronyx Tau WAN adapters was Historically, the driver for the Cronyx Tau WAN adapters was
ct. This device name was changed to ctau to avoid conflicts ct.
with this pc98 ct driver. The network device name for ctau This device name was changed to ctau to avoid conflicts
is 'ct'. Please see with this pc98 ct driver.
The network device name for ctau
is 'ct'.
Please see
.Xr ctau 4 .Xr ctau 4
for the details for that device. for the details for that device.
.Sh HISTORY .Sh HISTORY

View File

@ -41,8 +41,10 @@ and Pro/10+ Ethernet cards based on the Intel i82595 chip.
The Olicom OC2220 is also supported. The Olicom OC2220 is also supported.
.Pp .Pp
The card will be searched for in the The card will be searched for in the
I/O address range 0x200 - 0x3a0. If the IRQ will be I/O address range 0x200 - 0x3a0.
read from the EEPROM on the card. For correct operation on newer If the IRQ will be
read from the EEPROM on the card.
For correct operation on newer
cards the Plug-N-Play support should be disabled. cards the Plug-N-Play support should be disabled.
.Sh DIAGNOSTICS .Sh DIAGNOSTICS
.Bl -diag .Bl -diag

View File

@ -326,7 +326,8 @@ This manual page was written by
This document and the associated software may be used, modified, This document and the associated software may be used, modified,
copied, distributed, and sold, in both source and binary form provided copied, distributed, and sold, in both source and binary form provided
that the above copyright, these terms and the following disclaimer are that the above copyright, these terms and the following disclaimer are
retained. The name of the author and/or the contributor may not be retained.
The name of the author and/or the contributor may not be
used to endorse or promote products derived from this document and the used to endorse or promote products derived from this document and the
associated software without specific prior written permission. associated software without specific prior written permission.
.Pp .Pp
@ -335,7 +336,8 @@ AND THE CONTRIBUTOR
.Dq AS IS .Dq AS IS
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR THE PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE AUTHOR OR THE
CONTRIBUTOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONTRIBUTOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR

View File

@ -44,7 +44,8 @@ Any process that holds a file descriptor on
open will get its open will get its
.Em IOPL .Em IOPL
bits in the flag register set, thus allowing it to perform direct bits in the flag register set, thus allowing it to perform direct
I/O operations. This can be useful in order to write userland I/O operations.
This can be useful in order to write userland
programs that handle some hardware directly. programs that handle some hardware directly.
Note that even read-only access will grant the full I/O privileges. Note that even read-only access will grant the full I/O privileges.
.Pp .Pp

View File

@ -45,7 +45,8 @@ is usually 0x23c.
Some cards may also be set to use the secondary port Some cards may also be set to use the secondary port
address at 0x238. address at 0x238.
The interface cards require a single IRQ, which may be The interface cards require a single IRQ, which may be
2, 3, 4 or 5. Some cards may offer additional IRQs. 2, 3, 4 or 5.
Some cards may offer additional IRQs.
The port number and the IRQ number are configured by jumpers on the cards The port number and the IRQ number are configured by jumpers on the cards
or by software provided with the card. or by software provided with the card.
.Pp .Pp
@ -55,7 +56,8 @@ some interface cards.
It may be 15, 30, 60 or 120Hz. It may be 15, 30, 60 or 120Hz.
.Pp .Pp
The difference between the two types of the mice is not in mouse devices The difference between the two types of the mice is not in mouse devices
(in fact they are exactly the same). But in the circuit on the interface (in fact they are exactly the same).
But in the circuit on the interface
cards. cards.
This means that the device from a bus mouse package can be This means that the device from a bus mouse package can be
connected to the interface card from an InPort mouse package, or vice connected to the interface card from an InPort mouse package, or vice

View File

@ -49,33 +49,41 @@ network drivers to be used with
The The
.Nm .Nm
driver is provided in source code form and must be combined with driver is provided in source code form and must be combined with
the Windows(r) driver supplied with your network adapter. The the Windows(r) driver supplied with your network adapter.
The
.Nm .Nm
driver uses the driver uses the
.Xr ndisapi 9 .Xr ndisapi 9
kernel subsystem to relocate and link the Windows(r) binary so kernel subsystem to relocate and link the Windows(r) binary so
that it can be used in conjunction with native code. The that it can be used in conjunction with native code.
The
.Xr ndisapi 9 .Xr ndisapi 9
subsystem provides an interface between the NDIS API and the subsystem provides an interface between the NDIS API and the
.Fx .Fx
networking infrastructure. The Windows(r) driver is essentially networking infrastructure.
fooled into thinking it's running on Windows(r). Note that this The Windows(r) driver is essentially
fooled into thinking it's running on Windows(r).
Note that this
means the means the
.Nm .Nm
driver is only useful on x86 machines. driver is only useful on x86 machines.
.Pp .Pp
To build a functional driver, the user must have a copy of the To build a functional driver, the user must have a copy of the
driver distribution media for his or her card. From this distribution, driver distribution media for his or her card.
From this distribution,
the user must extract two files: the .SYS file containing the driver the user must extract two files: the .SYS file containing the driver
binary code, and its companion .INF file, which contains the binary code, and its companion .INF file, which contains the
definitions for driver-specific registry keys and other installation definitions for driver-specific registry keys and other installation
data such as device identifiers. These two files can be converted data such as device identifiers.
These two files can be converted
into a into a
.Pa ndis_driver_data.h .Pa ndis_driver_data.h
file using the file using the
.Xr ndiscvt 8 .Xr ndiscvt 8
utility. This file contains a binary image of the driver plus utility.
registry key data. When the This file contains a binary image of the driver plus
registry key data.
When the
.Nm .Nm
driver loads, it will create driver loads, it will create
.Xr sysctl 9 .Xr sysctl 9
@ -84,13 +92,17 @@ nodes for each registry key extracted from the .INF file.
The The
.Nm .Nm
driver is designed to support mainly ethernet and wireless driver is designed to support mainly ethernet and wireless
network devices with PCI and PCMCIA bus attachments. (Cardbus network devices with PCI and PCMCIA bus attachments.
devices are also supported as a subset of PCI.) It there can (Cardbus
support many different media types and speeds. One limitation devices are also supported as a subset of PCI.)
It there can
support many different media types and speeds.
One limitation
however, is that there is no consistent way to learn if an however, is that there is no consistent way to learn if an
ethernet device is operating in full or half duplex mode. ethernet device is operating in full or half duplex mode.
The NDIS API allows for a generic means for determining link The NDIS API allows for a generic means for determining link
state and speed, but not the duplex setting. There may be state and speed, but not the duplex setting.
There may be
driver-specific registry keys to control the media setting driver-specific registry keys to control the media setting
which can be configured via the which can be configured via the
.Xr sysctl 8 .Xr sysctl 8

View File

@ -46,7 +46,8 @@ capabilities of the
.Tn Pentium .Tn Pentium
and and
.Tn "Pentium Pro" .Tn "Pentium Pro"
CPUs. These processors implement two internal counters which can be CPUs.
These processors implement two internal counters which can be
configured to measure a variety of events for either count or duration configured to measure a variety of events for either count or duration
(in CPU cycles), as well as a cycle counter which counts clock cycles. (in CPU cycles), as well as a cycle counter which counts clock cycles.
The The
@ -67,7 +68,8 @@ and
processors. processors.
.Pp .Pp
.Sy NOTA BENE : .Sy NOTA BENE :
The set of available events differs from processor to processor. It The set of available events differs from processor to processor.
It
is the responsibility of the programmer to ensure that the event is the responsibility of the programmer to ensure that the event
numbers used are the correct ones for the CPU type being measured. numbers used are the correct ones for the CPU type being measured.
.Pp .Pp
@ -119,22 +121,27 @@ returns the current configuration of the specified counter.
.It Dv PMIOSTART .It Dv PMIOSTART
.It Dv PMIOSTOP .It Dv PMIOSTOP
.Pq Li int .Pq Li int
starts (stops) the specified counter. Due to hardware deficiencies, starts (stops) the specified counter.
counters must be started and stopped in numerical order. (That is to Due to hardware deficiencies,
counters must be started and stopped in numerical order.
(That is to
say, counter 0 can never be stopped without first stopping counter 1.) say, counter 0 can never be stopped without first stopping counter 1.)
The driver will The driver will
.Em not .Em not
enforce this restriction (since it may not be present in future CPUs). enforce this restriction (since it may not be present in future CPUs).
.It Dv PMIORESET .It Dv PMIORESET
.Pq Li int .Pq Li int
reset the specified counter to zero. The counter should be stopped reset the specified counter to zero.
The counter should be stopped
with with
.Dv PMIOSTOP .Dv PMIOSTOP
before it is reset. All counters are automatically reset by before it is reset.
All counters are automatically reset by
.Dv PMIOSETUP . .Dv PMIOSETUP .
.It Dv PMIOREAD .It Dv PMIOREAD
.Pq Li "struct pmc_data" .Pq Li "struct pmc_data"
get the current value of the counter. The get the current value of the counter.
The
.Li pmc_data .Li pmc_data
structure defines two fields: structure defines two fields:
.Pp .Pp
@ -152,7 +159,8 @@ instruction on
processors to read the counters directly. processors to read the counters directly.
.It Dv PMIOTSTAMP .It Dv PMIOTSTAMP
.Pq Li "struct pmc_tstamp" .Pq Li "struct pmc_tstamp"
read the time stamp counter. The read the time stamp counter.
The
.Li pmc_tstamp .Li pmc_tstamp
structure defines two fields: structure defines two fields:
.Pp .Pp
@ -166,7 +174,8 @@ the current value of the counter as a 64-bit integer
It is important to note that the counter rate, as provided in the It is important to note that the counter rate, as provided in the
.Li pmct_rate .Li pmct_rate
field, is often incorrect because of calibration difficulties and field, is often incorrect because of calibration difficulties and
non-integral clock rates. This field should be considered more of a non-integral clock rates.
This field should be considered more of a
hint or sanity-check than an actual representation of the rate of hint or sanity-check than an actual representation of the rate of
clock ticks. clock ticks.
.El .El

View File

@ -253,7 +253,7 @@ Represents link corruption or non standard nodes in the network.
The received The received
.Tn IEEE .Tn IEEE
802.11 802.11
data packet has a reserved (i.e. not allowed) subtype. data packet has a reserved (i.e., not allowed) subtype.
Represents link corruption or non standard nodes in the network. Represents link corruption or non standard nodes in the network.
.It "ray?: MGT TODS/FROMDS wrong fc1 0x??" .It "ray?: MGT TODS/FROMDS wrong fc1 0x??"
The received The received
@ -272,7 +272,7 @@ Benign, but might represent buggy firmware.
The received The received
.Tn IEEE .Tn IEEE
802.11 802.11
management packet has a reserved (i.e. not allowed) management packet has a reserved (i.e., not allowed)
subtype. subtype.
Represents link corruption or non standard nodes in the network. Represents link corruption or non standard nodes in the network.
.It "ray?: open system authentication request" .It "ray?: open system authentication request"
@ -287,7 +287,7 @@ Self explanatory and for testing
.Tn "Aviator Pro" .Tn "Aviator Pro"
interworking. interworking.
.It "ray?: reserved authentication subtype 0x??" .It "ray?: reserved authentication subtype 0x??"
An authentication request has been received for a reserved (i.e. not allowed) An authentication request has been received for a reserved (i.e., not allowed)
subtype. subtype.
Represents link corruption or non standard nodes in the network. Represents link corruption or non standard nodes in the network.
.It "ray?: CTL TODS/FROMDS wrong fc1 0x??" .It "ray?: CTL TODS/FROMDS wrong fc1 0x??"
@ -307,7 +307,7 @@ Benign, but might represent buggy firmware.
The received The received
.Tn IEEE .Tn IEEE
802.11 802.11
control packet has a reserved (i.e. not allowed) control packet has a reserved (i.e., not allowed)
subtype. subtype.
Represents link corruption or non standard nodes in the network. Represents link corruption or non standard nodes in the network.
.It "ray?: bad ccs index 0x??" .It "ray?: bad ccs index 0x??"

View File

@ -43,7 +43,8 @@ In
The The
.Nm .Nm
driver provides a data interface to the Sony CDU31 and CDU33A CD-ROM driver provides a data interface to the Sony CDU31 and CDU33A CD-ROM
drives. The drive must be hooked to a Sony proprietary interface drives.
The drive must be hooked to a Sony proprietary interface
card or a compatible clone. card or a compatible clone.
.Sh FILES .Sh FILES
.Bl -tag -width /dev/[r]scd0a -compact .Bl -tag -width /dev/[r]scd0a -compact

View File

@ -68,7 +68,8 @@ a zero duration.
.Pp .Pp
The play-string language is modeled on the PLAY statement conventions of The play-string language is modeled on the PLAY statement conventions of
.Tn IBM .Tn IBM
Advanced BASIC 2.0. The Advanced BASIC 2.0.
The
.Li MB , .Li MB ,
.Li MF , .Li MF ,
and and
@ -80,7 +81,8 @@ feature and the slur mark are new.
.Pp .Pp
There are 84 accessible notes numbered 1-84 in 7 octaves, each running from There are 84 accessible notes numbered 1-84 in 7 octaves, each running from
C to B, numbered 0-6; the scale is equal-tempered A440 and octave 3 starts C to B, numbered 0-6; the scale is equal-tempered A440 and octave 3 starts
with middle C. By default, the play function emits half-second notes with the with middle C.
By default, the play function emits half-second notes with the
last 1/16th second being `rest time'. last 1/16th second being `rest time'.
.Pp .Pp
Play strings are interpreted left to right as a series of play command groups; Play strings are interpreted left to right as a series of play command groups;
@ -89,12 +91,15 @@ Play command groups are as follows:
.Bl -tag -width CDEFGABxx .Bl -tag -width CDEFGABxx
.It Li CDEFGAB .It Li CDEFGAB
Letters A through G cause the corresponding note to be played in the Letters A through G cause the corresponding note to be played in the
current octave. A note letter may optionally be followed by an current octave.
A note letter may optionally be followed by an
.Dq Em "accidental sign" , .Dq Em "accidental sign" ,
one of # + or -; the first two of these cause it to be sharped one one of # + or -; the first two of these cause it to be sharped one
half-tone, the last causes it to be flatted one half-tone. It may half-tone, the last causes it to be flatted one half-tone.
It may
also be followed by a time value number and by sustain dots (see also be followed by a time value number and by sustain dots (see
below). Time values are interpreted as for the L command below. below).
Time values are interpreted as for the L command below.
.It Ns Li O Sy n .It Ns Li O Sy n
If If
.Sy n .Sy n
@ -109,8 +114,10 @@ When octave-tracking is on, interpretation of a pair of letter notes
will change octaves if necessary in order to make the smallest will change octaves if necessary in order to make the smallest
possible jump between notes. possible jump between notes.
Thus ``olbc'' will be played as Thus ``olbc'' will be played as
``olb>c'', and ``olcb'' as ``olc<b''. Octave locking is disabled for ``olb>c'', and ``olcb'' as ``olc<b''.
one letter note following >, < and O[0123456]. (The octave-locking Octave locking is disabled for
one letter note following >, < and O[0123456].
(The octave-locking
feature is not supported in feature is not supported in
.Tn IBM .Tn IBM
BASIC.) BASIC.)
@ -125,7 +132,8 @@ Play note
being 1 to 84 or 0 for a rest of current time value. being 1 to 84 or 0 for a rest of current time value.
May be followed by sustain dots. May be followed by sustain dots.
.It Ns Li L Sy n .It Ns Li L Sy n
Sets the current time value for notes. The default is Sets the current time value for notes.
The default is
.Li L4 , .Li L4 ,
quarter or crotchet notes. quarter or crotchet notes.
The lowest possible value is 1; values up The lowest possible value is 1; values up
@ -142,10 +150,12 @@ Pause (rest), with
interpreted as for interpreted as for
.Li L Sy n . .Li L Sy n .
May be followed by May be followed by
sustain dots. May also be written sustain dots.
May also be written
.Li ~ . .Li ~ .
.It Ns Li T Sy n .It Ns Li T Sy n
Sets the number of quarter notes per minute; default is 120. Musical Sets the number of quarter notes per minute; default is 120.
Musical
names for common tempi are: names for common tempi are:
.Bd -literal -offset indent .Bd -literal -offset indent
Tempo Beats Per Minute Tempo Beats Per Minute
@ -192,7 +202,8 @@ dotted twice, it is held 9/4, and three times would give 27/8.
.Pp .Pp
A note and its sustain dots may also be followed by a slur mark (underscore). A note and its sustain dots may also be followed by a slur mark (underscore).
This causes the normal micro-rest after the note to be filled in, slurring it This causes the normal micro-rest after the note to be filled in, slurring it
to the next one. (The slur feature is not supported in to the next one.
(The slur feature is not supported in
.Tn IBM .Tn IBM
BASIC.) BASIC.)
.Pp .Pp
@ -206,9 +217,11 @@ There is no volume control.
.Pp .Pp
The action of two or more sustain dots does not reflect standard musical The action of two or more sustain dots does not reflect standard musical
notation, in which each dot adds half the value of the previous dot notation, in which each dot adds half the value of the previous dot
modifier, not half the value of the note as modified. Thus, a note dotted modifier, not half the value of the note as modified.
Thus, a note dotted
once is held for 3/2 of its undotted value; dotted twice, it is held 7/4, once is held for 3/2 of its undotted value; dotted twice, it is held 7/4,
and three times would give 15/8. The multiply-by-3/2 interpretation, and three times would give 15/8.
The multiply-by-3/2 interpretation,
however, is specified in the however, is specified in the
.Tn IBM .Tn IBM
BASIC manual and has been retained for BASIC manual and has been retained for

View File

@ -55,7 +55,7 @@ Hence, opening a stream device produces a result similar to what would be
obtained by calling obtained by calling
.Xr socket 2 . .Xr socket 2 .
.Pp .Pp
Applications should never use this interface directly: STREAMS Applications should never use this interface directly: STREAMS
emulation is only provided as a service to support ABI requirements in emulation is only provided as a service to support ABI requirements in
the SVR4 environment which the SVR4 environment which
.Xr svr4 4 .Xr svr4 4

View File

@ -74,7 +74,8 @@ Use the UTP port.
.Bl -diag .Bl -diag
.It "vx%d: not configured; kernel is built for only %d devices." .It "vx%d: not configured; kernel is built for only %d devices."
There are not enough devices in the kernel configuration file for the number There are not enough devices in the kernel configuration file for the number
of adapters present in the system. Add devices to the configuration file, of adapters present in the system.
Add devices to the configuration file,
rebuild the kernel, and reboot. rebuild the kernel, and reboot.
.El .El
.Pp .Pp
@ -82,7 +83,8 @@ All other diagnostics indicate either a hardware problem or a bug in the
driver. driver.
.Sh CAVEATS .Sh CAVEATS
Some early-revision 3c590 cards are defective and suffer from many receive Some early-revision 3c590 cards are defective and suffer from many receive
overruns, which cause lost packets. The author has attempted to implement overruns, which cause lost packets.
The author has attempted to implement
a test for it based on the information supplied by 3Com, but the test resulted a test for it based on the information supplied by 3Com, but the test resulted
mostly in spurious warnings. mostly in spurious warnings.
.Pp .Pp

View File

@ -41,28 +41,38 @@
The The
.Nm .Nm
driver controls a radio lan card system made originally by driver controls a radio lan card system made originally by
NCR, then ATT, now Lucent. The system is spread-spectrum radio NCR, then ATT, now Lucent.
at around 915 MHz (or 2.4 GHz). With the supplied omni-directional antennae, The system is spread-spectrum radio
at around 915 MHz (or 2.4 GHz).
With the supplied omni-directional antennae,
about 400 feet (indoors, more outdoors) can be covered in circumference. about 400 feet (indoors, more outdoors) can be covered in circumference.
This card can talk to the companion (wlp0) pccard. Speeds vary This card can talk to the companion (wlp0) pccard.
Speeds vary
from 1 megabit to theoretically 2 megabits (roughly T1 in speed). from 1 megabit to theoretically 2 megabits (roughly T1 in speed).
.Pp .Pp
The card has three fundamental hardware The card has three fundamental hardware
units, a so-called PSA or programmable storage area, a radio modem, units, a so-called PSA or programmable storage area, a radio modem,
and a ethernet lan controller. The latter component is the and a ethernet lan controller.
The latter component is the
ancient (and not very honorable) Intel 82586 ethernet chip. ancient (and not very honorable) Intel 82586 ethernet chip.
Fundamentally it appears to the operating system as an ethernet system, Fundamentally it appears to the operating system as an ethernet system,
and speaks IEEE MAC addresses. The radio modem simply translates and speaks IEEE MAC addresses.
The radio modem simply translates
ethernet packets to/from radio packets, that are either at 2.4 GHz ethernet packets to/from radio packets, that are either at 2.4 GHz
or 915 MHz depending on the radio modem. It supports a collision or 915 MHz depending on the radio modem.
avoidance scheme. The lan controller It supports a collision
avoidance scheme.
The lan controller
supports promiscuous mode, broadcast, and multicasting supports promiscuous mode, broadcast, and multicasting
(although there is a glitch (although there is a glitch
in the latter). "It thinks it is ethernet". in the latter).
"It thinks it is ethernet".
.Pp .Pp
How it is used How it is used
depends on the kind of antennae deployed with it. Point to point depends on the kind of antennae deployed with it.
applications are possible as are ethernet-like lan use. The vendor Point to point
applications are possible as are ethernet-like lan use.
The vendor
ships an omni-directional antennae that works in the ships an omni-directional antennae that works in the
vicinity of 400 feet (indoors). vicinity of 400 feet (indoors).
Point to point antennae can be purchased that will go miles. Point to point antennae can be purchased that will go miles.
@ -72,7 +82,8 @@ Typically minimally an IRQ, port, and Network ID must be supplied.
Michael Smith's Michael Smith's
.Xr wlconfig 8 .Xr wlconfig 8
utility can now be used to do this work from utility can now be used to do this work from
the UNIX side. The card is "not" plug and play. the UNIX side.
The card is "not" plug and play.
The network id controls whether one set of cards can hear another. The network id controls whether one set of cards can hear another.
If different, cards will read physical packets, but they will be discarded If different, cards will read physical packets, but they will be discarded
by the radio modem. by the radio modem.
@ -85,13 +96,17 @@ variables are as follows:
.Bl -diag .Bl -diag
.It "machdep.wl_xmit_delay <useconds>" .It "machdep.wl_xmit_delay <useconds>"
This variable will cause the driver to insert a delay on transmit. This variable will cause the driver to insert a delay on transmit.
250 is the default. The delay should probably be a bit longer 250 is the default.
on faster cpus and less on slower cpus. It exists because the 82586 The delay should probably be a bit longer
on faster cpus and less on slower cpus.
It exists because the 82586
was not designed to work with Pentium-speed cpu systems and if overdriven was not designed to work with Pentium-speed cpu systems and if overdriven
will have copious xmit side errors. will have copious xmit side errors.
.It machdep.wl_ignore_nwid <0 | 1> .It machdep.wl_ignore_nwid <0 | 1>
This switch defaults to 0; i.e., the nwid is not ignored. It can This switch defaults to 0; i.e., the nwid is not ignored.
be set to 1 to cause the nwid to not be used. This may be useful It can
be set to 1 to cause the nwid to not be used.
This may be useful
when the device is in promiscuous mode as one can watch for all when the device is in promiscuous mode as one can watch for all
packets and ignore nwid differences. packets and ignore nwid differences.
.It machdep.wl_xmit_watch <milliseconds> .It machdep.wl_xmit_watch <milliseconds>
@ -99,33 +114,42 @@ This switch is not currently useful.
.It machdep.wl_gather_snr <milliseconds> .It machdep.wl_gather_snr <milliseconds>
This switch is not currently useful. This switch is not currently useful.
.Pp .Pp
There is also a signal strength cache in the driver. It may be interrogated There is also a signal strength cache in the driver.
It may be interrogated
with with
.Xr wlconfig 8 . .Xr wlconfig 8 .
Incoming packets Incoming packets
are checked for certain hardware radio-modem values including signal are checked for certain hardware radio-modem values including signal
strength, silence, and quality, which range fro 0..63, 0..63, and 0..15 strength, silence, and quality, which range fro 0..63, 0..63, and 0..15
respectively. Thus one can read out signal strenth values to see respectively.
how close/far peer nodes are. The signal strength cache is indexed by Thus one can read out signal strenth values to see
how close/far peer nodes are.
The signal strength cache is indexed by
sender MAC address. sender MAC address.
There are two sysctls that change how it filters packets. Both are on There are two sysctls that change how it filters packets.
Both are on
by default. by default.
.It machdep.wl_wlcache_mcastonly <0 | 1> .It machdep.wl_wlcache_mcastonly <0 | 1>
By default this switch is on. By default this switch is on.
It forces the cache to filter out It forces the cache to filter out
unicast packets. Only broadcast or multicast packets are accepted. unicast packets.
Only broadcast or multicast packets are accepted.
.It machdep.wl_wlcache_iponly <0 | 1> .It machdep.wl_wlcache_iponly <0 | 1>
By default this switch is on. It forces the driver to discard non-IP By default this switch is on.
packets and also stores the IP src address. ARP packets are ignored, It forces the driver to discard non-IP
packets and also stores the IP src address.
ARP packets are ignored,
as are any other network protocol barring IPv4 packets. as are any other network protocol barring IPv4 packets.
.El .El
.Sh CAVEATS .Sh CAVEATS
The 82586 has numerous defects. It may experience transmit-side The 82586 has numerous defects.
It may experience transmit-side
errors when modern faster cpus send packets at it faster than it can handle. errors when modern faster cpus send packets at it faster than it can handle.
The driver (and probably the chip) does not support an all multicast mode. The driver (and probably the chip) does not support an all multicast mode.
As a result, it can be used with applications like As a result, it can be used with applications like
.Xr mrouted 8 , .Xr mrouted 8 ,
but it must go into promiscuous mode for that to work. The driver but it must go into promiscuous mode for that to work.
The driver
is slow to change modes from "normal" to promiscuous mode, presumably is slow to change modes from "normal" to promiscuous mode, presumably
due to delays in the configuration code. due to delays in the configuration code.
.Sh SEE ALSO .Sh SEE ALSO
@ -139,9 +163,11 @@ The
driver was written by driver was written by
.An Anders Klemets .An Anders Klemets
(thousands of years ago?) and (thousands of years ago?) and
appears to be based on an even older Intel 82586 driver. The 82586 appears to be based on an even older Intel 82586 driver.
The 82586
controller was one of the first (if not the first?) integrated lan controller was one of the first (if not the first?) integrated lan
controller on the block. That does not mean it was the best either. controller on the block.
That does not mean it was the best either.
Anders ported and or created a driver for the ISA wavelan and PCCARD Anders ported and or created a driver for the ISA wavelan and PCCARD
wavelan system too (wlp). wavelan system too (wlp).
.An Robert T. Morris, Jr. .An Robert T. Morris, Jr.
@ -150,12 +176,16 @@ ported the Mach drivers to BSDI.
ported them to ported them to
.Fx 2.1 . .Fx 2.1 .
.An Michael Smith .An Michael Smith
ported the wl driver only to 2.2.2. Jim and Michael have been ported the wl driver only to 2.2.2.
maintaining them. The current state of the driver is NOT ANYONE'S Jim and Michael have been
FAULT. Thanks to maintaining them.
The current state of the driver is NOT ANYONE'S
FAULT.
Thanks to
.An Bernie Doehner .An Bernie Doehner
and and
.An Robert Buaas .An Robert Buaas
for contributions. for contributions.
.Sh AUTHORS .Sh AUTHORS
Too numerous to mention. See above. Too numerous to mention.
See above.

View File

@ -75,16 +75,19 @@ Packard Bell and many other brands.
The drives are compatible with the major the Compact Disc standards, The drives are compatible with the major the Compact Disc standards,
including CD-DA (Red Book - Digital Audio on pressed media), CD-WO (Orange including CD-DA (Red Book - Digital Audio on pressed media), CD-WO (Orange
Book Part II - Write-Once media), CD-ROM (Yellow Book - Data Storage), and Book Part II - Write-Once media), CD-ROM (Yellow Book - Data Storage), and
the Kodak Photo-CD system. The drives have some support related to the Kodak Photo-CD system.
The drives have some support related to
CD-ROM XA and CD-I (Green Book) audio and data requirements. CD-ROM XA and CD-I (Green Book) audio and data requirements.
.Pp .Pp
These drives connect to the PC ISA bus through a simple (but proprietary) host These drives connect to the PC ISA bus through a simple (but proprietary) host
interface. The host interface has been manufactured as a stand-alone adapter interface.
The host interface has been manufactured as a stand-alone adapter
card, or included on a sound card or other multi-function adapter card. card, or included on a sound card or other multi-function adapter card.
The The
.Nm .Nm
driver supports up to four host interfaces with up to four drives on each driver supports up to four host interfaces with up to four drives on each
interface. CD-DA (digital audio) activity may occur on all drives interface.
CD-DA (digital audio) activity may occur on all drives
simultaneously. simultaneously.
.Pp .Pp
The drive hardware supports a "bus disconnect" system similar to that found The drive hardware supports a "bus disconnect" system similar to that found
@ -102,13 +105,15 @@ driver can be directly linked into the
kernel, or exist kernel, or exist
as a loadable as a loadable
.Fx .Fx
kernel module. The kernel module can be loaded or unloaded at any time kernel module.
The kernel module can be loaded or unloaded at any time
using the \fBkldload\fR(8)/\fBkldunload\fR(8) commands. using the \fBkldload\fR(8)/\fBkldunload\fR(8) commands.
.Pp .Pp
For most configurations, the For most configurations, the
.Nm .Nm
driver should be used as a loadable kernel module and need not be linked into driver should be used as a loadable kernel module and need not be linked into
the kernel. However, if you are attempting to do an install from a the kernel.
However, if you are attempting to do an install from a
CD-ROM/CD-WO disc that is initiated from a non-FreeBSD operating system or CD-ROM/CD-WO disc that is initiated from a non-FreeBSD operating system or
you have a BIOS boot capability for this type of Compact Disc drive, having you have a BIOS boot capability for this type of Compact Disc drive, having
the driver already in the kernel can simplify the installation process. the driver already in the kernel can simplify the installation process.
@ -116,27 +121,31 @@ the driver already in the kernel can simplify the installation process.
if you determine that you need to have the if you determine that you need to have the
.Nm .Nm
driver linked into the kernel, it is necessary to add an entry to the kernel driver linked into the kernel, it is necessary to add an entry to the kernel
configuration file and generate a new kernel. The configuration file and generate a new kernel.
The
.Fx .Fx
kernel source tree comes kernel source tree comes
with the file \fI/usr/src/sys/i386/conf/GENERIC\fR. with the file \fI/usr/src/sys/i386/conf/GENERIC\fR.
You should make a copy of this file and give the copy the name of your system, You should make a copy of this file and give the copy the name of your system,
such as "MYSYSTEM". You can then edit the new file to include devices you such as "MYSYSTEM".
You can then edit the new file to include devices you
want the system to include in the basic kernel and delete the device entries want the system to include in the basic kernel and delete the device entries
for drivers that you don't want included. Eliminating drivers for hardware for drivers that you don't want included.
Eliminating drivers for hardware
that you don't have can reduce the size of the finished kernel. that you don't have can reduce the size of the finished kernel.
.Pp .Pp
To include the To include the
.Nm .Nm
driver to the configuration file, you will need to add this entry: driver to the configuration file, you will need to add this entry:
.Bd -literal -offset indent .Bd -literal -offset indent
device matcd device matcd
.Ed .Ed
.Pp .Pp
and after making any other adjustments, save the file. and after making any other adjustments, save the file.
.Pp .Pp
Then generate a new kernel by using the \fBconfig\fR(8) command and follow Then generate a new kernel by using the \fBconfig\fR(8) command and follow
all of the instructions that are displayed. If the kernel completely all of the instructions that are displayed.
If the kernel completely
builds, use the "make install" command and then reboot the system for that builds, use the "make install" command and then reboot the system for that
new kernel to become operational. new kernel to become operational.
.Sh DRIVER CONFIGURATION .Sh DRIVER CONFIGURATION
@ -145,7 +154,8 @@ Regardless of whether the
driver is linked into the kernel or is used as a loadable kernel module, driver is linked into the kernel or is used as a loadable kernel module,
the number of host interfaces that the driver will expect (or search for) the number of host interfaces that the driver will expect (or search for)
is dictated by the number of entries present in the file is dictated by the number of entries present in the file
\fI/boot/device\.hints\fR. For example, in order to support two host \fI/boot/device\.hints\fR.
For example, in order to support two host
interfaces, you would include entries like: interfaces, you would include entries like:
.Bd -literal -offset indent .Bd -literal -offset indent
hint.matcd.0.at="isa" hint.matcd.0.at="isa"
@ -183,7 +193,8 @@ using this mechanism has the potential to cause problems when your system has
other devices that are located at the I/O ports that the driver will other devices that are located at the I/O ports that the driver will
check for potential check for potential
.Nm .Nm
host interfaces. The automatic search also significantly increases the host interfaces.
The automatic search also significantly increases the
amount of time it takes to boot or to load the kernel module. amount of time it takes to boot or to load the kernel module.
.Pp .Pp
If you are having problems with the If you are having problems with the
@ -220,7 +231,8 @@ Matsushita CR-563-x
Most resellers leave these original markings on the drives since the label Most resellers leave these original markings on the drives since the label
also has the FCC, VDE, CSA and RU certification marks. also has the FCC, VDE, CSA and RU certification marks.
.Pp .Pp
Both of these drive models have motorized trays. There is also a custom Both of these drive models have motorized trays.
There is also a custom
version of these drives that does not have the volume control or headphone version of these drives that does not have the volume control or headphone
jack (seen on some Tandy computers), but this drive also works with jack (seen on some Tandy computers), but this drive also works with
.Nm . .Nm .
@ -238,12 +250,14 @@ as \fBata\fR(4).
.Pp .Pp
The TEAC CD-55 4X Compact Disc drive also uses the same Creative/Panasonic The TEAC CD-55 4X Compact Disc drive also uses the same Creative/Panasonic
electrical interface, but the TEAC drive is not command set compatible with electrical interface, but the TEAC drive is not command set compatible with
the Matsushita CR-56x drives. The TEAC drive cannot be used with the Matsushita CR-56x drives.
The TEAC drive cannot be used with
.Nm . .Nm .
.Pp .Pp
The most common source of host interface adapters for the Panasonic drives The most common source of host interface adapters for the Panasonic drives
was found in products from Creative Labs, including SoundBlaster sound was found in products from Creative Labs, including SoundBlaster sound
cards. There are numerous models of SoundBlaster sound cards, and most cards.
There are numerous models of SoundBlaster sound cards, and most
of the newer cards provide the appropriate interface, sometimes labeled as of the newer cards provide the appropriate interface, sometimes labeled as
the "Creative/Panasonic" interface. the "Creative/Panasonic" interface.
.Pp .Pp
@ -260,7 +274,7 @@ Sound Blaster 16 - cost-reduced (CT1740)
.It Creative .It Creative
OmniCD upgrade kit adapter card - stand-alone CD (CT1810) OmniCD upgrade kit adapter card - stand-alone CD (CT1810)
.It Creative .It Creative
Sound Blaster 16 - 2-layer, cost-reduced (CT2230) Sound Blaster 16 - 2-layer, cost-reduced (CT2230)
.It Creative .It Creative
Sound Blaster 16 (Vibra16) - 2-layer, single-chip (CT2260) Sound Blaster 16 (Vibra16) - 2-layer, single-chip (CT2260)
.It Creative .It Creative
@ -281,16 +295,20 @@ that produce sound cards with an identical Creative/Panasonic drive
interface released many versions of compatible adapters. interface released many versions of compatible adapters.
.Pp .Pp
In addition to Creative Labs adapters, adapters that are compatible with In addition to Creative Labs adapters, adapters that are compatible with
Media Vision, IBM and Lasermate adapters are also supported. However, Media Vision, IBM and Lasermate adapters are also supported.
However,
these adapters use a wide range of I/O port addresses, so the driver these adapters use a wide range of I/O port addresses, so the driver
must be reconfigured to locate these adapters, at least initially. must be reconfigured to locate these adapters, at least initially.
.Pp .Pp
.Sh SUPPORTED OPERATIONS .Sh SUPPORTED OPERATIONS
The The
.Nm .Nm
driver supports block and character access. Partition "a" returns driver supports block and character access.
2048-byte User Data blocks from data CDs. Partition "c" returns the full Partition "a" returns
2352-byte Frames from any type of CD, including audio CDs. (Partition 2048-byte User Data blocks from data CDs.
Partition "c" returns the full
2352-byte Frames from any type of CD, including audio CDs.
(Partition
"c" cannot be "mounted" with cd9660 or other standard file system emulators.) "c" cannot be "mounted" with cd9660 or other standard file system emulators.)
No other partitions are supported. No other partitions are supported.
.Pp .Pp
@ -305,7 +323,8 @@ remain locked until all of the devs on that drive are closed.
accepts numerous accepts numerous
.Fn ioctl .Fn ioctl
commands, including functions related to Compact Disc audio and commands, including functions related to Compact Disc audio and
drive tray control features. The commands are: drive tray control features.
The commands are:
.Pp .Pp
.Bl -tag -width CDIOCREADSUBCHANNELXXX -compact -offset indent .Bl -tag -width CDIOCREADSUBCHANNELXXX -compact -offset indent
.It DIOCGDINFO .It DIOCGDINFO
@ -325,7 +344,8 @@ plays audio starting at a particular time offset.
.It CDIOCPAUSE .It CDIOCPAUSE
pauses a playing disc. pauses a playing disc.
.It CDIOCRESUME .It CDIOCRESUME
resumes playing a previously paused disc. Ignored if the drive is resumes playing a previously paused disc.
Ignored if the drive is
already playing. already playing.
.It CDIOCSTOP .It CDIOCSTOP
stops playing a disc. stops playing a disc.
@ -337,7 +357,8 @@ closes the disc tray.
blocks further attempts to open the drive door until all devices close blocks further attempts to open the drive door until all devices close
or a CDIOCALLOW ioctl is issued. or a CDIOCALLOW ioctl is issued.
.It CDIOCALLOW .It CDIOCALLOW
unlocks the drive door if it was locked. This ioctl is rejected if unlocks the drive door if it was locked.
This ioctl is rejected if
any locking devices are open, so it must be issued via a non-locking any locking devices are open, so it must be issued via a non-locking
device. device.
.It CDIOCGETVOL .It CDIOCGETVOL
@ -346,13 +367,15 @@ returns the current volume settings of the drive.
sets the volume settings of the drive. sets the volume settings of the drive.
.It CDIOCSETSTEREO .It CDIOCSETSTEREO
the left channel audio is sent to the left channel output and the the left channel audio is sent to the left channel output and the
right channel audio is sent to the right channel output. This is the right channel audio is sent to the right channel output.
This is the
default state. default state.
(Note that the drive does not have a documented "Mono" mode, (Note that the drive does not have a documented "Mono" mode,
where L combined with R audio from the disc is sent to both the left and right where L combined with R audio from the disc is sent to both the left and right
output channels.) output channels.)
.It CDIOCSETMUTE .It CDIOCSETMUTE
the audio output is to be turned off. The drive continues to read the audio output is to be turned off.
The drive continues to read
the audio on the disc and that audio is discarded until the audio routing is the audio on the disc and that audio is discarded until the audio routing is
turned back on. turned back on.
.It CDIOCSETLEFT .It CDIOCSETLEFT
@ -366,9 +389,11 @@ The left channel audio signal is discarded.
the audio is to be routed as specified in the provided bit maps. the audio is to be routed as specified in the provided bit maps.
.It CDIOCSETPITCH .It CDIOCSETPITCH
the playback speed of the audio is increased or decreased the playback speed of the audio is increased or decreased
(for Karaoke "off-key" applications). Speed can be adjusted +/-13%. (for Karaoke "off-key" applications).
Speed can be adjusted +/-13%.
.It CDIOCCAPABILITY .It CDIOCCAPABILITY
report the capabilities of the drive and driver. Results are returned report the capabilities of the drive and driver.
Results are returned
as shown in \fI/usr/include/sys/cdio.h\fR. as shown in \fI/usr/include/sys/cdio.h\fR.
.El .El
.Pp .Pp
@ -410,11 +435,13 @@ or DMA although the drives themselves are equipped to allow both to be used.
.Pp .Pp
If the disc tray is opened while one or more partitions are open, further If the disc tray is opened while one or more partitions are open, further
I/O to all partitions on the drive will be rejected until all partitions I/O to all partitions on the drive will be rejected until all partitions
are closed. This prevents a disc change from going undetected by higher are closed.
This prevents a disc change from going undetected by higher
levels of the operating system. levels of the operating system.
.Pp .Pp
There must be a drive on each host interface that is addressed as There must be a drive on each host interface that is addressed as
physical drive 0. (Jumpers on the back of the drive control this setting.) physical drive 0.
(Jumpers on the back of the drive control this setting.)
If there is no physical drive 0, the If there is no physical drive 0, the
.Nm .Nm
driver will be unable to detect that host interface or any of the drives driver will be unable to detect that host interface or any of the drives
@ -427,7 +454,8 @@ drive 0.
.Pp .Pp
Drives on a second host interface are considered logical Drives on a second host interface are considered logical
drive numbers 4 through 7, drives 8 through 11 are on the third interface drive numbers 4 through 7, drives 8 through 11 are on the third interface
and 12 through 15 are on the fourth. The first drive on the second host and 12 through 15 are on the fourth.
The first drive on the second host
interface is always logical drive 4 regardless of how many drives are interface is always logical drive 4 regardless of how many drives are
present on the first host interface. present on the first host interface.
.Pp .Pp
@ -447,7 +475,8 @@ All rights reserved.
The The
.Nm .Nm
driver originally appeared in driver originally appeared in
.Fx 2.0.5 . The .Fx 2.0.5 .
The
.Fx .Fx
5.1.x compatible implementation described here appeared in 5.1.x compatible implementation described here appeared in
.Fx .Fx

View File

@ -148,7 +148,8 @@ or the maximum, whichever is less.
.Pp .Pp
The The
.Dv MEMRANGE_SET .Dv MEMRANGE_SET
ioctl is used to add, alter and remove memory range attributes. A range ioctl is used to add, alter and remove memory range attributes.
A range
with the with the
.Dv MDF_FIXACTIVE .Dv MDF_FIXACTIVE
flag may not be removed; a range with the flag may not be removed; a range with the
@ -166,7 +167,7 @@ to remove a range.
.It Bq Er EOPNOTSUPP .It Bq Er EOPNOTSUPP
Memory range operations are not supported on this architecture. Memory range operations are not supported on this architecture.
.It Bq Er ENXIO .It Bq Er ENXIO
No memory range descriptors are available (eg. firmware has not enabled No memory range descriptors are available (e.g.\& firmware has not enabled
any). any).
.It Bq Er EINVAL .It Bq Er EINVAL
The memory range supplied as an argument is invalid or overlaps another The memory range supplied as an argument is invalid or overlaps another
@ -175,7 +176,7 @@ range in a fashion not supported by this architecture.
An attempt to remove or update a range failed because the range is busy. An attempt to remove or update a range failed because the range is busy.
.It Bq Er ENOSPC .It Bq Er ENOSPC
An attempt to create a new range failed due to a shortage of hardware An attempt to create a new range failed due to a shortage of hardware
resources (eg. descriptor slots). resources (e.g.\& descriptor slots).
.It Bq Er ENOENT .It Bq Er ENOENT
An attempt to remove a range failed because no range matches the descriptor An attempt to remove a range failed because no range matches the descriptor
base/length supplied. base/length supplied.

View File

@ -505,8 +505,8 @@ u0 y0 v0 y1 u1 y2 v1 y3 ...)
rows * columns bytes of y rows * columns bytes of y
rows * column / 4 bytes of even u rows * column / 4 bytes of even u
rows * column / 4 bytes of even v rows * column / 4 bytes of even v
rows * column / 4 bytes of odd u rows * column / 4 bytes of odd u
rows * column / 4 bytes of odd v) rows * column / 4 bytes of odd v)
.El .El
.El .El
.Pp .Pp

View File

@ -74,7 +74,7 @@ The controller firmware has started initialisation.
Normally this process is performed by the controller BIOS, Normally this process is performed by the controller BIOS,
but the driver may need but the driver may need
to do this in cases where the BIOS has failed, or is not compatible to do this in cases where the BIOS has failed, or is not compatible
(e.g. on non-x86 systems). (e.g.\& on non-x86 systems).
.It "mly%d: drive spinup in progress" .It "mly%d: drive spinup in progress"
.Pp .Pp
Drive startup is in progress; this may take several minutes. Drive startup is in progress; this may take several minutes.

View File

@ -98,11 +98,13 @@ The first half of vertical movement count in two's complement;
-128 through 127. -128 through 127.
.It Byte 4 .It Byte 4
The second half of the horizontal movement count in two's complement; The second half of the horizontal movement count in two's complement;
-128 through 127. To obtain the full horizontal movement count, add -128 through 127.
To obtain the full horizontal movement count, add
the byte 2 and 4. the byte 2 and 4.
.It Byte 5 .It Byte 5
The second half of the vertical movement count in two's complement; The second half of the vertical movement count in two's complement;
-128 through 127. To obtain the full vertical movement count, add -128 through 127.
To obtain the full vertical movement count, add
the byte 3 and 5. the byte 3 and 5.
.It Byte 6 .It Byte 6
The bit 7 is always zero. The bit 7 is always zero.
@ -234,7 +236,8 @@ constants.
The The
.Dv rate .Dv rate
field is the status report rate (reports/sec) at which the device will send field is the status report rate (reports/sec) at which the device will send
movement reports to the host computer. -1 if unknown or not applicable. movement reports to the host computer.
-1 if unknown or not applicable.
.Pp .Pp
The The
.Dv resolution .Dv resolution

View File

@ -62,7 +62,8 @@ is usually prepended to
the name of the no-rewind devices. the name of the no-rewind devices.
.Pp .Pp
Tapes can be written with either fixed length records or variable length Tapes can be written with either fixed length records or variable length
records. See records.
See
.Xr sa 4 .Xr sa 4
for more information. for more information.
Two end-of-file markers mark the end of a tape, and Two end-of-file markers mark the end of a tape, and

View File

@ -661,7 +661,8 @@ If the bandwidth of a data flow satisfies some pre-defined filter,
the kernel delivers an upcall on the multicast routing socket the kernel delivers an upcall on the multicast routing socket
to the multicast routing process that has installed that filter. to the multicast routing process that has installed that filter.
.It .It
The bandwidth-upcall filters are installed per (S,G). There can be The bandwidth-upcall filters are installed per (S,G).
There can be
more than one filter per (S,G). more than one filter per (S,G).
.It .It
Instead of supporting all possible comparison operations Instead of supporting all possible comparison operations
@ -903,15 +904,31 @@ after the previous upcall.
.\" .\"
.Pp .Pp
.Sh AUTHORS .Sh AUTHORS
The original multicast code was written by David Waitzman (BBN Labs), .An -nosplit
The original multicast code was written by
.An David Waitzman
(BBN Labs),
and later modified by the following individuals: and later modified by the following individuals:
Steve Deering (Stanford), Mark J. Steiglitz (Stanford), .An Steve Deering
Van Jacobson (LBL), Ajit Thyagarajan (PARC), (Stanford),
Bill Fenner (PARC). .An Mark J. Steiglitz
(Stanford),
.An Van Jacobson
(LBL),
.An Ajit Thyagarajan
(PARC),
.An Bill Fenner
(PARC).
The IPv6 multicast support was implemented by the KAME project The IPv6 multicast support was implemented by the KAME project
(http://www.kame.net), and was based on the IPv4 multicast code. (http://www.kame.net), and was based on the IPv4 multicast code.
The advanced multicast API and the multicast bandwidth The advanced multicast API and the multicast bandwidth
monitoring were implemented by Pavlin Radoslavov (ICSI) monitoring were implemented by
in collaboration with Chris Brown (NextHop). .An Pavlin Radoslavov
(ICSI)
in collaboration with
.An Chris Brown
(NextHop).
.Pp .Pp
This manual page was written by Pavlin Radoslavov (ICSI). This manual page was written by
.An Pavlin Radoslavov
(ICSI).

View File

@ -10,7 +10,8 @@
.Cd "device atm" .Cd "device atm"
.Cd "options NATM" .Cd "options NATM"
.Sh DESCRIPTION .Sh DESCRIPTION
The NATM protocol stack includes support for IP over ATM. Without any The NATM protocol stack includes support for IP over ATM.
Without any
additional signalling stacks or other modules it is possible to build additional signalling stacks or other modules it is possible to build
a CLIP (classical IP over ATM) network based on PVCs. a CLIP (classical IP over ATM) network based on PVCs.
.Pp .Pp
@ -27,12 +28,14 @@ destination and the ATM characteristics of this channel.
The address part of the link layer address (see The address part of the link layer address (see
.Xr link_addr 3 ) .Xr link_addr 3 )
consists of a fixed part (the first 5 bytes) and a part that consists of a fixed part (the first 5 bytes) and a part that
depends on the kind of the PVC (UBR, CBR, VBR, ABR). Multi-byte values depends on the kind of the PVC (UBR, CBR, VBR, ABR).
Multi-byte values
are big-endian encoded: the bytes with the lower numbers contain the are big-endian encoded: the bytes with the lower numbers contain the
higher order bits. higher order bits.
.Bl -tag -width "bytes 12...12" -offset indent .Bl -tag -width "bytes 12...12" -offset indent
.It byte 0 .It byte 0
Is a flag byte. Currently only flag 0x20 is used. Is a flag byte.
Currently only flag 0x20 is used.
When set, all IP frames are LLC/SNAP encapsulated before putting them into When set, all IP frames are LLC/SNAP encapsulated before putting them into
an AAL5 frame. an AAL5 frame.
Setting this flag is recommended and allows interoperability with other Setting this flag is recommended and allows interoperability with other
@ -41,9 +44,11 @@ Note that BPF works only with LLC/SNAP encapsulation.
.It byte 1 .It byte 1
This is the VPI of the channel. This is the VPI of the channel.
.It bytes 2...3 .It bytes 2...3
VCI of the channel. Must not be zero. VCI of the channel.
Must not be zero.
.It byte 4 .It byte 4
Traffic type. One of 0 (UBR), 1 (CBR), 2 (ABR), 3 (VBR). Traffic type.
One of 0 (UBR), 1 (CBR), 2 (ABR), 3 (VBR).
.El .El
.Pp .Pp
The variable part for UBR connections may be either empty or three bytes: The variable part for UBR connections may be either empty or three bytes:
@ -111,7 +116,8 @@ can be reached and
.Ar <lladdr> .Ar <lladdr>
is the link layer address as a string of dot-separated, hexadecimal bytes. is the link layer address as a string of dot-separated, hexadecimal bytes.
.Pp .Pp
NATM also supports the old, original format. This consists of 4 byte NATM also supports the old, original format.
This consists of 4 byte
link layer addresses (and the channels are implicit UBR): link layer addresses (and the channels are implicit UBR):
.Bl -tag -width "bytes 12...12" -offset indent .Bl -tag -width "bytes 12...12" -offset indent
.It byte 0 .It byte 0

View File

@ -53,7 +53,8 @@ and
Packets received on Packets received on
.Dv downstream .Dv downstream
must have 0x03 (indicating unnumbered information) as their first byte; must have 0x03 (indicating unnumbered information) as their first byte;
if not the packet is dropped. This byte is then stripped and the if not the packet is dropped.
This byte is then stripped and the
remainder of the packet sent out on remainder of the packet sent out on
.Dv upstream . .Dv upstream .
.Pp .Pp
@ -67,10 +68,12 @@ This node type supports the following hooks:
.Pp .Pp
.Bl -tag -width foobar .Bl -tag -width foobar
.It Dv downstream .It Dv downstream
Downstream connection. Packets on this side of the node have a 0x03 as Downstream connection.
Packets on this side of the node have a 0x03 as
their first byte. their first byte.
.It Dv upstream .It Dv upstream
Upstream connection. Packets on this side of the node have the Upstream connection.
Packets on this side of the node have the
initial 0x03 byte stripped off. initial 0x03 byte stripped off.
.El .El
.Sh CONTROL MESSAGES .Sh CONTROL MESSAGES

View File

@ -54,7 +54,8 @@ asynchronous serial line.
.Pp .Pp
The node transmits and receives asynchronous data on the The node transmits and receives asynchronous data on the
.Dv async .Dv async
hook. Mbuf boundaries of incoming data are ignored. hook.
Mbuf boundaries of incoming data are ignored.
Once a complete packet has been received, it is decoded and Once a complete packet has been received, it is decoded and
stripped of all framing bytes, and transmitted out the stripped of all framing bytes, and transmitted out the
.Dv sync .Dv sync
@ -68,7 +69,8 @@ and sent out on
.Dv async . .Dv async .
Received packets should start with the address and control fields, Received packets should start with the address and control fields,
or the PPP protocol field if address and control field compression or the PPP protocol field if address and control field compression
is employed, and contain no checksum field. If the first four bytes are is employed, and contain no checksum field.
If the first four bytes are
.Dv "0xff 0x03 0xc0 0x21" .Dv "0xff 0x03 0xc0 0x21"
(an LCP protocol frame) then complete control character escaping (an LCP protocol frame) then complete control character escaping
is enabled for that frame (in PPP, LCP packets are always sent with is enabled for that frame (in PPP, LCP packets are always sent with
@ -93,7 +95,8 @@ Typically this hook would be connected to a
.Xr ng_tty 4 .Xr ng_tty 4
node, which handles transmission of serial data over a tty device. node, which handles transmission of serial data over a tty device.
.It Dv sync .It Dv sync
Synchronous connection. This hook sends and receives synchronous frames. Synchronous connection.
This hook sends and receives synchronous frames.
For PPP, these frames should contain address, control, and protocol fields, For PPP, these frames should contain address, control, and protocol fields,
but no checksum field. but no checksum field.
Typically this hook would be connected to an individual link hook of a Typically this hook would be connected to an individual link hook of a
@ -132,7 +135,8 @@ The
and and
.Dv smru .Dv smru
fields are the asynchronous and synchronous MRU (maximum receive unit) values, fields are the asynchronous and synchronous MRU (maximum receive unit) values,
respectively. These both default to 1600; note that the async MRU respectively.
These both default to 1600; note that the async MRU
applies to the incoming frame length after asynchronous decoding. applies to the incoming frame length after asynchronous decoding.
The The
.Dv accm .Dv accm

View File

@ -44,28 +44,33 @@ The
.Nm .Nm
netgraph node type allows netgraph node type allows
.Xr natm 4 .Xr natm 4
ATM drivers to be connected to the ATM drivers to be connected to the
.Xr netgraph 4 .Xr netgraph 4
networking subsystem. networking subsystem.
When the When the
.Nm .Nm
module is loaded a node is automatically create for each module is loaded a node is automatically create for each
.Xr natm 4 .Xr natm 4
ATM interface. The nodes are named with the same name as the ATM interface.
interface. Nodes are also created, if a driver for an ATM The nodes are named with the same name as the
interface.
Nodes are also created, if a driver for an ATM
card is loaded after card is loaded after
.Nm .Nm
was loaded. was loaded.
.Pp .Pp
.Nm .Nm
nodes are persistent. They are removed when the interface is removed. nodes are persistent.
They are removed when the interface is removed.
SHUTDOWN messages are ignored by the node. SHUTDOWN messages are ignored by the node.
.Sh HOOKS .Sh HOOKS
Four special hooks with fixed names and an unlimited number of hooks with user Four special hooks with fixed names and an unlimited number of hooks with user
defined names are supported. Three of the fixed hooks are attached to defined names are supported.
Three of the fixed hooks are attached to
strategic points in the information flow in the strategic points in the information flow in the
.Xr natm 4 .Xr natm 4
system and support only reading. The fourth fixed hook behaves like the other system and support only reading.
The fourth fixed hook behaves like the other
user hooks, but a number of management messages are sent along the hook. user hooks, but a number of management messages are sent along the hook.
The other hooks can be attached to VCIs dynamically by means of The other hooks can be attached to VCIs dynamically by means of
control messages to the control messages to the
@ -77,7 +82,9 @@ The four fixed hooks are:
.It Dv input .It Dv input
This is a connection to the raw input stream from the network. This is a connection to the raw input stream from the network.
If this hook is connected, all incoming packets are delivered out to If this hook is connected, all incoming packets are delivered out to
this hook. Note, that this redirects ALL input. Neither this hook.
Note, that this redirects ALL input.
Neither
.Xr natm 4 .Xr natm 4
nor the user hooks will see any input if nor the user hooks will see any input if
.Dv input .Dv input
@ -98,7 +105,7 @@ An
.Xr natm 4 ) .Xr natm 4 )
is prepended to the actual data. is prepended to the actual data.
.It Dv orphans .It Dv orphans
This hook receives all packets that are unrecognized, i.e. do not belong to This hook receives all packets that are unrecognized, i.e., do not belong to
either a either a
.Xr natm 4 .Xr natm 4
socket, a socket, a
@ -107,7 +114,8 @@ VCI or
.Xr natm 4 .Xr natm 4
IP. IP.
Because ATM is connection oriented and packets are received on a given VCI only Because ATM is connection oriented and packets are received on a given VCI only
when someone initiates this VCI, packets should never be orphaned. There is when someone initiates this VCI, packets should never be orphaned.
There is
however one exception: if you use however one exception: if you use
.Xr natm 4 .Xr natm 4
IP with LLC/SNAP encapsulation packets with don't have the IP protocol IP with LLC/SNAP encapsulation packets with don't have the IP protocol
@ -123,16 +131,17 @@ the node at the other hand will receive management messages.
.El .El
.Pp .Pp
Hooks for dynamically initiated VCIs can have whatever name is allowed by Hooks for dynamically initiated VCIs can have whatever name is allowed by
.Xr netgraph 4 .Xr netgraph 4
as long as the name does not collide with one of the three predefined names. as long as the name does not collide with one of the three predefined names.
.Pp .Pp
To initiate packet sending an receiving on a dynamic hook one has to issue To initiate packet sending an receiving on a dynamic hook one has to issue
a a
.Dv NGM_ATM_CPCS_INIT .Dv NGM_ATM_CPCS_INIT
control message. To terminate sending and receiving one must send a control message.
To terminate sending and receiving one must send a
.Dv NGM_ATM_CPCS_TERM .Dv NGM_ATM_CPCS_TERM
message (see message (see
.Sx CONTROL MESSAGES ) . .Sx CONTROL MESSAGES ) .
The data send and received on these hooks has no additional The data send and received on these hooks has no additional
headers. headers.
.Sh CONTROL MESSAGES .Sh CONTROL MESSAGES
@ -153,7 +162,8 @@ struct ng_atm_config {
}; };
.Ed .Ed
.It Dv NGM_ATM_GET_VCCS .It Dv NGM_ATM_GET_VCCS
Returns the table of open VCCs from the driver. This table consists of Returns the table of open VCCs from the driver.
This table consists of
a header and a variable sized array of entries, one for each open vcc: a header and a variable sized array of entries, one for each open vcc:
.Bd -literal .Bd -literal
struct atmio_vcctable { struct atmio_vcctable {
@ -188,8 +198,10 @@ struct atmio_tparam {
.Pp .Pp
Note, that this is the driver's table, so all VCCs opened via Note, that this is the driver's table, so all VCCs opened via
.Xr natm 4 .Xr natm 4
sockets and IP are also shown. They can, however, be distinguished by sockets and IP are also shown.
their flags. The They can, however, be distinguished by
their flags.
The
.Dv flags .Dv flags
field contains the following flags: field contains the following flags:
.Bl -column ATM_PH_LLCSNAP -offset indent .Bl -column ATM_PH_LLCSNAP -offset indent
@ -229,7 +241,8 @@ all traffic types however):
.It Dv ATMIO_TRAFFIC_VBR .It Dv ATMIO_TRAFFIC_VBR
.El .El
.It Dv NGM_ATM_CPCS_INIT .It Dv NGM_ATM_CPCS_INIT
Initialize a VCC for sending and receiving. The argument is a structure: Initialize a VCC for sending and receiving.
The argument is a structure:
.Bd -literal .Bd -literal
struct ng_atm_cpcs_init { struct ng_atm_cpcs_init {
char name[NG_HOOKSIZ]; char name[NG_HOOKSIZ];
@ -261,8 +274,9 @@ This hook must already be connected.
.Dv vpi .Dv vpi
and and
.Dv vci .Dv vci
are the respective VPI and VCI values to use for the ATM cells. They must be are the respective VPI and VCI values to use for the ATM cells.
within the range, given by the They must be
within the range, given by the
.Dv maxvpi .Dv maxvpi
and and
.Dv maxvci .Dv maxvci
@ -273,7 +287,8 @@ structure.
contains the flags (see above) and the other fields describe the contains the flags (see above) and the other fields describe the
type of traffic. type of traffic.
.It Dv NGM_ATM_CPCS_TERM .It Dv NGM_ATM_CPCS_TERM
Stop sending and receiving on the indicated hook. The argument is a Stop sending and receiving on the indicated hook.
The argument is a
.Bd -literal .Bd -literal
struct ng_atm_cpcs_term { struct ng_atm_cpcs_term {
char name[NG_HOOKSIZ]; char name[NG_HOOKSIZ];
@ -283,7 +298,8 @@ struct ng_atm_cpcs_term {
.Sh MANAGEMENT MESSAGES .Sh MANAGEMENT MESSAGES
If the If the
.Dv manage .Dv manage
hook is connected certain messages are sent along the hook. They are hook is connected certain messages are sent along the hook.
They are
received by the peer node with a cookie of received by the peer node with a cookie of
.Dv NG_ATM_COOKIE . .Dv NG_ATM_COOKIE .
.Bl -tag -width xxx .Bl -tag -width xxx
@ -298,15 +314,18 @@ struct ng_atm_carrier_change {
.Ed .Ed
.Pp .Pp
.Dv node .Dv node
is the node Id of the ATM node. This can be used by the managing entity is the node Id of the ATM node.
This can be used by the managing entity
(for example (for example
.Xr ilmid 8 ) .Xr ilmid 8 )
to manage several interfaces at the same time through the same node. to manage several interfaces at the same time through the same node.
.Dv state is 1 if the carrier was detected and 0 if it was lost. .Dv state is 1 if the carrier was detected and 0 if it was lost.
.It Dv NGM_ATM_VCC_CHANGE .It Dv NGM_ATM_VCC_CHANGE
A permanent VCC has been added, deleted or changed. This is used by A permanent VCC has been added, deleted or changed.
This is used by
.Xr ilmid .Xr ilmid
to generate the appropriate ILMI traps. The structure of the message is: to generate the appropriate ILMI traps.
The structure of the message is:
.Bd -literal .Bd -literal
struct ng_atm_vcc_change { struct ng_atm_vcc_change {
uint32_t node; uint32_t node;
@ -321,22 +340,27 @@ is 0 if the PVC was deleted and 1 if it was added or modified.
.El .El
.Sh FLOW CONTROL .Sh FLOW CONTROL
If the hardware driver supports it the node can emit flow control messages If the hardware driver supports it the node can emit flow control messages
along a user hook. The format of these messages is described in along a user hook.
The format of these messages is described in
.Pa netgraph/ng_message.h . .Pa netgraph/ng_message.h .
The The
.Nm .Nm
node may generate node may generate
.Dv NGM_HIGH_WATER_PASSED and NGM_LOW_WATER_PASSED .Dv NGM_HIGH_WATER_PASSED and NGM_LOW_WATER_PASSED
messages. The first one indicates that the hardware driver has stopped output messages.
The first one indicates that the hardware driver has stopped output
on the channel and drops new packets, the second one reports that on the channel and drops new packets, the second one reports that
output was reenabled. Currently the structures are not filled with output was reenabled.
Currently the structures are not filled with
information. information.
.Sh SHUTDOWN .Sh SHUTDOWN
The nodes are persistent as long as the corresponding interface exists. The nodes are persistent as long as the corresponding interface exists.
Upon receipt of a Upon receipt of a
.Dv NGM_SHUTDOWN .Dv NGM_SHUTDOWN
messages all hooks are disconnected and the node is reinitialized. All messages all hooks are disconnected and the node is reinitialized.
VCCs opened via netgraph are closed. When the ATM interface is unloaded All
VCCs opened via netgraph are closed.
When the ATM interface is unloaded
the node disappears. the node disappears.
If the node is compiled with If the node is compiled with
.Dv NGATM_DEBUG .Dv NGATM_DEBUG

View File

@ -44,11 +44,13 @@ This node currently handles the Ethernet and FDDI protocols.
.Pp .Pp
The node transmits and receives ATM PDUs on the The node transmits and receives ATM PDUs on the
.Dv atm .Dv atm
hook. Received PDUs are decoded and forwarded to the hook.
Received PDUs are decoded and forwarded to the
.Dv ether .Dv ether
or or
.Dv fddi .Dv fddi
hooks as appropriate. Data received on the hooks as appropriate.
Data received on the
.Dv ether .Dv ether
or or
.Dv fddi .Dv fddi
@ -66,12 +68,14 @@ Typically this hook would be connected to a
.Xr ng_atm 4 .Xr ng_atm 4
node, which handles transmission of ATM PDUs over an ATM device. node, which handles transmission of ATM PDUs over an ATM device.
.It Dv ether .It Dv ether
Ethernet connection. This hook sends and receives ethernet frames. Ethernet connection.
This hook sends and receives ethernet frames.
This would normally be connected to an This would normally be connected to an
.Xr ng_eiface 4 .Xr ng_eiface 4
node if in use. node if in use.
.It Dv fddi .It Dv fddi
FDDI connection. This hook sends and receives FDDI frames. FDDI connection.
This hook sends and receives FDDI frames.
.El .El
.Sh CONTROL MESSAGES .Sh CONTROL MESSAGES
This node type supports the generic control messages. This node type supports the generic control messages.

View File

@ -51,7 +51,8 @@ netgraph node type allows the emulation of
networking subsystem. networking subsystem.
Moreover it includes protection of the PDU against duplication and Moreover it includes protection of the PDU against duplication and
desequencement. desequencement.
It supports up to 65535 VCs and up to 255 VPs. AAL0, AAL3/4 and AAL5 It supports up to 65535 VCs and up to 255 VPs.
AAL0, AAL3/4 and AAL5
emulation are provided. emulation are provided.
In order to optimize CPU, this node does not emulate the SAR layer. In order to optimize CPU, this node does not emulate the SAR layer.
.Pp .Pp
@ -66,8 +67,10 @@ It is named hvaX.
It has the same features as any other HARP devices. It has the same features as any other HARP devices.
The PIF is removed when the node is removed. The PIF is removed when the node is removed.
.Sh HOOKS .Sh HOOKS
There is only one hook: link. This hook can be connected to any other There is only one hook: link.
Netgraph node. For example, in order This hook can be connected to any other
Netgraph node.
For example, in order
to test the HARP stack over UDP, it can be connected on a to test the HARP stack over UDP, it can be connected on a
.Xr ksocket 4 .Xr ksocket 4
node. node.

View File

@ -49,7 +49,7 @@ A read-only integer variable that shows the current version of the
Bluetooth stack. Bluetooth stack.
.It Va net.bluetooth.hci.command_timeout .It Va net.bluetooth.hci.command_timeout
A read-write integer variable that controls the Host Controller Interface A read-write integer variable that controls the Host Controller Interface
(HCI) command timeout (in seconds), i.e. how long the HCI layer will wait (HCI) command timeout (in seconds), i.e., how long the HCI layer will wait
for the for the
.Dv Command_Complete .Dv Command_Complete
or or

View File

@ -51,7 +51,8 @@ node type allows Berkeley Packet Filter (see
.Xr bpf 4 ) .Xr bpf 4 )
filters to be applied to data travelling through a Netgraph network. filters to be applied to data travelling through a Netgraph network.
Each node allows an arbitrary number of connections to arbitrarily Each node allows an arbitrary number of connections to arbitrarily
named hooks. With each hook is associated a named hooks.
With each hook is associated a
.Xr bpf 4 .Xr bpf 4
filter program which is applied to incoming data only, a destination hook filter program which is applied to incoming data only, a destination hook
for matching packets, a destination hook for non-matching packets, for matching packets, a destination hook for non-matching packets,
@ -60,7 +61,8 @@ and various statistics counters.
A A
.Xr bpf 4 .Xr bpf 4
program returns an unsigned integer, which is normally interpreted as program returns an unsigned integer, which is normally interpreted as
the length of the prefix of the packet to return. In the context of this the length of the prefix of the packet to return.
In the context of this
node type, returning zero is considered a non-match, in which case the node type, returning zero is considered a non-match, in which case the
entire packet is delivered out the non-match destination hook. entire packet is delivered out the non-match destination hook.
Returning a value greater than zero causes the packet to be truncated Returning a value greater than zero causes the packet to be truncated
@ -79,7 +81,8 @@ This node type supports the generic control messages, plus the following:
.Bl -tag -width foo .Bl -tag -width foo
.It Dv NGM_BPF_SET_PROGRAM .It Dv NGM_BPF_SET_PROGRAM
This command sets the filter program that will be applied to incoming This command sets the filter program that will be applied to incoming
data on a hook. The following structure must be supplied as an argument: data on a hook.
The following structure must be supplied as an argument:
.Bd -literal -offset 4n .Bd -literal -offset 4n
struct ng_bpf_hookprog { struct ng_bpf_hookprog {
char thisHook[NG_HOOKSIZ]; /* name of hook */ char thisHook[NG_HOOKSIZ]; /* name of hook */
@ -101,7 +104,8 @@ Matching and non-matching incoming packets are delivered out the hooks named
.Dv ifMatch .Dv ifMatch
and and
.Dv ifNotMatch , .Dv ifNotMatch ,
respectively. The program must be a valid respectively.
The program must be a valid
.Xr bpf 4 .Xr bpf 4
program or else program or else
.Er EINVAL .Er EINVAL

View File

@ -98,7 +98,7 @@ Remove all neighbor cache entries for the HCI node.
.It Dv SIOC_HCI_RAW_NODE_GET_NEIGHBOR_CACHE .It Dv SIOC_HCI_RAW_NODE_GET_NEIGHBOR_CACHE
Returns content of the neighbor cache for the HCI node. Returns content of the neighbor cache for the HCI node.
.It Dv SIOC_HCI_RAW_NODE_GET_CON_LIST .It Dv SIOC_HCI_RAW_NODE_GET_CON_LIST
Returns list of active baseband connections (i.e. ACL and SCO links) for Returns list of active baseband connections (i.e., ACL and SCO links) for
the HCI node. the HCI node.
.It SIOC_HCI_RAW_NODE_GET_LINK_POLICY_MASK .It SIOC_HCI_RAW_NODE_GET_LINK_POLICY_MASK
Returns current link policy settings mask for the HCI node. Returns current link policy settings mask for the HCI node.
@ -182,7 +182,7 @@ Returns current debug level for the L2CAP node.
.It Dv SIOC_L2CAP_NODE_SET_DEBUG .It Dv SIOC_L2CAP_NODE_SET_DEBUG
Sets current debug level for the L2CAP node. Sets current debug level for the L2CAP node.
.It Dv SIOC_L2CAP_NODE_GET_CON_LIST .It Dv SIOC_L2CAP_NODE_GET_CON_LIST
Returns list of active baseband connections (i.e. ACL links) for the L2CAP Returns list of active baseband connections (i.e., ACL links) for the L2CAP
node. node.
.It Dv SIOC_L2CAP_NODE_GET_CHAN_LIST .It Dv SIOC_L2CAP_NODE_GET_CHAN_LIST
Returns list of active channels for the L2CAP node. Returns list of active channels for the L2CAP node.

View File

@ -48,10 +48,13 @@
The The
.Nm cisco .Nm cisco
node type performs encapsulation and de-encapsulation of packets node type performs encapsulation and de-encapsulation of packets
using the Cisco HDLC protocol. This is a fairly simple using the Cisco HDLC protocol.
This is a fairly simple
protocol for the transmission of packets across protocol for the transmission of packets across
high speed synchronous lines. Each packet is prepended with high speed synchronous lines.
an Ethertype, indicating the protocol. There is also a Each packet is prepended with
an Ethertype, indicating the protocol.
There is also a
.Dq keep alive .Dq keep alive
and an and an
.Dq inquire .Dq inquire
@ -59,7 +62,8 @@ capability.
.Pp .Pp
The The
.Dv downstream .Dv downstream
hook should connect to the synchronous line. On the other side hook should connect to the synchronous line.
On the other side
of the node are the of the node are the
.Dv inet , .Dv inet ,
.Dv inet6 , .Dv inet6 ,
@ -67,13 +71,15 @@ of the node are the
and and
.Dv ipx .Dv ipx
hooks, which transmit and receive raw IP, IPv6, AppleTalk, and IPX packets, hooks, which transmit and receive raw IP, IPv6, AppleTalk, and IPX packets,
respectively. Typically these hooks would connect to the corresponding respectively.
Typically these hooks would connect to the corresponding
hooks on an hooks on an
.Xr ng_iface 4 .Xr ng_iface 4
type node. type node.
.Sh IP Configuration .Sh IP Configuration
In order to function properly for IP traffic, the node must be informed In order to function properly for IP traffic, the node must be informed
of the local IP address and netmask setting. This is because the protocol of the local IP address and netmask setting.
This is because the protocol
includes an includes an
.Dq inquire .Dq inquire
packet which we must be prepared to answer. packet which we must be prepared to answer.
@ -84,10 +90,12 @@ Whenever such an inquire packet is received, the node sends a
control message to the peer node connected to the control message to the peer node connected to the
.Dv inet .Dv inet
hook (if any). hook (if any).
If the peer responds, then that response is used. This is the automatic method. If the peer responds, then that response is used.
This is the automatic method.
.Pp .Pp
If the peer does not respond, the node falls back on its cached value If the peer does not respond, the node falls back on its cached value
for the IP address and netmask. This cached value can be set at any time for the IP address and netmask.
This cached value can be set at any time
with a with a
.Dv NGM_CISCO_SET_IPADDR .Dv NGM_CISCO_SET_IPADDR
message, and this is the manual method. message, and this is the manual method.
@ -124,7 +132,8 @@ This node type supports the generic control messages, plus the following:
.It Dv NGM_CISCO_SET_IPADDR .It Dv NGM_CISCO_SET_IPADDR
This command takes an array of two This command takes an array of two
.Dv "struct in_addr" .Dv "struct in_addr"
arguments. The first is the IP address of the corresponding interface arguments.
The first is the IP address of the corresponding interface
and the second is the netmask. and the second is the netmask.
.It Dv NGM_CISCO_GET_IPADDR .It Dv NGM_CISCO_GET_IPADDR
This command returns the IP configuration in the same format used by This command returns the IP configuration in the same format used by
@ -149,7 +158,8 @@ This node shuts down upon receipt of a
.Dv NGM_SHUTDOWN .Dv NGM_SHUTDOWN
control message, or when all hooks have been disconnected. control message, or when all hooks have been disconnected.
.Sh BUGS .Sh BUGS
Not all of the functionality has been implemented. For example, Not all of the functionality has been implemented.
For example,
the node does not support querying the remote end for its IP address the node does not support querying the remote end for its IP address
and netmask. and netmask.
.Sh SEE ALSO .Sh SEE ALSO

View File

@ -47,7 +47,8 @@
The The
.Nm frame_relay .Nm frame_relay
node type performs encapsulation, de-encapsulation, and multiplexing node type performs encapsulation, de-encapsulation, and multiplexing
of packets using the frame relay protocol. It supports up to 1024 DLCI's. of packets using the frame relay protocol.
It supports up to 1024 DLCI's.
The LMI protocol is handled by a separate node type (see The LMI protocol is handled by a separate node type (see
.Xr ng_lmi 4 ) . .Xr ng_lmi 4 ) .
.Pp .Pp
@ -67,7 +68,8 @@ This node type supports the following hooks:
.It Dv downstream .It Dv downstream
The connection to the synchronous line. The connection to the synchronous line.
.It Dv dlciX .It Dv dlciX
Here X is a decimal number from 0 to 1023. This hook corresponds Here X is a decimal number from 0 to 1023.
This hook corresponds
to the DLCI X frame relay virtual channel. to the DLCI X frame relay virtual channel.
.El .El
.Sh CONTROL MESSAGES .Sh CONTROL MESSAGES

View File

@ -117,7 +117,7 @@ provides a uniform method of accessing the Bluetooth baseband capabilities.
.Pp .Pp
The HCI layer on the Host exchanges data and commands with the HCI firmware The HCI layer on the Host exchanges data and commands with the HCI firmware
on the Bluetooth hardware. on the Bluetooth hardware.
The Host Controller Transport Layer (i.e. physical The Host Controller Transport Layer (i.e., physical
bus) driver provides both HCI layers with the ability to exchange information bus) driver provides both HCI layers with the ability to exchange information
with each other. with each other.
.Pp .Pp
@ -223,7 +223,7 @@ typedef struct {
} ng_hci_node_up_ep; } ng_hci_node_up_ep;
.Ed .Ed
.Sh HCI FLOW CONTROL .Sh HCI FLOW CONTROL
HCI layer performs flow control on baseband connection basis (i.e. ACL and HCI layer performs flow control on baseband connection basis (i.e., ACL and
SCO link). SCO link).
Each baseband connection has Each baseband connection has
.Dq "connection handle" .Dq "connection handle"
@ -334,7 +334,7 @@ Returns content of the neighbor cache.
.It Dv NGM_HCI_NODE_FLUSH_NEIGHBOR_CACHE .It Dv NGM_HCI_NODE_FLUSH_NEIGHBOR_CACHE
Remove all neighbor cache entries. Remove all neighbor cache entries.
.It Dv NGM_HCI_NODE_GET_CON_LIST .It Dv NGM_HCI_NODE_GET_CON_LIST
Returns list of active baseband connections (i.e. ACL and SCO links). Returns list of active baseband connections (i.e., ACL and SCO links).
.It Dv NGM_HCI_NODE_GET_STAT .It Dv NGM_HCI_NODE_GET_STAT
Returns various statistic counters. Returns various statistic counters.
.It Dv NGM_HCI_NODE_RESET_STAT .It Dv NGM_HCI_NODE_RESET_STAT

View File

@ -46,7 +46,8 @@
.Sh DESCRIPTION .Sh DESCRIPTION
An An
.Nm iface .Nm iface
node is both a netgraph node and a system networking interface. When an node is both a netgraph node and a system networking interface.
When an
.Nm iface .Nm iface
node is created, a new interface appears which is accessible via node is created, a new interface appears which is accessible via
.Xr ifconfig 8 . .Xr ifconfig 8 .
@ -126,7 +127,8 @@ for a description.
.Sh SHUTDOWN .Sh SHUTDOWN
This node shuts down upon receipt of a This node shuts down upon receipt of a
.Dv NGM_SHUTDOWN .Dv NGM_SHUTDOWN
control message. The associated interface is removed and becomes available control message.
The associated interface is removed and becomes available
for use by future for use by future
.Nm iface .Nm iface
nodes. nodes.

View File

@ -84,7 +84,8 @@ and
are the decimal equivalent of the same arguments to are the decimal equivalent of the same arguments to
.Xr socket 2 . .Xr socket 2 .
Alternately, aliases for the commonly used values are accepted as Alternately, aliases for the commonly used values are accepted as
well. For example well.
For example
.Dv inet/dgram/udp .Dv inet/dgram/udp
is a more readable but equivalent version of is a more readable but equivalent version of
.Dv 2/2/17 . .Dv 2/2/17 .
@ -95,7 +96,7 @@ connected (an
.Dv NGM_KSOCKET_CONNECT .Dv NGM_KSOCKET_CONNECT
was sent to node before). was sent to node before).
If socket is not connected, destination If socket is not connected, destination
.Dv "struct sockaddr" .Vt "struct sockaddr"
must be supplied in an mbuf tag with cookie must be supplied in an mbuf tag with cookie
.Dv NGM_KSOCKET_COOKIE .Dv NGM_KSOCKET_COOKIE
and type and type
@ -104,7 +105,7 @@ attached to data.
Otherwise Otherwise
.Nm .Nm
will return will return
.Dv ENOTCONN .Er ENOTCONN
to sender. to sender.
.Sh CONTROL MESSAGES .Sh CONTROL MESSAGES
This node type supports the generic control messages, plus the following: This node type supports the generic control messages, plus the following:
@ -114,7 +115,7 @@ This functions exactly like the
.Xr bind 2 .Xr bind 2
system call. system call.
The The
.Dv "struct sockaddr" .Vt "struct sockaddr"
socket address parameter should be supplied as an argument. socket address parameter should be supplied as an argument.
.It Dv NGM_KSOCKET_LISTEN .It Dv NGM_KSOCKET_LISTEN
This functions exactly like the This functions exactly like the
@ -128,7 +129,7 @@ This functions exactly like the
.Xr connect 2 .Xr connect 2
system call. system call.
The The
.Dv "struct sockaddr" .Vt "struct sockaddr"
destination address parameter should be supplied as an argument. destination address parameter should be supplied as an argument.
.It Dv NGM_KSOCKET_ACCEPT .It Dv NGM_KSOCKET_ACCEPT
Currently unimplemented. Currently unimplemented.
@ -137,25 +138,25 @@ Equivalent to the
.Xr getsockname 2 .Xr getsockname 2
system call. system call.
The name is returned as a The name is returned as a
.Dv "struct sockaddr" .Vt "struct sockaddr"
in the arguments field of the reply. in the arguments field of the reply.
.It Dv NGM_KSOCKET_GETPEERNAME .It Dv NGM_KSOCKET_GETPEERNAME
Equivalent to the Equivalent to the
.Xr getpeername 2 .Xr getpeername 2
system call. system call.
The name is returned as a The name is returned as a
.Dv "struct sockaddr" .Vt "struct sockaddr"
in the arguments field of the reply. in the arguments field of the reply.
.It Dv NGM_KSOCKET_SETOPT .It Dv NGM_KSOCKET_SETOPT
Equivalent to the Equivalent to the
.Xr setsockopt 2 .Xr setsockopt 2
system call, except that the option name, level, and value are passed in a system call, except that the option name, level, and value are passed in a
.Dv "struct ng_ksocket_sockopt" . .Vt "struct ng_ksocket_sockopt" .
.It Dv NGM_KSOCKET_GETOPT .It Dv NGM_KSOCKET_GETOPT
Equivalent to the Equivalent to the
.Xr getsockopt 2 .Xr getsockopt 2
system call, except that the option is passed in a system call, except that the option is passed in a
.Dv "struct ng_ksocket_sockopt" . .Vt "struct ng_ksocket_sockopt" .
When sending this command, the When sending this command, the
.Dv value .Dv value
field should be empty; upon return, it will contain the field should be empty; upon return, it will contain the
@ -163,7 +164,7 @@ retrieved value.
.El .El
.Sh ASCII FORM CONTROL MESSAGES .Sh ASCII FORM CONTROL MESSAGES
For control messages that pass a For control messages that pass a
.Dv "struct sockaddr" .Vt "struct sockaddr"
in the argument field, the normal in the argument field, the normal
.Tn ASCII .Tn ASCII
equivalent of the C structure equivalent of the C structure
@ -193,7 +194,7 @@ inet/192.168.1.1:1234
.El .El
.Pp .Pp
For control messages that pass a For control messages that pass a
.Dv "struct ng_ksocket_sockopt" , .Vt "struct ng_ksocket_sockopt" ,
the normal the normal
.Tn ASCII .Tn ASCII
form for that structure is used. form for that structure is used.

View File

@ -390,7 +390,7 @@ Returns an integer containing the current debug level for the node.
This command takes an integer argument and sets current debug level This command takes an integer argument and sets current debug level
for the node. for the node.
.It Dv NGM_L2CAP_NODE_GET_CON_LIST .It Dv NGM_L2CAP_NODE_GET_CON_LIST
Returns list of active baseband connections (i.e. ACL links). Returns list of active baseband connections (i.e., ACL links).
.It Dv NGM_L2CAP_NODE_GET_CHAN_LIST .It Dv NGM_L2CAP_NODE_GET_CHAN_LIST
Returns list of active L2CAP channels. Returns list of active L2CAP channels.
.It Dv NGM_L2CAP_NODE_GET_AUTO_DISCON_TIMO .It Dv NGM_L2CAP_NODE_GET_AUTO_DISCON_TIMO

Some files were not shown because too many files have changed in this diff Show More