diff options
| author | Poul-Henning Kamp <phk@FreeBSD.org> | 1996-12-03 15:55:45 +0000 | 
|---|---|---|
| committer | Poul-Henning Kamp <phk@FreeBSD.org> | 1996-12-03 15:55:45 +0000 | 
| commit | e56cec74b4eb1f1eae746e69572a97125a1bc7cc (patch) | |
| tree | 39051579679106eea2c37da3df5ee657431d619c | |
| parent | 4420bcc12682de586ef3beec3a1e5a0145b11768 (diff) | |
Notes
64 files changed, 339 insertions, 1595 deletions
| diff --git a/lib/libc/gen/getdomainname.3 b/lib/libc/gen/getdomainname.3 index b0a0f0998643..c4fc6eb3d3fc 100644 --- a/lib/libc/gen/getdomainname.3 +++ b/lib/libc/gen/getdomainname.3 @@ -1,5 +1,7 @@ -.\" Copyright (c) 1983, 1991 The Regents of the University of California. -.\" All rights reserved. +.\"	$NetBSD: getdomainname.3,v 1.2 1995/02/27 04:12:27 cgd Exp $ +.\" +.\" Copyright (c) 1983, 1991, 1993 +.\"	The Regents of the University of California.  All rights reserved.  .\"  .\" Redistribution and use in source and binary forms, with or without  .\" modification, are permitted provided that the following conditions @@ -29,16 +31,15 @@  .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF  .\" SUCH DAMAGE.  .\" -.\"     from: @(#)getdomainname.2	6.7 (Berkeley) 3/10/91 -.\"	$Id: getdomainname.3,v 1.2 1996/02/11 22:33:32 mpp Exp $ +.\"     @(#)gethostname.3	8.1 (Berkeley) 6/4/93  .\" -.Dd March 10, 1991 +.Dd May 6, 1994  .Dt GETDOMAINNAME 3  .Os BSD 4.2  .Sh NAME  .Nm getdomainname ,  .Nm setdomainname -.Nd get/set name of current host +.Nd get/set domain name of current host  .Sh SYNOPSIS  .Fd #include <unistd.h>  .Ft int @@ -47,7 +48,7 @@  .Fn setdomainname "const char *name" "int namelen"  .Sh DESCRIPTION  .Fn Getdomainname -returns the standard host name for the current processor, as +returns the standard domain name for the current processor, as  previously set by  .Fn setdomainname .  The parameter @@ -58,7 +59,7 @@ array.  The returned name is null-terminated unless insufficient  space is provided.  .Pp  .Fn Setdomainname -sets the name of the host machine to be +sets the domain name of the host machine to be  .Fa name ,  which has length  .Fa namelen . @@ -80,11 +81,12 @@ or  parameter gave an  invalid address.  .It Bq Er EPERM -The caller tried to set the domainname and was not the super-user. +The caller tried to set the hostname and was not the super-user.  .El  .Sh SEE ALSO  .Xr gethostid 3 , -.Xr sysctl 3 +.Xr sysctl 3 , +.Xr gethostname 3  .Sh BUGS  Host names are limited to  .Dv MAXHOSTNAMELEN @@ -93,6 +95,6 @@ Host names are limited to  characters, currently 256.  .Sh HISTORY  The -.Fn getdomainname +.Nm  function call appeared in  .Bx 4.2 . diff --git a/lib/libc/sys/_exit.2 b/lib/libc/sys/_exit.2 index ad40a46ff00c..02c2fde2e127 100644 --- a/lib/libc/sys/_exit.2 +++ b/lib/libc/sys/_exit.2 @@ -30,7 +30,7 @@  .\" SUCH DAMAGE.  .\"  .\"     @(#)_exit.2	8.1 (Berkeley) 6/4/93 -.\"	$Id$ +.\"	$Id: _exit.2,v 1.4 1996/08/29 21:23:51 wosch Exp $  .\"  .Dd June 4, 1993  .Dt EXIT 2 @@ -109,8 +109,8 @@ can never return.  .Sh STANDARDS  The  .Fn _exit -function is defined by -.St -p1003.1-88 . +function call is expected to conform to  +.St -p1003.1-90 .  .Sh HISTORY  An  .Fn _exit diff --git a/lib/libc/sys/access.2 b/lib/libc/sys/access.2 index 11b4211c11eb..a332df7f64ac 100644 --- a/lib/libc/sys/access.2 +++ b/lib/libc/sys/access.2 @@ -30,7 +30,7 @@  .\" SUCH DAMAGE.  .\"  .\"     @(#)access.2	8.2 (Berkeley) 4/1/94 -.\"	$Id$ +.\"	$Id: access.2,v 1.2 1996/08/29 21:23:53 wosch Exp $  .\"  .Dd April 1, 1994  .Dt ACCESS 2 @@ -122,9 +122,10 @@ An I/O error occurred while reading from or writing to the file system.  .Xr chmod 2 ,  .Xr stat 2  .Sh STANDARDS -.Fn Access -conforms to IEEE Std 1003.1-1988 -.Pq Dq Tn POSIX . +The +.Fn access +function call is expected to conform to  +.St -p1003.1-90 .  .Sh CAVEAT  .Fn Access  is a potential security hole and diff --git a/lib/libc/sys/chdir.2 b/lib/libc/sys/chdir.2 index 6594fcd0b009..a8f3b1d9a727 100644 --- a/lib/libc/sys/chdir.2 +++ b/lib/libc/sys/chdir.2 @@ -30,7 +30,7 @@  .\" SUCH DAMAGE.  .\"  .\"     @(#)chdir.2	8.2 (Berkeley) 12/11/93 -.\"	$Id$ +.\"	$Id: chdir.2,v 1.2 1996/08/29 21:23:54 wosch Exp $  .\"  .Dd December 11, 1993  .Dt CHDIR 2 @@ -119,9 +119,10 @@ is not a valid file descriptor.  .Sh SEE ALSO  .Xr chroot 2  .Sh STANDARDS -.Fn Chdir -is expected to conform to IEEE Std 1003.1-1988 -.Pq Dq Tn POSIX . +The +.Fn chdir +function call is expected to conform to  +.St -p1003.1-90 .  .Sh HISTORY  A  .Fn chdir diff --git a/lib/libc/sys/chmod.2 b/lib/libc/sys/chmod.2 index 41f08faa3b01..3a8243777736 100644 --- a/lib/libc/sys/chmod.2 +++ b/lib/libc/sys/chmod.2 @@ -30,7 +30,7 @@  .\" SUCH DAMAGE.  .\"  .\"     @(#)chmod.2	8.1 (Berkeley) 6/4/93 -.\"	$Id$ +.\"	$Id: chmod.2,v 1.3 1996/08/29 21:23:56 wosch Exp $  .\"  .Dd June 4, 1993  .Dt CHMOD 2 @@ -167,9 +167,10 @@ An I/O error occurred while reading from or writing to the file system.  .Xr stat 2 ,  .Xr sticky 8  .Sh STANDARDS -.Fn Chmod -is expected to conform to IEEE Std 1003.1-1988 -.Pq Dq Tn POSIX . +The +.Fn chmod +function call is expected to conform to  +.St -p1003.1-90 .  .Sh HISTORY  A  .Fn chmod diff --git a/lib/libc/sys/chown.2 b/lib/libc/sys/chown.2 index 549952806089..da5c62a902a3 100644 --- a/lib/libc/sys/chown.2 +++ b/lib/libc/sys/chown.2 @@ -30,7 +30,7 @@  .\" SUCH DAMAGE.  .\"  .\"     @(#)chown.2	8.4 (Berkeley) 4/19/94 -.\"	$Id$ +.\"	$Id: chown.2,v 1.4 1996/08/29 21:23:59 wosch Exp $  .\"  .Dd April 19, 1994  .Dt CHOWN 2 @@ -132,9 +132,10 @@ An I/O error occurred while reading from or writing to the file system.  .Xr chmod 2 ,  .Xr flock 2  .Sh STANDARDS -.Fn Chown -is expected to conform to IEEE Std 1003.1-1988 -.Pq Dq Tn POSIX . +The +.Fn chown +function call is expected to conform to  +.St -p1003.1-90 .  .Sh HISTORY  A  .Fn chown diff --git a/lib/libc/sys/close.2 b/lib/libc/sys/close.2 index b864545f5742..d3bb331836b4 100644 --- a/lib/libc/sys/close.2 +++ b/lib/libc/sys/close.2 @@ -30,7 +30,7 @@  .\" SUCH DAMAGE.  .\"  .\"     @(#)close.2	8.2 (Berkeley) 4/19/94 -.\"	$Id$ +.\"	$Id: close.2,v 1.4 1996/08/29 21:24:03 wosch Exp $  .\"  .Dd April 19, 1994  .Dt CLOSE 2 @@ -138,9 +138,10 @@ An interrupt was received.  .Xr execve 2 ,  .Xr fcntl 2  .Sh STANDARDS -.Fn Close -conforms to IEEE Std 1003.1-1988 -.Pq Dq Tn POSIX . +The +.Fn close +function call is expected to conform to  +.St -p1003.1-90 .  .Sh HISTORY  A  .Fn close diff --git a/lib/libc/sys/dup.2 b/lib/libc/sys/dup.2 index 1e42cdfe1dba..e35edc5600df 100644 --- a/lib/libc/sys/dup.2 +++ b/lib/libc/sys/dup.2 @@ -30,7 +30,7 @@  .\" SUCH DAMAGE.  .\"  .\"     @(#)dup.2	8.1 (Berkeley) 6/4/93 -.\"	$Id$ +.\"	$Id: dup.2,v 1.3 1996/08/29 21:24:06 wosch Exp $  .\"  .Dd June 4, 1993  .Dt DUP 2 @@ -172,12 +172,12 @@ Too many descriptors are active.  .Xr socketpair 2 ,  .Xr getdtablesize 2  .Sh STANDARDS -.Fn Dup +The +.Fn dup  and  .Fn dup2 -are expected to conform -to IEEE Std 1003.1-1988 -.Pq Dq Tn POSIX . +function calls are expected to conform to  +.St -p1003.1-90 .  .Sh HISTORY  A  .Fn dup diff --git a/lib/libc/sys/getgid.2 b/lib/libc/sys/getgid.2 index 574c15a11eb2..21a7cc270005 100644 --- a/lib/libc/sys/getgid.2 +++ b/lib/libc/sys/getgid.2 @@ -72,8 +72,9 @@ indicate an error.  .Xr setregid 2 ,  .Xr setgid 2  .Sh STANDARDS -.Fn Getgid +The +.Fn getgid  and  .Fn getegid -conform to IEEE Std 1003.1-1988 -.Pq Dq Tn POSIX . +function calls are expected to conform to  +.St -p1003.1-90 . diff --git a/lib/libc/sys/getpgrp.2 b/lib/libc/sys/getpgrp.2 index 13b79884dbc0..8410d4fb8398 100644 --- a/lib/libc/sys/getpgrp.2 +++ b/lib/libc/sys/getpgrp.2 @@ -73,8 +73,8 @@ function call appeared in  .Sh STANDARDS  The  .Fn getpgrp -function conforms to IEEE Std 1003.1-1988 -.Pq Dq Tn POSIX . +function call is expected to conform to  +.St -p1003.1-90 .  .Sh COMPATIBILITY  This version of  .Fn getpgrp diff --git a/lib/libc/sys/getpid.2 b/lib/libc/sys/getpid.2 index 259a6270c650..5db15e023032 100644 --- a/lib/libc/sys/getpid.2 +++ b/lib/libc/sys/getpid.2 @@ -30,7 +30,7 @@  .\" SUCH DAMAGE.  .\"  .\"     @(#)getpid.2	8.1 (Berkeley) 6/4/93 -.\"	$Id$ +.\"	$Id: getpid.2,v 1.3 1996/08/29 21:24:07 wosch Exp $  .\"  .Dd June 4, 1993  .Dt GETPID 2 @@ -66,11 +66,12 @@ indicate an error.  .Sh SEE ALSO  .Xr gethostid 3  .Sh STANDARDS -.Fn Getpid +The +.Fn getpid  and  .Fn getppid -conform to IEEE Std 1003.1-1988 -.Pq Dq Tn POSIX . +function calls are expected to conform to  +.St -p1003.1-90 .  .Sh HISTORY  A  .Fn getpid diff --git a/lib/libc/sys/getuid.2 b/lib/libc/sys/getuid.2 index f44332d160c7..5626bcbbfd9e 100644 --- a/lib/libc/sys/getuid.2 +++ b/lib/libc/sys/getuid.2 @@ -30,7 +30,7 @@  .\" SUCH DAMAGE.  .\"  .\"     @(#)getuid.2	8.1 (Berkeley) 6/4/93 -.\"	$Id$ +.\"	$Id: getuid.2,v 1.2 1996/08/29 21:24:08 wosch Exp $  .\"  .Dd June 4, 1993  .Dt GETUID 2 @@ -74,11 +74,12 @@ indicate an error.  .Xr getgid 2 ,  .Xr setreuid 2  .Sh STANDARDS -.Fn Geteuid +The +.Fn geteuid  and  .Fn getuid -conform to IEEE Std 1003.1-1988 -.Pq Dq Tn POSIX . +function calls are expected to conform to  +.St -p1003.1-90 .  .Sh HISTORY  A  .Fn getuid diff --git a/lib/libc/sys/kill.2 b/lib/libc/sys/kill.2 index 1db80c56d4f4..252a4b4125ac 100644 --- a/lib/libc/sys/kill.2 +++ b/lib/libc/sys/kill.2 @@ -30,7 +30,7 @@  .\" SUCH DAMAGE.  .\"  .\"     @(#)kill.2	8.3 (Berkeley) 4/19/94 -.\"	$Id$ +.\"	$Id: kill.2,v 1.2 1996/08/29 21:24:10 wosch Exp $  .\"  .Dd April 19, 1994  .Dt KILL 2 @@ -127,9 +127,8 @@ of the group could not be signaled.  .Sh STANDARDS  The  .Fn kill -function is expected to -conform to IEEE Std 1003.1-1988 -.Pq Dq Tn POSIX . +function call is expected to conform to  +.St -p1003.1-90 .  .Sh HISTORY  A  .Fn kill diff --git a/lib/libc/sys/link.2 b/lib/libc/sys/link.2 index 8da2bc5bb787..751d5d014f61 100644 --- a/lib/libc/sys/link.2 +++ b/lib/libc/sys/link.2 @@ -30,7 +30,7 @@  .\" SUCH DAMAGE.  .\"  .\"     @(#)link.2	8.3 (Berkeley) 1/12/94 -.\"	$Id$ +.\"	$Id: link.2,v 1.4 1996/08/29 21:24:11 wosch Exp $  .\"  .Dd January 12, 1994  .Dt LINK 2 @@ -144,10 +144,10 @@ is outside the process's allocated address space.  .Xr symlink 2 ,  .Xr unlink 2  .Sh STANDARDS -.Fn Link -is expected to -conform to IEEE Std 1003.1-1988 -.Pq Dq Tn POSIX . +The +.Fn link +function call is expected to conform to  +.St -p1003.1-90 .  .Sh HISTORY  A  .Fn link diff --git a/lib/libc/sys/lseek.2 b/lib/libc/sys/lseek.2 index 8ef8cf403638..80fd838856d6 100644 --- a/lib/libc/sys/lseek.2 +++ b/lib/libc/sys/lseek.2 @@ -30,7 +30,7 @@  .\" SUCH DAMAGE.  .\"  .\"     @(#)lseek.2	8.3 (Berkeley) 4/19/94 -.\"	$Id$ +.\"	$Id: lseek.2,v 1.3 1996/08/29 21:24:12 wosch Exp $  .\"  .Dd April 19, 1994  .Dt LSEEK 2 @@ -132,9 +132,8 @@ is incorrect English, but is maintained for historical reasons.  .Sh STANDARDS  The  .Fn lseek -function -conforms to IEEE Std 1003.1-1988 -.Pq Dq Tn POSIX . +function call is expected to conform to  +.St -p1003.1-90 .  .Sh HISTORY  A  .Fn lseek diff --git a/lib/libc/sys/mkdir.2 b/lib/libc/sys/mkdir.2 index 0ee02edb7225..93ca41943cce 100644 --- a/lib/libc/sys/mkdir.2 +++ b/lib/libc/sys/mkdir.2 @@ -30,7 +30,7 @@  .\" SUCH DAMAGE.  .\"  .\"     @(#)mkdir.2	8.2 (Berkeley) 12/11/93 -.\"	$Id$ +.\"	$Id: mkdir.2,v 1.2 1996/10/05 22:26:41 wosch Exp $  .\"  .Dd December 11, 1993  .Dt MKDIR 2 @@ -109,6 +109,7 @@ points outside the process's allocated address space.  .Xr stat 2 ,  .Xr umask 2  .Sh STANDARDS -.Fn Mkdir -conforms to IEEE Std 1003.1-1988 -.Pq Dq Tn POSIX . +The +.Fn mkdir +function call is expected to conform to  +.St -p1003.1-90 . diff --git a/lib/libc/sys/mkfifo.2 b/lib/libc/sys/mkfifo.2 index 79e5c5096118..4776dcd5e93e 100644 --- a/lib/libc/sys/mkfifo.2 +++ b/lib/libc/sys/mkfifo.2 @@ -120,5 +120,5 @@ points outside the process's allocated address space.  .Sh STANDARDS  The  .Fn mkfifo -function call conforms to -.St -p1003.1-88 . +function call is expected to conform to  +.St -p1003.1-90 . diff --git a/lib/libc/sys/read.2 b/lib/libc/sys/read.2 index a09cc374fcee..2b4b4fab6396 100644 --- a/lib/libc/sys/read.2 +++ b/lib/libc/sys/read.2 @@ -220,9 +220,10 @@ points outside the process's allocated address space.  .Xr socket 2 ,  .Xr socketpair 2  .Sh STANDARDS -.Fn Read -is expected to conform to IEEE Std 1003.1-1988 -.Pq Dq Tn POSIX . +The +.Fn read +function call is expected to conform to  +.St -p1003.1-90 .  .Sh HISTORY  The  .Fn readv diff --git a/lib/libc/sys/rename.2 b/lib/libc/sys/rename.2 index 2644d248dae5..a240ca55c77c 100644 --- a/lib/libc/sys/rename.2 +++ b/lib/libc/sys/rename.2 @@ -30,7 +30,7 @@  .\" SUCH DAMAGE.  .\"  .\"     @(#)rename.2	8.1 (Berkeley) 6/4/93 -.\"	$Id$ +.\"	$Id: rename.2,v 1.2 1996/09/23 22:22:43 wosch Exp $  .\"  .Dd June 4, 1993  .Dt RENAME 2 @@ -195,6 +195,7 @@ is a directory and is not empty.  .Xr open 2 ,  .Xr symlink 7  .Sh STANDARDS -.Fn Rename -conforms to IEEE Std 1003.1-1988 -.Pq Dq Tn POSIX . +The +.Fn rename +function call is expected to conform to  +.St -p1003.1-90 . diff --git a/lib/libc/sys/setpgid.2 b/lib/libc/sys/setpgid.2 index 141c2032e79e..4490edf6a490 100644 --- a/lib/libc/sys/setpgid.2 +++ b/lib/libc/sys/setpgid.2 @@ -77,9 +77,10 @@ of the calling process.  .Sh SEE ALSO  .Xr getpgrp 2  .Sh STANDARDS -.Fn Setpgid -conforms to IEEE Std 1003.1-1988 -.Pq Dq Tn POSIX . +The +.Fn setpgid +function call is expected to conform to  +.St -p1003.1-90 .  .Sh COMPATIBILITY  .Fn Setpgrp  is identical to diff --git a/lib/libc/sys/setsid.2 b/lib/libc/sys/setsid.2 index e67aae4a13eb..d56ad1f8e1a2 100644 --- a/lib/libc/sys/setsid.2 +++ b/lib/libc/sys/setsid.2 @@ -75,5 +75,5 @@ ID of the calling process.  The  .Fn setsid  function is expected to be compliant with the -.St -p1003.1-88 +.St -p1003.1-90  specification. diff --git a/lib/libc/sys/setuid.2 b/lib/libc/sys/setuid.2 index 9ea326e0f2be..959e37ee0f76 100644 --- a/lib/libc/sys/setuid.2 +++ b/lib/libc/sys/setuid.2 @@ -30,7 +30,7 @@  .\" SUCH DAMAGE.  .\"  .\"     @(#)setuid.2	8.1 (Berkeley) 6/4/93 -.\"	$Id: setuid.2,v 1.3 1996/09/01 22:42:13 ache Exp $ +.\"	$Id: setuid.2,v 1.4 1996/09/03 11:32:01 ache Exp $  .\"  .Dd June 4, 1993  .Dt SETUID 2 @@ -130,7 +130,7 @@ The  and  .Fn setgid  functions are compliant with the -.St -p1003.1-88 +.St -p1003.1-90  specification with  .Li _POSIX_SAVED_IDS  .\" Uncomment next line for !_POSIX_SAVED_IDS diff --git a/lib/libc/sys/sigaction.2 b/lib/libc/sys/sigaction.2 index 03f5bc20aa68..2f939cfc004c 100644 --- a/lib/libc/sys/sigaction.2 +++ b/lib/libc/sys/sigaction.2 @@ -338,8 +338,8 @@ or  .Sh STANDARDS  The  .Fn sigaction -function is defined by -.St -p1003.1-88 . +function call is expected to conform to  +.St -p1003.1-90 .  The  .Dv SA_ONSTACK  and diff --git a/lib/libc/sys/sigpending.2 b/lib/libc/sys/sigpending.2 index e7b7c3b8c827..e8c6b8db757a 100644 --- a/lib/libc/sys/sigpending.2 +++ b/lib/libc/sys/sigpending.2 @@ -68,5 +68,5 @@ function does not currently detect any errors.  .Sh STANDARDS  The  .Fn sigpending -function is defined by -.St -p1003.1-88 . +function call is expected to conform to  +.St -p1003.1-90 . diff --git a/lib/libc/sys/sigprocmask.2 b/lib/libc/sys/sigprocmask.2 index b1452cb7c02b..9f6685cad232 100644 --- a/lib/libc/sys/sigprocmask.2 +++ b/lib/libc/sys/sigprocmask.2 @@ -117,4 +117,4 @@ The  .Fn sigprocmask  function call is expected to  conform to -.St -p1003.1-88 . +.St -p1003.1-90 . diff --git a/lib/libc/sys/sigsuspend.2 b/lib/libc/sys/sigsuspend.2 index cbd6c5234ba6..33c4b3389a49 100644 --- a/lib/libc/sys/sigsuspend.2 +++ b/lib/libc/sys/sigsuspend.2 @@ -75,6 +75,5 @@ set to  .Sh STANDARDS  The  .Fn sigsupend -function call -conforms to -.St -p1003.1-88 . +function call is expected to conform to  +.St -p1003.1-90 . diff --git a/lib/libc/sys/stat.2 b/lib/libc/sys/stat.2 index a663381e2689..20d710c54ccd 100644 --- a/lib/libc/sys/stat.2 +++ b/lib/libc/sys/stat.2 @@ -30,7 +30,7 @@  .\" SUCH DAMAGE.  .\"  .\"     @(#)stat.2	8.3 (Berkeley) 4/19/94 -.\"	$Id: stat.2,v 1.5 1996/08/29 21:24:17 wosch Exp $ +.\"	$Id: stat.2,v 1.6 1996/09/23 22:22:46 wosch Exp $  .\"  .Dd April 19, 1994  .Dt STAT 2 @@ -267,9 +267,8 @@ The  .Fn stat  and  .Fn fstat -function calls are expected to -conform to IEEE Std 1003.1-1988 -.Pq Dq Tn POSIX . +function calls are expected to conform to  +.St -p1003.1-90 .  .Sh HISTORY  A  .Fn stat diff --git a/lib/libc/sys/umask.2 b/lib/libc/sys/umask.2 index 23849abb48d9..f250a6e2911b 100644 --- a/lib/libc/sys/umask.2 +++ b/lib/libc/sys/umask.2 @@ -30,7 +30,7 @@  .\" SUCH DAMAGE.  .\"  .\"     @(#)umask.2	8.1 (Berkeley) 6/4/93 -.\"	$Id$ +.\"	$Id: umask.2,v 1.2 1996/08/29 21:24:19 wosch Exp $  .\"  .Dd June 4, 1993  .Dt UMASK 2 @@ -79,8 +79,8 @@ function is always successful.  .Sh STANDARDS  The  .Fn umask -function call is expected to conform to IEEE Std 1003.1-1988 -.Pq Dq Tn POSIX . +function call is expected to conform to  +.St -p1003.1-90 .  .Sh HISTORY  An  .Fn umask diff --git a/lib/libc/sys/write.2 b/lib/libc/sys/write.2 index bd2fcccee667..5680b6d5ed9f 100644 --- a/lib/libc/sys/write.2 +++ b/lib/libc/sys/write.2 @@ -236,9 +236,10 @@ array overflowed a 32-bit integer.  .Xr pipe 2 ,  .Xr select 2  .Sh STANDARDS -.Fn Write -is expected to conform to IEEE Std 1003.1-1988 -.Pq Dq Tn POSIX . +The +.Fn write +function call is expected to conform to  +.St -p1003.1-90 .  .Sh HISTORY  The  .Fn writev diff --git a/release/sysinstall/config.c b/release/sysinstall/config.c index 20e87a862066..431318d40069 100644 --- a/release/sysinstall/config.c +++ b/release/sysinstall/config.c @@ -4,7 +4,7 @@   * This is probably the last program in the `sysinstall' line - the next   * generation being essentially a complete rewrite.   * - * $Id: config.c,v 1.51.2.8 1996/11/09 19:26:17 jkh Exp $ + * $Id: config.c,v 1.51.2.9 1996/11/28 08:17:32 phk Exp $   *   * Copyright (c) 1995   *	Jordan Hubbard.  All rights reserved. @@ -434,7 +434,7 @@ configRouter(dialogMenuItem *self)  			     "will attempt to load if you select gated.  Any other\n"  			     "choice of routing daemon will be assumed to be something\n"  			     "the user intends to install themselves before rebooting\n" -			     "the system.  If you don't want any routing daemon, say NO") ? +			     "the system.  If you don't want any routing daemon, choose NO") ?  	DITEM_SUCCESS : DITEM_FAILURE;      if (ret == DITEM_SUCCESS) { @@ -444,8 +444,8 @@ configRouter(dialogMenuItem *self)  	if (strcmp(cp, "NO")) {  	    if (!strcmp(cp, "gated")) {  		if (package_add(PACKAGE_GATED) != DITEM_SUCCESS) { -		    msgConfirm("Unable to load gated package.  Falling back to routed."); -		    variable_set2(VAR_ROUTER, "routed"); +		    msgConfirm("Unable to load gated package.  Falling back to no router."); +		    variable_set2(VAR_ROUTER, "NO");  		}  	    }  	    /* Now get the flags, if they chose a router */ diff --git a/release/sysinstall/install.c b/release/sysinstall/install.c index 80d9818e57f7..bd9095e869b3 100644 --- a/release/sysinstall/install.c +++ b/release/sysinstall/install.c @@ -4,7 +4,7 @@   * This is probably the last program in the `sysinstall' line - the next   * generation being essentially a complete rewrite.   * - * $Id: install.c,v 1.143 1996/12/01 12:27:36 jkh Exp $ + * $Id: install.c,v 1.134.2.12 1996/12/01 12:28:29 jkh Exp $   *   * Copyright (c) 1995   *	Jordan Hubbard.  All rights reserved. @@ -834,7 +834,7 @@ installVarDefaults(dialogMenuItem *self)      char *cp;      /* Set default startup options */ -    variable_set2(VAR_ROUTER,			"routed"); +    variable_set2(VAR_ROUTER,			"NO");      variable_set2(VAR_RELNAME,			RELEASE_NAME);      variable_set2(VAR_CPIO_VERBOSITY,		"high");      variable_set2(VAR_TAPE_BLOCKSIZE,		DEFAULT_TAPE_BLOCKSIZE); diff --git a/release/sysinstall/menus.c b/release/sysinstall/menus.c index 709c2131682e..896aedc629c4 100644 --- a/release/sysinstall/menus.c +++ b/release/sysinstall/menus.c @@ -4,7 +4,7 @@   * This is probably the last program in the `sysinstall' line - the next   * generation being essentially a complete rewrite.   * - * $Id: menus.c,v 1.89.2.6 1996/11/09 18:13:35 jkh Exp $ + * $Id: menus.c,v 1.89.2.7 1996/11/28 08:17:40 phk Exp $   *   * Copyright (c) 1995   *	Jordan Hubbard.  All rights reserved. @@ -258,7 +258,7 @@ DMenu MenuIndex = {        { "Partition",		"The disk Partition Editor",		NULL, diskPartitionEditor },        { "PCNFSD",		"Run authentication server for PC-NFS.", dmenuVarCheck, configPCNFSD, NULL, "pcnfsd" },        { "Root Password",	"Set the system manager's password.",   NULL, dmenuSystemCommand, NULL, "passwd root" }, -      { "Router",		"Select routing daemon (default: routed)", dmenuVarCheck, configRouter, NULL, "router" }, +      { "Router",		"Select routing daemon (default: routed)", NULL, configRouter, NULL, "router" },        { "Samba",		"Configure Samba for LanManager access.", dmenuVarCheck, configSamba, NULL, "samba" },        { "Syscons",		"The system console configuration menu.", NULL, dmenuSubmenu, NULL, &MenuSyscons },        { "Syscons, Font",	"The console screen font.",	  NULL, dmenuSubmenu, NULL, &MenuSysconsFont }, diff --git a/sbin/ping/ping.c b/sbin/ping/ping.c index 02b34fcec1be..9d64dcf4c595 100644 --- a/sbin/ping/ping.c +++ b/sbin/ping/ping.c @@ -751,9 +751,9 @@ status()  		       : 0),  		      temp_min,  		      ((nreceived + nrepeats) ? -		       (tsum / (nreceived + nrepeats))/1000.0 +		       (tsum / (nreceived + nrepeats))  		       : tsum), -		      tmax/ 1000.0); +		      tmax);  }  /* diff --git a/share/doc/handbook/Makefile b/share/doc/handbook/Makefile index a3e2b090a939..cdbec0d085df 100644 --- a/share/doc/handbook/Makefile +++ b/share/doc/handbook/Makefile @@ -1,15 +1,17 @@ -# $Id: Makefile,v 1.17 1996/09/09 01:56:54 jkh Exp $ +# $Id: Makefile,v 1.17.2.1 1996/11/13 20:10:25 phk Exp $  SRCS= authors.sgml basics.sgml bibliography.sgml boothelp.sgml  SRCS+= booting.sgml contrib.sgml crypt.sgml ctm.sgml current.sgml  -SRCS+= cyclades.sgml development.sgml dialup.sgml +SRCS+= cyclades.sgml development.sgml dialup.sgml dialout.sgml  SRCS+= diskless.sgml dma.sgml eresources.sgml esdi.sgml   SRCS+= firewalls.sgml glossary.sgml goals.sgml -SRCS+= handbook.sgml history.sgml hw.sgml install.sgml isdn.sgml kerberos.sgml -SRCS+= kernelconfig.sgml kerneldebug.sgml lists.sgml memoryuse.sgml +SRCS+= handbook.sgml history.sgml hw.sgml install.sgml isdn.sgml  +SRCS+= kerberos.sgml kernelconfig.sgml kerneldebug.sgml  +SRCS+= lists.sgml mail.sgml memoryuse.sgml  SRCS+= mirrors.sgml nfs.sgml nutshell.sgml pgpkeys.sgml policies.sgml -SRCS+= porting.sgml ports.sgml ppp.sgml printing.sgml quotas.sgml relnotes.sgml  -SRCS+= routing.sgml scsi.sgml sections.sgml sio.sgml skey.sgml slipc.sgml  +SRCS+= porting.sgml ports.sgml ppp.sgml printing.sgml  +SRCS+= quotas.sgml relnotes.sgml routing.sgml  +SRCS+= serial.sgml scsi.sgml sections.sgml sio.sgml skey.sgml slipc.sgml   SRCS+= slips.sgml stable.sgml submitters.sgml sup.sgml synching.sgml   SRCS+= term.sgml troubleshooting.sgml userppp.sgml uart.sgml linuxemu.sgml diff --git a/share/doc/handbook/authors.sgml b/share/doc/handbook/authors.sgml index aa39548f9ffd..17cb886cd56e 100644 --- a/share/doc/handbook/authors.sgml +++ b/share/doc/handbook/authors.sgml @@ -1,4 +1,4 @@ -<!-- $Id: authors.sgml,v 1.39 1996/11/04 17:21:18 jhay Exp $ --> +<!-- $Id: authors.sgml,v 1.37.2.1 1996/11/06 08:46:33 phk Exp $ -->  <!-- The FreeBSD Documentation Project -->  <!--  @@ -12,8 +12,8 @@ and double quotes.    name='<asami@FreeBSD.ORG>'></tt>">  <!ENTITY a.awebster "Andrew Webster  -  <tt><htmlurl url='mailto:awebster@dataradio.com'  -  name='<awebster@dataradio.com>'></tt>"> +  <tt><htmlurl url='mailto:awebster@pubnix.net'  +  name='<awebster@pubnix.net>'></tt>">  <!ENTITY a.davidg "David Greenman     <tt><htmlurl url='mailto:davidg@FreeBSD.ORG'  diff --git a/share/doc/handbook/contrib.sgml b/share/doc/handbook/contrib.sgml index dc3e0a3ca148..329f46e41724 100644 --- a/share/doc/handbook/contrib.sgml +++ b/share/doc/handbook/contrib.sgml @@ -1,4 +1,4 @@ -<!-- $Id: contrib.sgml,v 1.145.2.3 1996/11/16 21:11:01 phk Exp $ --> +<!-- $Id: contrib.sgml,v 1.145.2.4 1996/11/21 16:39:12 phk Exp $ -->  <!-- The FreeBSD Documentation Project -->  <!-- Please try to keep the file 'avail' (from CVSROOT)  @@ -260,6 +260,7 @@  	  <item>Keith Bostic <bostic@toe.CS.Berkeley.EDU>  	  <item>Keith Moore <?>  	  <item>Kirk McKusick <mckusick@mckusick.com> +	  <item>Koichi Sato <copan@ppp.fastnet.or.jp>  	  <item>Kostya Lukin <lukin@okbmei.msk.su>  	  <item>Kurt Olsen <kurto@tiny.mcs.usu.edu>  	  <item>Lars Koeller <Lars_Koeller@odie.physik2.uni-rostock.de> @@ -268,7 +269,7 @@  	  <item>Marc Frajola <marc@dev.com>  	  <item>Marc Ramirez <mrami@mramirez.sy.yale.edu  	  <item>Marc van Kempen <wmbfmk@urc.tue.nl> -	  <item>Mark Huizer <xaa@stack.urc.tue.nl> +	  <item>Mark Huizer <xaa@stack.nl>  	  <item>Mark Tinguely <tinguely@plains.nodak.edu>  	    <tinguely@hookie.cs.ndsu.NoDak.edu>  	  <item>Martin Birgmeier @@ -307,12 +308,14 @@  	  <item>Robert Sanders <rsanders@mindspring.com>  	  <item>Robert Withrow <witr@rwwa.com>  	  <item>Ronald Kuehn <kuehn@rz.tu-clausthal.de> +	  <item>Sander Vesik <sander@haldjas.folklore.ee>  	  <item>Sascha Wildner <swildner@channelz.GUN.de>  	  <item>Scott Blachowicz <scott@sabami.seaslug.org>  	  <item>Serge V. Vakulenko <vak@zebub.msk.su>  	  <item>Soren Dayton <csdayton@midway.uchicago.edu>  	  <item>Stephen McKay <syssgm@devetir.qld.gov.au>  	  <item>Steve Gerakines <steve2@genesis.tiac.net> +	  <item>Suzuki Yoshiaki <zensyo@ann.tama.kawasaki.jp>  	  <item>Taguchi Takeshi <taguchi@tohoku.iij.ad.jp>  	  <item>Tatsumi Hosokawa <hosokawa@mt.cs.keio.ac.jp>            <item>Terry Lambert <terry@lambert.org> diff --git a/share/doc/handbook/development.sgml b/share/doc/handbook/development.sgml index 67ce9abfcc84..698fbf74c8df 100644 --- a/share/doc/handbook/development.sgml +++ b/share/doc/handbook/development.sgml @@ -1,4 +1,4 @@ -<!-- $Id: development.sgml,v 1.7 1996/11/05 11:44:48 asami Exp $ --> +<!-- $Id: development.sgml,v 1.6.2.1 1996/11/06 08:46:37 phk Exp $ -->  <!-- The FreeBSD Documentation Project -->  <sect><heading>The FreeBSD development model<label id="development"></heading> @@ -35,7 +35,7 @@ to numerous mirror machines throughout the world.  The CVS tree, as well  as the <ref id="current" name="-current"> and <ref id="stable"  name="-stable"> trees which are checked out of it, can be easily  replicated to your own machine as well.  Please refer to the -<ref id="synching" name="Syncronizing your source tree"> +<ref id="synching" name="Synchronizing your source tree">  section for more information on doing this.</item>  <item><bf>The committers list</bf><label id="development:committers"> @@ -68,7 +68,7 @@ name="areas of responsibility">, meaning that they are committed to  ensuring that some large portion of the system works as advertised.  Note that most members of the core team are volunteers when it comes  to FreeBSD development and do not benefit from the project -financially, so "committment" should also not be misconstrued as +financially, so "commitment" should also not be misconstrued as  meaning "guaranteed support."  The ``board of directors'' analogy  above is not actually very accurate, and it may be more suitable to  say that these are the people who gave up their lives in favor of @@ -84,7 +84,7 @@ more non-centralized development is to subscribe to the &a.hackers;  (see <ref id="eresources:mail" name="mailing list info">) where such  things are discussed. -<ref id="contrib:additional" name="The list"> of those who've +<ref id="contrib:additional" name="The list"> of those who have  contributed something which made its way into our source tree is  a long and growing one, so why not join it by contributing something  back to FreeBSD today? <tt>:-)</tt> diff --git a/share/doc/handbook/dialup.sgml b/share/doc/handbook/dialup.sgml index 29e7b4e9ac2b..4f6381c72e7d 100644 --- a/share/doc/handbook/dialup.sgml +++ b/share/doc/handbook/dialup.sgml @@ -1,6 +1,6 @@  <!-- This is an SGML document in the linuxdoc DTD of the Tutorial for       Configuring a FreeBSD for Dialup Services by Guy Helmer. -     $Id: dialup.sgml,v 1.12 1996/08/10 17:51:15 alex Exp $ +     $Id: dialup.sgml,v 1.13 1996/08/15 20:52:18 mpp Exp $  <!DOCTYPE linuxdoc PUBLIC "-//Linux//DTD linuxdoc//EN"> @@ -15,7 +15,7 @@ Configuring FreeBSD for Dialup Services  --> -<sect><heading>Dialup access<label id="dialup"></heading> +<sect><heading>Dialin service<label id="dialup"></heading>  <p><em>Contributed by &a.ghelmer;.</em> diff --git a/share/doc/handbook/handbook.sgml b/share/doc/handbook/handbook.sgml index 4f0366cc986c..f832019d46f6 100644 --- a/share/doc/handbook/handbook.sgml +++ b/share/doc/handbook/handbook.sgml @@ -1,4 +1,4 @@ -<!-- $Id: handbook.sgml,v 1.58 1996/10/04 22:54:02 wosch Exp $ --> +<!-- $Id: handbook.sgml,v 1.58.2.1 1996/11/16 21:11:04 phk Exp $ -->  <!-- The FreeBSD Documentation Project -->  <!DOCTYPE linuxdoc PUBLIC "-//FreeBSD//DTD linuxdoc//EN" [ @@ -44,12 +44,12 @@ you are interested in helping with this project, send  email to the &a.doc; The latest version of this  document is always available from  the <url url="http://www.FreeBSD.ORG/" name="FreeBSD World Wide -Web server">.  It may also be downloaded in ascii, LaTeX, postscript  +Web server">.  It may also be downloaded in plain text, postscript   or HTML from the <url url="ftp://ftp.FreeBSD.ORG/pub/FreeBSD/docs"  name="FreeBSD FTP server"> or one of the numerous -<ref id="mirrors" name="mirror sites">. +<ref id="mirrors" name="mirror sites">.  You may also want to <url url="/search.html" name="Search the Handbook">.	 +  </abstract> -	        <toc>  <!-- ************************************************************ -->	       @@ -106,11 +106,11 @@ name="FreeBSD FTP server"> or one of the numerous      <part><heading>Network Communications</heading> -    <chapt><heading>Basic Networking</heading> -      <sect><heading>* Ethernet basics</heading> -      <sect><heading>* Serial basics</heading> +    <chapt><heading>Serial Communications</heading> +      &serial;        &term;        &dialup; +      &dialout;      <chapt><heading>PPP and SLIP</heading> @@ -135,9 +135,7 @@ name="FreeBSD FTP server"> or one of the numerous        <sect><heading>* Yellow Pages/NIS</heading>        &isdn;	 -    <chapt><heading>* Mail</heading> - - +    &mail;  <!-- ************************************************************ -->	       diff --git a/share/doc/handbook/hw.sgml b/share/doc/handbook/hw.sgml index 7c9e72c0e18c..12a15b757fe0 100644 --- a/share/doc/handbook/hw.sgml +++ b/share/doc/handbook/hw.sgml @@ -1,4 +1,4 @@ -<!-- $Id: hw.sgml,v 1.47 1996/10/29 03:28:04 alex Exp $ --> +<!-- $Id: hw.sgml,v 1.47.2.1 1996/11/28 08:20:56 phk Exp $ -->  <!-- The FreeBSD Documentation Project -->  <!-- @@ -35,7 +35,7 @@  <p>The following links have proven useful in selecting hardware.  Though some of what you see won't necessarily be specific (or even  applicable) to FreeBSD, most of the hardware information out there -is OS independant.  Please check with the FreeBSD hardware guide +is OS independent.  Please check with the FreeBSD hardware guide  to make sure that your chosen configuration is supported before  making any purchases.</p> @@ -141,7 +141,7 @@ Slippery when wet.  Beware of dog.      <p>Generally speaking, most SCSI CDROM drives I've seen have been of      pretty solid construction and you probably won't go wrong with an HP or      NEC SCSI CDROM drive either.  SCSI CDROM prices also appear to have -    dropped considerably in the last few months and are now quite competetive +    dropped considerably in the last few months and are now quite competitive      with IDE CDROMs while remaining a technically superior solution.  I now see      no reason whatsoever to settle for an IDE CDROM drive if given a choice      between the two. @@ -217,7 +217,7 @@ Slippery when wet.  Beware of dog.      <p>Multiport card options are somewhat more numerous, though it has to be      said that FreeBSD's support for <htmlurl url="http://www.cyclades.com/"      name="Cyclades">'s products is probably the tightest, primarily as a result -    of that company's committment to making sure that we are adequately supplied +    of that company's commitment to making sure that we are adequately supplied      with evaluation boards and technical specs.  I've heard that the Cyclom-16Ye      offers the best price/performance, though I've not checked the prices lately.      Other multiport cards I've heard good things about are the BOCA and AST @@ -619,7 +619,7 @@ name="Exabyte EXB-8505"></Heading>  	<p>The boot message identifier for this drive is "EXABYTE  EXB-85058SQANXR1 05B0" "type 1 removable SCSI 2"  	<p>This is an 8mm tape drive which supports compression, and is -              upward compatable with the EXB-5200 and EXB-8500. +              upward compatible with the EXB-5200 and EXB-8500.  	<p>Native capacity is 5GB.    	<p>The drive supports hardware data compression.  	<p>Data transfer rate is 300kB/s. @@ -934,7 +934,7 @@ the benefits and drawbacks of helical-scan apply to both 4mm and  	<p>8mm tapes are the most common SCSI tape drives; they  are the best choice of exchanging tapes.  Nearly every site has  an exabyte 2 GB 8mm tape drive.  8mm drives are reliable, -convienent and quiet.  Cartidges are inexpensive and small (4.8 x +convenient and quiet.  Cartridges are inexpensive and small (4.8 x  3.3 x 0.6 inches; 122 x 84 x 15 mm).  One downside of 8mm tape is  relatively short head and tape life due to the high rate of  relative motion of the tape across the heads. diff --git a/share/doc/handbook/install.sgml b/share/doc/handbook/install.sgml index 63f95793e547..e124ef5beb97 100644 --- a/share/doc/handbook/install.sgml +++ b/share/doc/handbook/install.sgml @@ -1,4 +1,4 @@ -<!-- $Id: install.sgml,v 1.39 1996/11/04 17:21:20 jhay Exp $ --> +<!-- $Id: install.sgml,v 1.38.2.1 1996/11/06 08:46:38 phk Exp $ -->  <!-- The FreeBSD Documentation Project -->  <!-- @@ -61,7 +61,13 @@ C:\> rawrite  	    program will prompt you for the floppy drive  	    containing the disk you want to write to (A: or  	    B:) and the name of the file to put on disk (boot.flp). -	  </item> + +            <p><bf>Note:</bf>  It has been widely reported that Windows95 +	    will only successfully support rawrite.exe in DOS mode +	    and that Windows NT prevents it from working at all.  You +	    will have to make your floppy images on a different machine +	    if you're running Windows NT and boot first into DOS mode if +	    you're running Windows95.</p></item>  	  <item>If you are using a UNIX system:  <tscreen> diff --git a/share/doc/handbook/printing.sgml b/share/doc/handbook/printing.sgml index e7ecb4f425d7..f9422be650aa 100644 --- a/share/doc/handbook/printing.sgml +++ b/share/doc/handbook/printing.sgml @@ -1,7 +1,7 @@  <!-- This is an SGML document in the linuxdoc DTD describing       Printing with FreeBSD.  By Sean Kelly, 1995. -     $Id: printing.sgml,v 1.10 1996/10/04 22:54:11 wosch Exp $ +     $Id: printing.sgml,v 1.11 1996/10/05 18:36:21 wosch Exp $       The FreeBSD Documentation Project @@ -2085,9 +2085,9 @@ lpr -#3 parser.c parser.h  	    <tt/lprps/) to convert it to PostScript.  It then uses  	    <tt/lprps/ to send the job to the printer. -	    <tt/lprps/ should be part of the FreeBSD ports collection -	    (see <ref id="ports" name="The Ports Collection">); if not, -	    it should be shortly.  You can fetch, build and install it +	    <tt/lprps/ is part of the FreeBSD ports collection +	    (see <ref id="ports" name="The Ports Collection">). +	    You can fetch, build and install it  	    yourself, of course.  After installing <tt/lprps/, just  	    specify the pathname to the <tt/psif/ program that is part  	    of <tt/lprps/.  If you installed <tt/lprps/ from the ports diff --git a/share/doc/handbook/sections.sgml b/share/doc/handbook/sections.sgml index 38e246a65158..d9978beb069f 100644 --- a/share/doc/handbook/sections.sgml +++ b/share/doc/handbook/sections.sgml @@ -1,4 +1,4 @@ -<!-- $Id: sections.sgml,v 1.16 1996/07/29 07:15:57 jkh Exp $ --> +<!-- $Id: sections.sgml,v 1.17 1996/09/09 01:56:58 jkh Exp $ -->  <!-- The FreeBSD Documentation Project -->  <!-- Entities containing all the pieces of the handbook are --> @@ -14,6 +14,7 @@  <!ENTITY crypt SYSTEM "crypt.sgml">  <!ENTITY development SYSTEM "development.sgml">  <!ENTITY dialup SYSTEM "dialup.sgml"> +<!ENTITY dialout SYSTEM "dialout.sgml">  <!ENTITY diskless SYSTEM "diskless.sgml">  <!ENTITY dma SYSTEM "dma.sgml">  <!ENTITY eresources SYSTEM "eresources.sgml"> @@ -30,6 +31,7 @@  <!ENTITY kernelconfig SYSTEM "kernelconfig.sgml">  <!ENTITY kerneldebug SYSTEM "kerneldebug.sgml">  <!ENTITY linuxemu SYSTEM "linuxemu.sgml"> +<!ENTITY mail SYSTEM "mail.sgml">  <!ENTITY memoryuse SYSTEM "memoryuse.sgml">  <!ENTITY mirrors SYSTEM "mirrors.sgml">  <!ENTITY nfs SYSTEM "nfs.sgml"> @@ -43,6 +45,7 @@  <!ENTITY quotas SYSTEM "quotas.sgml">  <!ENTITY relnotes SYSTEM "relnotes.sgml">  <!ENTITY routing SYSTEM "routing.sgml"> +<!ENTITY serial SYSTEM "serial.sgml">  <!ENTITY scsi SYSTEM "scsi.sgml">  <!ENTITY sio SYSTEM "sio.sgml">  <!ENTITY cy SYSTEM "cyclades.sgml"> diff --git a/share/doc/ja_JP.EUC/handbook/Makefile b/share/doc/ja_JP.EUC/handbook/Makefile index 384d401e9384..a660edf8acd5 100644 --- a/share/doc/ja_JP.EUC/handbook/Makefile +++ b/share/doc/ja_JP.EUC/handbook/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.1.1.1 1996/11/15 05:14:38 asami Exp $ +# $Id: Makefile,v 1.1.1.1.2.1 1996/11/21 16:40:40 phk Exp $  # Original revision: 1.17  # The FreeBSD Japanese Documentation Project @@ -8,16 +8,18 @@ FORMATS= html roff  SRCS= authors.sgml basics.sgml bibliography.sgml boothelp.sgml  SRCS+= booting.sgml contrib.sgml crypt.sgml ctm.sgml current.sgml  -SRCS+= cyclades.sgml development.sgml dialup.sgml +SRCS+= cyclades.sgml development.sgml dialup.sgml dialout.sgml  SRCS+= diskless.sgml dma.sgml eresources.sgml esdi.sgml   SRCS+= firewalls.sgml glossary.sgml goals.sgml -SRCS+= handbook.sgml history.sgml hw.sgml install.sgml isdn.sgml kerberos.sgml -SRCS+= kernelconfig.sgml kerneldebug.sgml memoryuse.sgml +SRCS+= handbook.sgml history.sgml hw.sgml install.sgml isdn.sgml +SRCS+= kerberos.sgml kernelconfig.sgml kerneldebug.sgml +SRCS+= lists.sgml mail.sgml memoryuse.sgml  SRCS+= mirrors.sgml nfs.sgml nutshell.sgml pgpkeys.sgml policies.sgml -SRCS+= porting.sgml ports.sgml ppp.sgml printing.sgml quotas.sgml relnotes.sgml  -SRCS+= routing.sgml scsi.sgml sections.sgml sio.sgml skey.sgml slipc.sgml  +SRCS+= porting.sgml ports.sgml ppp.sgml printing.sgml +SRCS+= quotas.sgml relnotes.sgml routing.sgml +SRCS+= serial.sgml scsi.sgml sections.sgml sio.sgml skey.sgml slipc.sgml   SRCS+= slips.sgml stable.sgml submitters.sgml sup.sgml synching.sgml   SRCS+= term.sgml troubleshooting.sgml userppp.sgml uart.sgml linuxemu.sgml -SRCS+= lists.sgml jcontrib.sgml jmembers.sgml +SRCS+= jcontrib.sgml jmembers.sgml  .include <bsd.sgml.mk> diff --git a/share/doc/ja_JP.EUC/handbook/authors.sgml b/share/doc/ja_JP.EUC/handbook/authors.sgml index e133cae16577..fa7a9616a41a 100644 --- a/share/doc/ja_JP.EUC/handbook/authors.sgml +++ b/share/doc/ja_JP.EUC/handbook/authors.sgml @@ -1,6 +1,6 @@ -<!-- $Id$ --> +<!-- $Id: authors.sgml,v 1.2 1996/12/01 20:32:34 max Exp $ -->  <!-- The FreeBSD Japanese Documentation Project --> -<!-- Original revision: 1.39 --> +<!-- Original revision: 1.40 -->  <!--   Names and email address of contributing authors and CVS committers. @@ -13,8 +13,8 @@ and double quotes.    name='<asami@FreeBSD.ORG>'></tt>">  <!ENTITY a.awebster "Andrew Webster  -  <tt><htmlurl url='mailto:awebster@dataradio.com'  -  name='<awebster@dataradio.com>'></tt>"> +  <tt><htmlurl url='mailto:awebster@pubnix.net'  +  name='<awebster@pubnix.net>'></tt>">  <!ENTITY a.davidg "David Greenman     <tt><htmlurl url='mailto:davidg@FreeBSD.ORG'  diff --git a/share/doc/ja_JP.EUC/handbook/contrib.sgml b/share/doc/ja_JP.EUC/handbook/contrib.sgml index 2534b8516a3f..ffa96566460b 100644 --- a/share/doc/ja_JP.EUC/handbook/contrib.sgml +++ b/share/doc/ja_JP.EUC/handbook/contrib.sgml @@ -1,6 +1,6 @@ -<!-- $Id: contrib.sgml,v 1.2 1996/11/19 11:33:33 max Exp $ --> +<!-- $Id: contrib.sgml,v 1.5 1996/12/01 21:11:27 max Exp $ -->  <!-- The FreeBSD Japanese Documentation Project --> -<!-- Original revision: 1.155 --> +<!-- Original revision: 1.159 -->  <!-- Please try to keep the file 'avail' (from CVSROOT)        in sync with the list of FreeBSD Developers --> @@ -260,6 +260,7 @@  	  <item>Keith Bostic <bostic@toe.CS.Berkeley.EDU>  	  <item>Keith Moore <?>  	  <item>Kirk McKusick <mckusick@mckusick.com> +	  <item>Koichi Sato <copan@ppp.fastnet.or.jp>  	  <item>Kostya Lukin <lukin@okbmei.msk.su>  	  <item>Kurt Olsen <kurto@tiny.mcs.usu.edu>  	  <item>Lars Koeller <Lars_Koeller@odie.physik2.uni-rostock.de> @@ -268,7 +269,7 @@  	  <item>Marc Frajola <marc@dev.com>  	  <item>Marc Ramirez <mrami@mramirez.sy.yale.edu  	  <item>Marc van Kempen <wmbfmk@urc.tue.nl> -	  <item>Mark Huizer <xaa@stack.urc.tue.nl> +	  <item>Mark Huizer <xaa@stack.nl>  	  <item>Mark Tinguely <tinguely@plains.nodak.edu>  	    <tinguely@hookie.cs.ndsu.NoDak.edu>  	  <item>Martin Birgmeier @@ -307,12 +308,14 @@  	  <item>Robert Sanders <rsanders@mindspring.com>  	  <item>Robert Withrow <witr@rwwa.com>  	  <item>Ronald Kuehn <kuehn@rz.tu-clausthal.de> +	  <item>Sander Vesik <sander@haldjas.folklore.ee>  	  <item>Sascha Wildner <swildner@channelz.GUN.de>  	  <item>Scott Blachowicz <scott@sabami.seaslug.org>  	  <item>Serge V. Vakulenko <vak@zebub.msk.su>  	  <item>Soren Dayton <csdayton@midway.uchicago.edu>  	  <item>Stephen McKay <syssgm@devetir.qld.gov.au>  	  <item>Steve Gerakines <steve2@genesis.tiac.net> +	  <item>Suzuki Yoshiaki <zensyo@ann.tama.kawasaki.jp>  	  <item>Taguchi Takeshi <taguchi@tohoku.iij.ad.jp>  	  <item>Tatsumi Hosokawa <hosokawa@mt.cs.keio.ac.jp>            <item>Terry Lambert <terry@lambert.org> diff --git a/share/doc/ja_JP.EUC/handbook/development.sgml b/share/doc/ja_JP.EUC/handbook/development.sgml index e1cc80c71531..7179ca18a530 100644 --- a/share/doc/ja_JP.EUC/handbook/development.sgml +++ b/share/doc/ja_JP.EUC/handbook/development.sgml @@ -1,6 +1,6 @@ -<!-- $Id$ --> +<!-- $Id: development.sgml,v 1.2 1996/12/01 11:46:09 max Exp $ -->  <!-- The FreeBSD Japanese Documentation Project --> -<!-- Original revision: 1.7 --> +<!-- Original revision: 1.8 -->  <sect><heading>FreeBSD¤Î³«È¯¥â¥Ç¥ë<label id="development"></heading> diff --git a/share/doc/ja_JP.EUC/handbook/dialup.sgml b/share/doc/ja_JP.EUC/handbook/dialup.sgml index 333ec8cf0ce6..82783f91f340 100644 --- a/share/doc/ja_JP.EUC/handbook/dialup.sgml +++ b/share/doc/ja_JP.EUC/handbook/dialup.sgml @@ -1,8 +1,8 @@  <!-- This is an SGML document in the linuxdoc DTD of the Tutorial for       Configuring a FreeBSD for Dialup Services by Guy Helmer. -     $Id$ +     $Id: dialup.sgml,v 1.2 1996/12/01 12:38:41 max Exp $       The FreeBSD Japanese Documentation Project -     Original revision: 1.13 +     Original revision: 1.14  <!DOCTYPE linuxdoc PUBLIC "-//Linux//DTD linuxdoc//EN"> @@ -17,7 +17,7 @@ FreeBSD ¤Ç¥À¥¤¥¢¥ë¥¢¥Ã¥× ¥µ¡¼¥Ó¥¹¤ò¹Ô¤¦¤¿¤á¤ÎÀßÄê  --> -<sect><heading>¥À¥¤¥¢¥ë¥¢¥Ã¥×¤Ë¤è¤ë¥¢¥¯¥»¥¹<label id="dialup"></heading> +<sect><heading>¥À¥¤¥¢¥ë¥¤¥ó¥µ¡¼¥Ó¥¹<label id="dialup"></heading>  <p><em>¸¶ºî: &a.ghelmer;.</em>  <p><em>Ìõ: &a.max;.<newline>6 September 1996.</em> diff --git a/share/doc/ja_JP.EUC/handbook/handbook.sgml b/share/doc/ja_JP.EUC/handbook/handbook.sgml index be0bff09cf34..be867403c71e 100644 --- a/share/doc/ja_JP.EUC/handbook/handbook.sgml +++ b/share/doc/ja_JP.EUC/handbook/handbook.sgml @@ -1,6 +1,6 @@ -<!-- $Id: handbook.sgml,v 1.3 1996/11/19 11:33:33 max Exp $ --> +<!-- $Id: handbook.sgml,v 1.4 1996/12/02 08:00:57 max Exp $ -->  <!-- The FreeBSD Japanese Documentation Project --> -<!-- Original revision: 1.59 --> +<!-- Original revision: 1.61 -->  <!DOCTYPE linuxdoc PUBLIC "-//FreeBSD//DTD linuxdoc//EN" [ @@ -52,15 +52,17 @@ FreeBSD ¥É¥¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¥×¥í¥¸¥§¥¯¥È¤Ë¤è¤Ã¤ÆÊÔ½¸¤µ¤ì¤Æ¤¤¤Þ¤¹.  µÄÏÀ¤µ¤ì¤Æ¤¤¤Þ¤¹. ɬÍפ˱þ¤¸¤ÆÆüËܸì¥É¥¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¥×¥í¥¸¥§¥¯¥È¤«¤é  Ëܲȥɥ¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó¥×¥í¥¸¥§¥¯¥È¤ËÂФ·¤Æ¥Õ¥£¡¼¥É¥Ð¥Ã¥¯¤ò¤ª¤³¤Ê¤¤¤Þ¤¹¤Î¤Ç,   ±Ñ¸ì¤¬ÆÀ°Õ¤Ç¤Ê¤¤Êý¤Ï &a.doc-jp; ¤Þ¤ÇÆüËܸì¤Ç¥³¥á¥ó¥È¤ò¤ª´ó¤»¤¯¤À¤µ¤¤.  -¤³¤Î¥É¥¥å¥á¥ó¥È¤ÎºÇ¿·¥Ð¡¼¥¸¥ç¥ó¤Ï  +¤³¤Î¥É¥¥å¥á¥ó¥È¤ÎºÇ¿·¥Ð¡¼¥¸¥ç¥ó¤Ï, ¤¤¤Ä¤Ç¤â   <url url="http://www.jp.FreeBSD.ORG/"  -name="ÆüËܹñÆâ FreeBSD World Wide Web ¥µ¡¼¥Ð"> +name="ÆüËܹñÆâÈÇ FreeBSD World Wide Web ¥µ¡¼¥Ð">¤ä  <url url="http://www.FreeBSD.ORG/" name="FreeBSD World Wide Web ¥µ¡¼¥Ð"> -¤«¤é¤¤¤Ä¤Ç¤âÆþ¼ê¤Ç¤¤Þ¤¹.  +¤«¤éÆþ¼ê¤Ç¤¤Þ¤¹¤·,   <url url="ftp://ftp.FreeBSD.ORG/pub/FreeBSD/docs" name="FreeBSD FTP ¥µ¡¼¥Ð"> -¤ä, ¤¿¤¯¤µ¤ó¤¢¤ë<ref id="mirrors" name="¥ß¥é¡¼¥µ¥¤¥È">¤«¤é ascii, LaTeX,  -postscript, HTML ¤Ê¤É¤Î·Á¼°¤Ç¥À¥¦¥ó¥í¡¼¥É¤¹¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹. </abstract> +¤ä, ¤¿¤¯¤µ¤ó¤¢¤ë<ref id="mirrors" name="¥ß¥é¡¼¥µ¥¤¥È">¤«¤é¥×¥ì¥¤¥ó¥Æ¥¥¹¥È,  +postscript, HTML ¤Ê¤É¤Î·Á¼°¤Ç¥À¥¦¥ó¥í¡¼¥É¤¹¤ë¤³¤È¤â¤Ç¤¤Þ¤¹.  +¤Þ¤¿, <url url="/search.html" name="¥Ï¥ó¥É¥Ö¥Ã¥¯¤Î¸¡º÷">¤â²Äǽ¤Ç¤¹.  +</abstract>        <toc>  <!-- ************************************************************ --> @@ -119,11 +121,11 @@ FreeBSD ¥×¥í¥¸¥§¥¯¥È¤Ø¤Î²¿¤é¤«¤Î¹×¸¥ (¥½¡¼¥¹¥³¡¼¥É, µ¡´ï, »ñ¶â¤ÎÄ󶡤ʤÉ)      <part><heading>¥Í¥Ã¥È¥ï¡¼¥¯ÄÌ¿®</heading> -    <chapt><heading>¥Í¥Ã¥È¥ï¡¼¥¯¤Î´ðÁÃ</heading> -      <sect><heading>* ¥¤¡¼¥µ¥Í¥Ã¥È¤Î´ðÁÃ</heading> -      <sect><heading>* ¥·¥ê¥¢¥ëÀܳ¤Î´ðÁÃ</heading> +    <chapt><heading>¥·¥ê¥¢¥ëÄÌ¿®</heading> +      &serial;        &term;        &dialup; +      &dialout;      <chapt><heading>PPP ¤È SLIP</heading> @@ -146,9 +148,7 @@ PPP Àܳ¤Ë¤Ï, 2 ¼ïÎà¤ÎÊýË¡¤¬Ä󶡤µ¤ì¤Æ¤¤¤Þ¤¹:        <sect><heading>* ¥¤¥¨¥í¡¼¥Ú¡¼¥¸/NIS</heading>        &isdn; -    <chapt><heading>* ÅŻҥ᡼¥ë</heading> - - +    &mail;  <!-- ************************************************************ --> diff --git a/share/doc/ja_JP.EUC/handbook/porting.sgml b/share/doc/ja_JP.EUC/handbook/porting.sgml index e1937094ee11..a569b981a4d0 100644 --- a/share/doc/ja_JP.EUC/handbook/porting.sgml +++ b/share/doc/ja_JP.EUC/handbook/porting.sgml @@ -1,6 +1,6 @@ -<!-- $Id$ --> +<!-- $Id: porting.sgml,v 1.3 1996/12/02 14:21:34 max Exp $ -->  <!-- The FreeBSD Japanese Documentation Project --> -<!-- Original revision: 1.38 --> +<!-- Original revision: 1.44 -->  <sect1><heading>¥Õ¥ê¡¼¥½¥Õ¥È¥¦¥§¥¢¤Î°Ü¿¢<label id="porting"></heading> @@ -23,7 +23,7 @@  <p>¤³¤ì¤«¤é, FreeBSD 2.xÍѤÎport¤òºî¤ëºÝ¤Î, ¤¤¤¯¤Ä¤«¤Î¥¬¥¤¥É¥é¥¤¥ó¤ò  ÀâÌÀ¤·¤Þ¤¹. ¼ÂºÝ¤Ëport¤ò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤È¤¤Î¤Û¤È¤ó¤É¤Î»Å»ö¤Ï  -<tt>/usr/share/mk/bsd.port.mk</tt>¤È¤¤¤¦¥Õ¥¡¥¤¥ë¤Ç¤ª¤³¤Ê¤¤¤Þ¤¹¡£ +<tt>/usr/share/mk/bsd.port.mk</tt>¤È¤¤¤¦¥Õ¥¡¥¤¥ë¤Ç¤ª¤³¤Ê¤¤¤Þ¤¹.  Ports¥³¥ì¥¯¥·¥ç¥ó¤Ë¤Ä¤¤¤Æ¤Î¤µ¤é¤ËºÙ¤«¤¤ÆâÉô¤ÎƯ¤¤Ë¤Ä¤¤¤Æ¤Ï, ¤½¤Á¤é¤Î¥Õ¥¡¥¤¥ë¤ò  »²¾È¤·¤Æ¤¯¤À¤µ¤¤. @@ -32,7 +32,7 @@ Ports¥³¥ì¥¯¥·¥ç¥ó¤Ë¤Ä¤¤¤Æ¤Î¤µ¤é¤ËºÙ¤«¤¤ÆâÉô¤ÎƯ¤¤Ë¤Ä¤¤¤Æ¤Ï, ¤½¤Á¤é¤Î¥Õ¥¡¥¤¥ë¤ò        <p>Ãí°Õ: ¤³¤³¤Ç¤Ï, Êѹ¹²Äǽ¤ÊÊÑ¿ô¤Î°ìÉô¤Ë¤Ä¤¤¤Æ¤Î¤ßµ½Ò¤·¤Æ¤¤  	¤Þ¤¹. ¤Û¤È¤ó¤É¤ÎÊÑ¿ô¤Ï<tt>bsd.port.mk</tt>¤Î»Ï¤á¤Ëµ½Ò¤¬¤¢¤ê -	¤Þ¤¹. ¤Þ¤¿¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤ÏÈóɸ½à¤Î¥¿¥Ö¤ÎÀßÄê¤Ë¤Ê¤Ã¤Æ¤¤¤Þ +	¤Þ¤¹. ¤Þ¤¿, ¤³¤Î¥Õ¥¡¥¤¥ë¤ÏÈóɸ½à¤Î¥¿¥Ö¤ÎÀßÄê¤Ë¤Ê¤Ã¤Æ¤¤¤Þ  	¤¹. <tt>Emacs</tt>¤Ï¥Õ¥¡¥¤¥ë¤Î¥í¡¼¥É»þ¤Ë¤³¤ì¤òǧ¼±¤·¤Þ¤¹¤¬,  	<tt>vi</tt>¤ä<tt>ex</tt>¤Ç¤Ï, ¥Õ¥¡¥¤¥ë¤ò¥í¡¼¥É¤·¤¿¤é  	`<tt>:set tabstop=4</tt>'¤Î¤è¤¦¤Ë¤·¤ÆÀµ¤·¤¤ÃͤòÀßÄꤹ¤ë¤³¤È¤¬¤Ç @@ -119,7 +119,7 @@ Ports¥³¥ì¥¯¥·¥ç¥ó¤Ë¤Ä¤¤¤Æ¤Î¤µ¤é¤ËºÙ¤«¤¤ÆâÉô¤ÎƯ¤¤Ë¤Ä¤¤¤Æ¤Ï, ¤½¤Á¤é¤Î¥Õ¥¡¥¤¥ë¤ò  2.1.5-RELEASE:                   199607  2.2-current (1996ǯ7·î12Æü¸½ºß): 199608  (¥ê¥ê¡¼¥¹¤¬½Ð¤ëËè¤ËÊѤï¤ê¤Þ¤¹)  </verb></tscreen> -¸«¤Æ¤ÎÄ̤ꡢ¤³¤ì¤Ïǯ¡¦·î¤È¤¤¤¦¥Õ¥©¡¼¥Þ¥Ã¥È¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹. +¸«¤Æ¤ÎÄ̤ê, ¤³¤ì¤Ïǯ¡¦·î¤È¤¤¤¦¥Õ¥©¡¼¥Þ¥Ã¥È¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹.        </itemize> @@ -580,6 +580,22 @@ work/foozolix-1.0/  	  ¤Ë, ¼«Æ°Åª¤ËºÇ¤â¶á¤¤¥Þ¥¹¥¿¥µ¥¤¥È¤ò¸¡½Ð¤·¤Æ, ¤½¤³¤«¤é¼è¤Ã¤Æ  	  ¤¯¤ë¥á¥«¥Ë¥º¥à¤ÎƳÆþ¤ò·×²è¤·¤Æ¤¤¤Þ¤¹. +	<p>¥ª¥ê¥¸¥Ê¥ë¤Îtar ¥Õ¥¡¥¤¥ë¤¬, X-contrib, GNU, Perl CPAN, TeX CTAN  +	  ¤Þ¤¿¤Ï Linux Sunsite ¤Ê¤É¤ÎÍ̾¤Ê¥¢¡¼¥«¥¤¥Ö¤Ë¤¢¤ë¾ì¹ç¤Ë¤Ï, +	  MASTER_SITE_XCONTRIB, MASTER_SITE_GNU, +	  MASTER_SITE_PERL_CPAN, MASTER_SITE_TEX_CTAN ¤ª¤è¤Ó  +	  MASTER_SITE_SUNSITE ¤òÍøÍѤ¹¤ë¤³¤È¤Ç, ´Êñ¤Ë¤³¤ì¤é¤Î¥µ¥¤¥È¤ò  +	  »ØÄꤹ¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹. ¤¢¤È¤Ï MASTER_SITE_SUBDIR ¤Ë¥¢¡¼¥«¥¤ +	  ¥ÖÆâ¤Ç¤Î¥Ñ¥¹¤ò»ØÄꤹ¤ë¤À¤±¤Ç¤¹. °Ê²¼¤ËÎã¤ò¼¨¤·¤Þ¤¹. +<tscreen><verb> +MASTER_SITES=         ${MASTER_SITE_XCONTRIB} +MASTER_SITE_SUBDIR=   applications +</verb></tscreen> +	<p>¥æ¡¼¥¶¤Ï<tt>/etc/make.conf</tt>Ãæ¤Ç MASTER_SITE_* ÊÑ¿ô¤òÀßÄê +	  ¤¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ, ¥Ç¥Õ¥©¥ë¥È¤Î FTP ¥µ¥¤¥È¤Ç¤Ï¤Ê¤¯, ¤³¤ì¤é¤Î +	  Í̾¤Ê¥¢¡¼¥«¥¤¥Ö¤Î¥ß¥é¡¼¤ÎÃæ¤Ç¹¥¤ß¤Î¤â¤Î¤ò»ÈÍѤ¹¤ë¤³¤È¤¬²Äǽ +	  ¤Ç¤¹. +        <sect3>  	<heading>PATCHFILES<label id="porting:patchfiles"></heading> @@ -907,24 +923,32 @@ FETCH_DEPENDS=  ncftp2:${PORTSDIR}/net/ncftp2  	<heading>¥Þ¥Ë¥å¥¢¥ë¤Î°µ½Ì, ¥Ð¥¤¥Ê¥ê¤Îstrip</heading>  	<p>¥Þ¥Ë¥å¥¢¥ë¤Ï°µ½Ì¤·, ¥Ð¥¤¥Ê¥ê¤Ïstrip¤·¤Æ¤¯¤À¤µ¤¤. ¥ª¥ê¥¸¥Ê¥ë -	  ¤Î¥½¡¼¥¹¤¬¤ä¤Ã¤Æ¤¯¤ì¤ë¾ì¹ç¤Ï¤½¤ì¤Ç¤¤¤¤¤Î¤Ç¤¹¤¬, ¤½¤¦¤Ç¤Ê¤¤¾ì -	  ¹ç¤Ë¤Ï<tt>post-install</tt>¥¿¡¼¥²¥Ã¥È¤ò»ØÄꤹ¤ë¤Î¤¬¤¤¤¤¤Ç¤·¤ç -	  ¤¦. ¥Þ¥Ë¥å¥¢¥ë¤Î°µ½Ì¤ò˾¤Þ¤Ê¤¤¥æ¡¼¥¶¤â¤¤¤Þ¤¹¤Î¤Ç, -	  <tt>/etc/make.conf</tt>¤Ç»ØÄê¤Ç¤¤ë<tt>NOMANCOMPRESS</tt>¤È -	  ¤¤¤¦ÊÑ¿ô¤ò¥Á¥§¥Ã¥¯¤¹¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤. Î㤨¤Ð, ¤³¤ó¤ÊÉ÷¤Ë -	  ¤Ê¤ê¤Þ¤¹: +	  ¤Î¥½¡¼¥¹¤¬¥Ð¥¤¥Ê¥ê¤ò strip¤·¤Æ¤¯¤ì¤ë¾ì¹ç¤ÏÎɤ¤¤Ç¤¹¤¬, +	  ¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¤Ë¤Ï <tt>post-install</tt>¥¿¡¼¥²¥Ã¥È¤ò»ØÄꤷ¤Æ  +	  strip ¤¹¤ë¤è¤¦¤Ë¤¹¤ë¤È¤è¤¤¤Ç¤·¤ç¤¦. Î㤨¤Ð, ¤³¤ó¤ÊÉ÷¤Ë¤Ê¤ê¤Þ +	  ¤¹:  <tscreen><verb>   post-install:  	 strip ${PREFIX}/bin/xdl - .if !defined(NOMANCOMPRESS) -	 gzip -9nf ${PREFIX}/man/man1/xdl.1 - .endif  </verb></tscreen> -  	<p>¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤¿¼Â¹Ô·Á¼°¤¬¤¹¤Ç¤Ëstrip¤µ¤ì¤Æ¤¤¤ë¤«¤É¤¦¤«  	  ¤Ï<tt>file</tt>¥³¥Þ¥ó¥É¤Ç³Îǧ¤Ç¤¤Þ¤¹. ¤³¤ì¤¬`not stripped'  	  ¤È¸À¤ï¤Ê¤±¤ì¤Ð, strip¤µ¤ì¤Æ¤¤¤ë¤È¤¤¤¦¤³¤È¤Ç¤¹.  +	<p>MAN[1-9LN] ÊÑ¿ô¤ò»ÈÍѤ¹¤ë¤È, ¥Þ¥Ë¥å¥¢¥ë¤Î°µ½Ì¤ò¼«Æ°Åª¤Ë¹Ô¤¦ +	  ¤³¤È¤¬¤Ç¤¤Þ¤¹. ¤³¤ÎÊýË¡¤ò»È¤¦¤È, ¥æ¡¼¥¶¤¬ +	  <tt>/etc/make.conf</tt>Ãæ¤Ç<tt>NOMANCOMPRESS</tt>¤òÀßÄꤷ, +	  ¥Þ¥Ë¥å¥¢¥ë¤Î°µ½Ì¤ò̵¸ú¤Ë¤·¤Æ¤¤¤ë¤«¤É¤¦¤«¤ò³Îǧ¤Ç¤¤Þ¤¹. +	  ¤³¤ì¤é¤ÎÊÑ¿ô¤Î»ØÄê¤Ï, <tt>MAINTAINER</tt> ¤Î»ØÄê¤Î¸å +	  ¤Î¥»¥¯¥·¥ç¥ó¤Î°ìÈֺǸå¤Ç¹Ô¤Ã¤Æ¤¯¤À¤µ¤¤. ¤³¤ó¤ÊÉ÷¤Ë»ØÄꤷ¤Þ¤¹: +<tscreen><verb> +MAN1=      foo.1 bar.1 +MAN5=      foo.conf.5 +MAN8=      baz.8 +</verb></tscreen> +	<p>¤Ê¤ª, ÉáÄÌ Imake ¤ò»È¤Ã¤Æ¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤ë X ¥¢¥×¥ê¥±¡¼¥·¥ç +	  ¥ó¤Î¾ì¹ç¤Ï¤³¤Î»ØÄê¤ÏɬÍפ¢¤ê¤Þ¤»¤ó. +        <sect3>  	<heading>INSTALL_* ¥Þ¥¯¥í</heading>  	<p> ¤¢¤Ê¤¿¼«¿È¤Î *-install ¥¿¡¼¥²¥Ã¥È¤Ç¥Õ¥¡¥¤¥ë¤ÎÀµ¤·¤¤¥â¡¼¥É¤È @@ -1079,20 +1103,21 @@ FETCH_DEPENDS=  ncftp2:${PORTSDIR}/net/ncftp2        <sect3>        <heading>¥Ç¥£¥ì¥¯¥È¥ê¹½À®</heading> -	<p>¥¤¥ó¥¹¥È¡¼¥ë»þ¤Ë¤Ï<tt>${PREFIX}</tt>¤ÎÀµ¤·¤¤¥µ¥Ö -	  ¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥Õ¥¡¥¤¥ë¤òÃÖ¤¯¤è¤¦¤Ë¿´¤¬¤±¤Æ¤¯¤À¤µ¤¤. ¥½¥Õ¥È¥¦¥§ -	  ¥¢¤Ë¤è¤Ã¤Æ¤Ï¿·¤·¤¤¥Ç¥£¥ì¥¯¥È¥ê¤ò°ì¤Äºî¤Ã¤Æ¥Õ¥¡¥¤¥ë¤òÁ´Éô¤½¤ì -	  ¤ËÆþ¤ì¤Æ¤·¤Þ¤¦¤â¤Î¤¬¤¢¤ê¤Þ¤¹¤¬, ¤½¤ì¤Ï¤è¤¯¤¢¤ê¤Þ¤»¤ó. ¤Þ¤¿,  -	  ¥Ð¥¤¥Ê¥ê, ¥Ø¥Ã¥À¥Õ¥¡¥¤¥ë¤È¥Þ¥Ë¥å¥¢¥ë°Ê³°¤Î¤¹¤Ù¤Æ¤ò  -	  `<tt>lib</tt>'¤È¤¤¤¦¥Ç¥£¥ì¥¯¥È¥ê¤ËÆþ¤ì¤Æ¤·¤Þ¤¦port¤â¤¢¤ê¤Þ -	  ¤¹¤¬, ¤³¤ì¤âBSDŪ¤Ê¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¹½À®¤«¤é¤¤¤¦¤ÈÀµ¤·¤¯¤¢¤ê -	  ¤Þ¤»¤ó. ¤³¤ì¤Ï°Ê²¼¤Î¤è¤¦¤Ëʬ»¶¤¹¤Ù¤¤Ç¤¹. `<tt>etc</tt>' ¤Ë -	  ¥»¥Ã¥È¥¢¥Ã¥×/¥³¥ó¥Õ¥£¥°¥ì¡¼¥·¥ç¥ó¥Õ¥¡¥¤¥ë, -	  `<tt>libexec</tt>' ¤ËÆâÉô¤Ç»ÈÍѤµ¤ì¤ë¥×¥í¥°¥é¥à (¥³¥Þ¥ó¥É¥é -	  ¥¤¥ó¤«¤é¸Æ¤Ð¤ì¤ë¤³¤È¤Î¤Ê¤¤¥³¥Þ¥ó¥É), `<tt>sbin</tt>' ¤Ë´ÉÍý -	  ¼ÔÍѤΥ³¥Þ¥ó¥É, ¤½¤·¤Æ `<tt>share</tt>' ¤Ë¥¢¡¼¥¥Æ¥¯¥Á¥ã¤Ë°Í -	  ¸¤·¤Ê¤¤¥Õ¥¡¥¤¥ë¤¬Æþ¤ê¤Þ¤¹. ¾ÜºÙ¤Ë¤Ä¤¤¤Æ¤Ï<tt>hier(7)</tt> -	  ¤ò¸«¤Æ¤¯¤À¤µ¤¤. <tt>/usr</tt>¤Î¹½À®Êý¿Ë¤Ï¤Û¤È¤ó¤É¤½¤Î¤Þ¤Þ  +	<p>¥¤¥ó¥¹¥È¡¼¥ë»þ¤Ë¤Ï<tt>${PREFIX}</tt>¤ÎÀµ¤·¤¤¥µ¥Ö¥Ç¥£ +	  ¥ì¥¯¥È¥ê¤Ë¥Õ¥¡¥¤¥ë¤òÃÖ¤¯¤è¤¦¤Ë¿´¤¬¤±¤Æ¤¯¤À¤µ¤¤. ¥½¥Õ¥È¥¦¥§¥¢ +	  ¤Ë¤è¤Ã¤Æ¤Ï¿·¤·¤¤¥Ç¥£¥ì¥¯¥È¥ê¤ò°ì¤Äºî¤Ã¤Æ¥Õ¥¡¥¤¥ë¤òÁ´Éô¤½¤ì¤Ë +	  Æþ¤ì¤Æ¤·¤Þ¤¦¤â¤Î¤¬¤¢¤ê¤Þ¤¹¤¬, ¤½¤ì¤Ï¤è¤¯¤¢¤ê¤Þ¤»¤ó. ¤Þ¤¿, ¥Ð +	  ¥¤¥Ê¥ê, ¥Ø¥Ã¥À¥Õ¥¡¥¤¥ë¤È¥Þ¥Ë¥å¥¢¥ë°Ê³°¤Î¤¹¤Ù¤Æ¤ò  +	  `<tt>lib</tt>'¤È¤¤¤¦¥Ç¥£¥ì¥¯¥È¥ê¤ËÆþ¤ì¤Æ¤·¤Þ¤¦port¤â¤¢¤ê¤Þ¤¹ +	  ¤¬, ¤³¤ì¤âBSDŪ¤Ê¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¹½À®¤«¤é¤¤¤¦¤ÈÀµ¤·¤¯¤¢¤ê¤Þ +	  ¤»¤ó. ¤³¤ì¤Ï°Ê²¼¤Î¤è¤¦¤Ëʬ»¶¤¹¤Ù¤¤Ç¤¹. `<tt>etc</tt>' ¤Ë¥»¥Ã +	  ¥È¥¢¥Ã¥×/¥³¥ó¥Õ¥£¥°¥ì¡¼¥·¥ç¥ó¥Õ¥¡¥¤¥ë, `<tt>libexec</tt>' ¤Ë +	  ÆâÉô¤Ç»ÈÍѤµ¤ì¤ë¥×¥í¥°¥é¥à (¥³¥Þ¥ó¥É¥é¥¤¥ó¤«¤é¸Æ¤Ð¤ì¤ë¤³¤È¤Î +	  ¤Ê¤¤¥³¥Þ¥ó¥É), `<tt>sbin</tt>' ¤Ë´ÉÍý¼ÔÍѤΥ³¥Þ¥ó¥É, +	  `<tt>info</tt>' ¤Ë GNU Info ÍѤΥɥ¥å¥á¥ó¥È, ¤½¤·¤Æ  +	  `<tt>share</tt>' ¤Ë¥¢¡¼¥¥Æ¥¯¥Á¥ã¤Ë°Í¸¤·¤Ê¤¤¥Õ¥¡¥¤¥ë¤¬Æþ¤ê +	  ¤Þ¤¹. ¾ÜºÙ¤Ë¤Ä¤¤¤Æ¤Ï<tt>hier(7)</tt>¤ò¸«¤Æ¤¯¤À¤µ +	  ¤¤. <tt>/usr</tt>¤Î¹½À®Êý¿Ë¤Ï¤Û¤È¤ó¤É¤½¤Î¤Þ¤Þ   	  <tt>/usr/local</tt>¤Ë¤â¤¢¤Æ¤Ï¤Þ¤ê¤Þ¤¹.        <sect3> @@ -1183,11 +1208,14 @@ lib/libtcl.so.7.3   [¤³¤³¤Ë¤Ïɸ½à¤Îbsd.port.mk¤ÎÊÑ¿ô¤Ç, ¾å¤Î¤É¤ì¤Ë¤â¤¢¤Æ¤Ï¤Þ¤é¤Ê¤¤¤â¤Î¤ò    ½ñ¤¤Þ¤¹] - [${DISTNAME}°Ê³°¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥½¡¼¥¹¤¬Å¸³«¤µ¤ì¤ë¤Ê¤é...] - WRKSRC=	${WRKDIR}/xdvi-new   [¥³¥ó¥Õ¥£¥°¥ì¡¼¥·¥ç¥ó, ¥³¥ó¥Ñ¥¤¥ë, ¥¤¥ó¥¹¥È¡¼¥ë¤Ê¤É¤Î»þ¤Ë¼ÁÌä¤ò¤¹¤ë    ¤Ê¤é...]   IS_INTERACTIVE=yes + [${DISTNAME}°Ê³°¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥½¡¼¥¹¤¬Å¸³«¤µ¤ì¤ë¤Ê¤é...] + WRKSRC=	${WRKDIR}/xdvi-new + [ÇÛÉÛ¤µ¤ì¤Æ¤¤¤ë¥Ñ¥Ã¥Á¤¬ ${WRKSRC} ¤ËÂФ¹¤ëÁêÂХѥ¹¤Çºî¤é¤ì¤Æ¤¤ +¤Ê¤¤¾ì¹ç¤Ë¤³¤ÎÊÑ¿ô¤Î»ØÄ꤬ɬÍפ«¤â...] + PATCH_DIST_STRIP=	-p1   [GNU autoconf¤Ë¤è¤Ã¤ÆÀ¸À®¤µ¤ì¤¿ "configure" ¥¹¥¯¥ê¥×¥È¤òÁö¤é¤»¤¿¤¤¤Ê¤é...]   GNU_CONFIGURE=	yes   [/usr/bin/make¤Ç¤Ê¤¯, GNU make¤ò»È¤ï¤Ê¤¤¤È¤¤¤±¤Ê¤¤¤Ê¤é...] diff --git a/share/doc/ja_JP.EUC/handbook/printing.sgml b/share/doc/ja_JP.EUC/handbook/printing.sgml index 276d6df19036..34db04eca812 100644 --- a/share/doc/ja_JP.EUC/handbook/printing.sgml +++ b/share/doc/ja_JP.EUC/handbook/printing.sgml @@ -1,9 +1,9 @@  <!-- This is an SGML document in the linuxdoc DTD describing       Printing with FreeBSD.  By Sean Kelly, 1995. -     $Id$ +     $Id: printing.sgml,v 1.2 1996/12/02 13:18:03 max Exp $       The FreeBSD Japanese Documentation Project -     Original revision: 1.11 +     Original revision: 1.12  <!DOCTYPE linuxdoc PUBLIC "-//FreeBSD//DTD linuxdoc//EN"> @@ -2231,10 +2231,9 @@ lpr -#3 parser.c parser.h  	¥à) ¤ò¸Æ¤Ó½Ð¤·¤Þ¤¹. ¤½¤·¤Æ, ¤³¤Î¥¸¥ç¥Ö¤ò¥×¥ê¥ó¥¿¤ËÁ÷¤ë¤¿¤á¤Ë,   	<tt/lprps/ ¤¬»È¤ï¤ì¤Þ¤¹.  -	<tt/lprps/ ¤Ï FreeBSD ¤Î¥Ý¡¼¥È½¸¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¤Ù¤¤â¤Î¤Ç¤¹ (¡Ö<ref +	<tt/lprps/ ¤Ï FreeBSD ¤Î¥Ý¡¼¥È½¸¤Ë´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹ (¡Ö<ref  	id="ports" name="¥Ý¡¼¥È¥³¥ì¥¯¥·¥ç¥ó">¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤).  -	¤â¤·´Þ¤Þ¤ì¤Æ¤¤¤Ê¤¤¤Ê¤é¤Ð, ¤¹¤°¤Ë¤½¤Î¤è¤¦¤Ë¤¹¤Ù¤¤Ç¤¹. ¤â¤Á¤í¤ó,  -	¼«Ê¬¼«¿È¤Ç¥×¥í¥°¥é¥à¤ò¼è¤Ã¤Æ¤¤Æ, ¥³¥ó¥Ñ¥¤¥ë¤·, ¥¤¥ó¥¹¥È¡¼¥ë¤¹ +	¤â¤Á¤í¤ó,¼«Ê¬¼«¿È¤Ç¥×¥í¥°¥é¥à¤ò¼è¤Ã¤Æ¤¤Æ, ¥³¥ó¥Ñ¥¤¥ë¤·, ¥¤¥ó¥¹¥È¡¼¥ë¤¹  	¤ë¤³¤È¤â¤Ç¤¤Þ¤¹. <tt/lprps/ ¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤¿¸å¤Ï,   	<tt/lprps/ ¤Î°ìÉô¤Ç¤¢¤ë <tt/psif/ ¥×¥í¥°¥é¥à¤Î¥Ñ¥¹Ì¾¤ò»ØÄꤹ¤ë  	¤À¤±¤Ç¤¹. ¥Ý¡¼¥È½¸¤«¤é <tt/lprps/ ¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤¿¤È¤¤Ï,  diff --git a/share/doc/ja_JP.EUC/handbook/sections.sgml b/share/doc/ja_JP.EUC/handbook/sections.sgml index d681753078c9..a31df7c80097 100644 --- a/share/doc/ja_JP.EUC/handbook/sections.sgml +++ b/share/doc/ja_JP.EUC/handbook/sections.sgml @@ -1,6 +1,6 @@ -<!-- $Id$ --> +<!-- $Id: sections.sgml,v 1.2 1996/12/02 07:56:12 max Exp $ -->  <!-- The FreeBSD Japanese Documentation Project --> -<!-- Original revision: 1.17 --> +<!-- Original revision: 1.18 -->  <!-- Entities containing all the pieces of the handbook are -->  <!-- defined here --> @@ -15,6 +15,7 @@  <!ENTITY crypt SYSTEM "crypt.sgml">  <!ENTITY development SYSTEM "development.sgml">  <!ENTITY dialup SYSTEM "dialup.sgml"> +<!ENTITY dialout SYSTEM "dialout.sgml">  <!ENTITY diskless SYSTEM "diskless.sgml">  <!ENTITY dma SYSTEM "dma.sgml">  <!ENTITY eresources SYSTEM "eresources.sgml"> @@ -32,6 +33,7 @@  <!ENTITY kernelconfig SYSTEM "kernelconfig.sgml">  <!ENTITY kerneldebug SYSTEM "kerneldebug.sgml">  <!ENTITY linuxemu SYSTEM "linuxemu.sgml"> +<!ENTITY mail SYSTEM "mail.sgml">  <!ENTITY memoryuse SYSTEM "memoryuse.sgml">  <!ENTITY mirrors SYSTEM "mirrors.sgml">  <!ENTITY nfs SYSTEM "nfs.sgml"> @@ -45,6 +47,7 @@  <!ENTITY quotas SYSTEM "quotas.sgml">  <!ENTITY relnotes SYSTEM "relnotes.sgml">  <!ENTITY routing SYSTEM "routing.sgml"> +<!ENTITY serial SYSTEM "serial.sgml">  <!ENTITY scsi SYSTEM "scsi.sgml">  <!ENTITY sio SYSTEM "sio.sgml">  <!ENTITY cy SYSTEM "cyclades.sgml"> diff --git a/share/doc/ja_JP.EUC/handbook/synching.sgml b/share/doc/ja_JP.EUC/handbook/synching.sgml index b7992e07e42f..ba3fa517c815 100644 --- a/share/doc/ja_JP.EUC/handbook/synching.sgml +++ b/share/doc/ja_JP.EUC/handbook/synching.sgml @@ -1,4 +1,4 @@ -<!-- $Id: synching.sgml,v 1.1.1.1.2.2 1996/11/25 07:32:38 phk Exp $ --> +<!-- $Id: synching.sgml,v 1.1.1.1.2.3 1996/11/28 08:21:08 phk Exp $ -->  <!-- The FreeBSD Japanese Documentation Project -->  <!-- Original revision: 1.3 --> diff --git a/sys/i386/linux/linux.h b/sys/i386/linux/linux.h index 45dc92727cb0..de1d6c0d214e 100644 --- a/sys/i386/linux/linux.h +++ b/sys/i386/linux/linux.h @@ -25,7 +25,7 @@   * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF   * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.   * - *	$Id: linux.h,v 1.10 1996/10/25 16:20:22 bde Exp $ + *	$Id: linux.h,v 1.10.2.1 1996/11/09 21:10:10 phk Exp $   */  #ifndef _I386_LINUX_LINUX_H_ @@ -465,6 +465,14 @@ struct trapframe;  #define LINUX_IP_TOS		1  #define LINUX_IP_TTL		2 +#define LINUX_IP_HDRINCL	3 +#define LINUX_IP_OPTIONS	4 + +#define LINUX_IP_MULTICAST_IF		32 +#define LINUX_IP_MULTICAST_TTL		33 +#define LINUX_IP_MULTICAST_LOOP		34 +#define LINUX_IP_ADD_MEMBERSHIP		35 +#define LINUX_IP_DROP_MEMBERSHIP	36  /* Sound system defines */  #define LINUX_SNDCTL_DSP_RESET		0x5000 diff --git a/sys/i386/linux/linux_socket.c b/sys/i386/linux/linux_socket.c index 63b33d50c9be..083dd71dcc20 100644 --- a/sys/i386/linux/linux_socket.c +++ b/sys/i386/linux/linux_socket.c @@ -25,7 +25,7 @@   * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF   * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.   * - *  $Id: linux_socket.c,v 1.3 1995/12/15 03:06:57 peter Exp $ + *  $Id: linux_socket.c,v 1.4 1996/03/02 19:37:59 peter Exp $   */  /* XXX we use functions that might not exist. */ @@ -82,6 +82,19 @@ static int linux_to_bsd_ip_sockopt(int opt)  	return IP_TOS;      case LINUX_IP_TTL:  	return IP_TTL; +    case LINUX_IP_OPTIONS: +	return IP_OPTIONS; +    case LINUX_IP_MULTICAST_IF: +	return IP_MULTICAST_IF; +    case LINUX_IP_MULTICAST_TTL: +	return IP_MULTICAST_TTL; +    case LINUX_IP_MULTICAST_LOOP: +	return IP_MULTICAST_LOOP; +    case LINUX_IP_ADD_MEMBERSHIP: +	return IP_ADD_MEMBERSHIP; +    case LINUX_IP_DROP_MEMBERSHIP: +	return IP_DROP_MEMBERSHIP; +    case LINUX_IP_HDRINCL:      default:  	return -1;      } diff --git a/sys/kern/vfs_lookup.c b/sys/kern/vfs_lookup.c index 6c40c0c27a03..bad441432f6e 100644 --- a/sys/kern/vfs_lookup.c +++ b/sys/kern/vfs_lookup.c @@ -36,7 +36,7 @@   * SUCH DAMAGE.   *   *	@(#)vfs_lookup.c	8.4 (Berkeley) 2/16/94 - * $Id: vfs_lookup.c,v 1.10 1995/10/22 09:32:25 davidg Exp $ + * $Id: vfs_lookup.c,v 1.11 1996/01/03 21:42:22 wollman Exp $   */  #include "opt_ktrace.h" @@ -112,6 +112,13 @@ namei(ndp)  	else  		error = copyinstr(ndp->ni_dirp, cnp->cn_pnbuf,  			    MAXPATHLEN, (u_int *)&ndp->ni_pathlen); + +	/* +	 * Don't allow empty pathnames. +	 */ +	if (!error && *cnp->cn_pnbuf == '\0') +		error = ENOENT; +  	if (error) {  		free(cnp->cn_pnbuf, M_NAMEI);  		ndp->ni_vp = NULL; diff --git a/sys/net/if_tun.c b/sys/net/if_tun.c index 3b0d98e427e7..9518c31f36fb 100644 --- a/sys/net/if_tun.c +++ b/sys/net/if_tun.c @@ -479,7 +479,11 @@ tunread(dev_t dev, struct uio *uio, int flag)  				return EWOULDBLOCK;  			}  			tp->tun_flags |= TUN_RWAIT; -			tsleep((caddr_t)tp, PZERO + 1, "tunread", 0); +			if( error = tsleep((caddr_t)tp, PCATCH | (PZERO + 1), +					"tunread", 0)) { +				splx(s); +				return error; +			}  		}  	} while (m0 == 0);  	splx(s); diff --git a/sys/net/if_tun.h b/sys/net/if_tun.h index c35a618a8ff3..c31b548f23b1 100644 --- a/sys/net/if_tun.h +++ b/sys/net/if_tun.h @@ -39,7 +39,7 @@ struct tun_softc {  };  /* Maximum packet size */ -#define	TUNMTU		1500 +#define	TUNMTU		1600  struct tuninfo {  	int	baudrate;		/* linespeed */ diff --git a/usr.sbin/sendmail/contrib/rcpt-streaming b/usr.sbin/sendmail/contrib/rcpt-streaming deleted file mode 100644 index a43af6d43f44..000000000000 --- a/usr.sbin/sendmail/contrib/rcpt-streaming +++ /dev/null @@ -1,305 +0,0 @@ -Message-ID: <wgKo1lW00WBw46OU8k@andrew.cmu.edu> -Date: Sun,  1 Aug 1993 00:02:57 -0400 (EDT) -From: John Gardiner Myers <jgm+@CMU.EDU> -To: sendmail@cs.berkeley.edu -Subject: contrib/rcpt-streaming -Beak: Is - -This patch implements "RCPT streaming" in sendmail version 8.  This -patch is not an official part of sendmail.  Please report all problems -with this patch to jgm+@cmu.edu. - -RCPT streming avoids network round trips by sending all RCPT commands -for a single SMTP transaction together.  Sendmail then waits for all -the replies, matching them up with the apropriate addresses. - -Apply to the sendmail src directory (your line numbers may vary) and -compile with -DRCPTSTREAM - -diff -cr ./src/deliver.c /afs/andrew.cmu.edu/system/src/local/../host/oldsmail/016/src/deliver.c -*** ./src/deliver.c	Thu Jul 22 14:28:19 1993 ---- /afs/andrew.cmu.edu/system/src/local/../host/oldsmail/016/src/deliver.c	Fri Jul 30 21:11:16 1993 -*************** -*** 1334,1339 **** ---- 1334,1354 ---- -  			register int i; -   -  			/* send the recipient list */ -+ #ifdef RCPTSTREAM -+ /*********************************************************************** -+  * -+  * RCPT streaming code by John G Myers, jgm+@cmu.edu -+  * This is not supported by the maintainer of sendmail. -+  * Report all bugs concerning RCPT streaming to jgm+@cmu.edu -+  * -+  *********************************************************************** -+  */ -+ 			for (to = tochain; to != NULL; to = to->q_tchain) -+ 			{ -+ 				smtpstreammessage("RCPT To:<%s>", m, mci, -+ 						  to->q_user); -+ 			} -+ #endif -  			tobuf[0] = '\0'; -  			for (to = tochain; to != NULL; to = to->q_tchain) -  			{ -diff -cr ./src/usersmtp.c /afs/andrew.cmu.edu/system/src/local/../host/oldsmail/016/src/usersmtp.c -*** ./src/usersmtp.c	Mon Jul 19 23:50:43 1993 ---- /afs/andrew.cmu.edu/system/src/local/../host/oldsmail/016/src/usersmtp.c	Fri Jul 30 21:12:00 1993 -*************** -*** 44,49 **** ---- 44,61 ---- -   -  # include <sysexits.h> -  # include <errno.h> -+ #ifdef RCPTSTREAM -+ /*********************************************************************** -+  * -+  * RCPT streaming code by John G Myers, jgm+@cmu.edu -+  * This is not supported by the maintainer of sendmail. -+  * Report all bugs concerning RCPT streaming to jgm+@cmu.edu -+  * -+  *********************************************************************** -+  */ -+ # include <sys/types.h> -+ # include <sys/time.h> -+ #endif -   -  # ifdef SMTP -   -*************** -*** 62,67 **** ---- 74,87 ---- -  char	SmtpError[MAXLINE] = "";	/* save failure error messages */ -  int	SmtpPid;			/* pid of mailer */ -   -+ #ifdef RCPTSTREAM -+ char	*SmtpStreamBuf;			/* buffer for streaming output */ -+ int	SmtpStreamBufSize = 0;		/* allocated size of buffer */ -+ char	*SmtpStreamStart;		/* pointer to text not yet written */ -+ int	SmtpStreamLen = 0;		/* # chars not yet written */ -+ #endif -+  -+  -  #ifdef __STDC__ -  extern	smtpmessage(char *f, MAILER *m, MCI *mci, ...); -  #endif -*************** -*** 404,410 **** ---- 424,434 ---- -  { -  	register int r; -   -+ #ifdef RCPTSTREAM -+ 	sprintf(SmtpMsgBuffer, "RCPT To:<%s>", to->q_user); -+ #else -  	smtpmessage("RCPT To:<%s>", m, mci, to->q_user); -+ #endif -   -  	SmtpPhase = mci->mci_phase = "client RCPT"; -  	setproctitle("%s %s: %s", e->e_id, CurHostName, mci->mci_phase); -*************** -*** 667,672 **** ---- 694,703 ---- -  	bool firstline = TRUE; -  	char junkbuf[MAXLINE]; -   -+ #ifdef RCPTSTREAM -+ 	extern char MsgBuf[];		/* err.c */ -+ #endif -+  -  	if (mci->mci_out != NULL) -  		(void) fflush(mci->mci_out); -   -*************** -*** 682,687 **** ---- 713,755 ---- -  		register char *p; -  		extern time_t curtime(); -   -+ #ifdef RCPTSTREAM -+ 		if (SmtpStreamLen > 0) { -+ 		    int outfd; -+  -+ 		    outfd = fileno(mci->mci_out); -+  -+ 		    nonblock(outfd, TRUE); -+ 		    r = write(outfd, SmtpStreamStart, SmtpStreamLen); -+ 		    nonblock(outfd, FALSE); -+ 		    if (r == -1 && errno != EAGAIN -+ #ifdef EWOULDBLOCK -+ 			&& errno != EWOULDBLOCK -+ #endif -+ 			) { -+  -+ 			mci->mci_errno = errno; -+ 			message("451 streamreply: write error to %s", -+ 				mci->mci_host); -+  -+ 			/* if debugging, pause so we can see state */ -+ 			if (tTd(18, 100)) -+ 			  pause(); -+ # ifdef LOG -+ 			if (LogLevel > 0) -+ 			  syslog(LOG_INFO, "%s", &MsgBuf[4]); -+ # endif /* LOG */ -+ 			/* stop trying to write output */ -+ 			SmtpStreamLen = 0; -+ 			continue; -+ 		    } -+ 		    if (r > 0) { -+ 			SmtpStreamStart += r; -+ 			SmtpStreamLen -= r; -+ 		    } -+ 		} -+ #endif /* RCPTSTREAM */ -+  -  		/* actually do the read */ -  		if (e->e_xfp != NULL) -  			(void) fflush(e->e_xfp);	/* for debugging */ -*************** -*** 792,797 **** ---- 860,937 ---- -   -  	return (r); -  } -+  -+ #ifdef RCPTSTREAM -+ /* -+ **  SMTPSTREAMMESSAGE -- buffer message to be streamed to server -+ ** -+ **	Parameters: -+ **		f -- format -+ **		m -- the mailer to control formatting. -+ **		a, b, c -- parameters -+ ** -+ **	Returns: -+ **		none. -+ ** -+ **	Side Effects: -+ **		stores message in SmtpStreamBuf -+ */ -+  -+ /*VARARGS1*/ -+ #ifdef __STDC__ -+ smtpstreammessage(char *f, MAILER *m, MCI *mci, ...) -+ #else -+ smtpstreammessage(f, m, mci, va_alist) -+ 	char *f; -+ 	MAILER *m; -+ 	MCI *mci; -+ 	va_dcl -+ #endif -+ { -+ 	VA_LOCAL_DECL -+ 	int len; -+  -+ 	VA_START(mci); -+ 	(void) vsprintf(SmtpMsgBuffer, f, ap); -+ 	VA_END; -+  -+ 	if (tTd(18, 1) || Verbose) -+ 		nmessage(">>> %s", SmtpMsgBuffer); -+ 	if (TrafficLogFile != NULL) -+ 		fprintf(TrafficLogFile, "%05d >>> %s\n", getpid(), SmtpMsgBuffer); -+  -+ 	if (mci->mci_out == NULL) { -+ 	    if (tTd(18, 1)) printf("smtpstreammessage: NULL mci_out\n"); -+ 	    return; -+ 	} -+  -+ 	strcat(SmtpMsgBuffer, m == NULL ? "\r\n" : m->m_eol); -+ 	len = strlen(SmtpMsgBuffer); -+  -+ 	if (SmtpStreamLen == 0) { -+ 	    if (SmtpStreamBufSize == 0) { -+ 		SmtpStreamBufSize = MAXLINE; -+ 		SmtpStreamBuf = xalloc(SmtpStreamBufSize); -+ 	    } -+ 	    SmtpStreamStart = SmtpStreamBuf; -+ 	} -+  -+ 	if (SmtpStreamBufSize - SmtpStreamLen < len + 1) { -+ 	    int start = SmtpStreamStart - SmtpStreamBuf; -+ 	    SmtpStreamBufSize += MAXLINE; -+ 	    SmtpStreamBuf = realloc(SmtpStreamBuf, SmtpStreamBufSize); -+ 	    if (!SmtpStreamBuf) { -+ 		syserr("Out of memory!!"); -+ 		abort(); -+ 		/* exit(EX_UNAVAILABLE); */ -+ 	    } -+ 	    SmtpStreamStart = SmtpStreamBuf + start; -+ 	} -+  -+ 	strcpy(SmtpStreamBuf + SmtpStreamLen, SmtpMsgBuffer); -+ 	SmtpStreamLen += len; -+ } -+ #endif /* RCPTSTREAM */ -  /* -  **  SMTPMESSAGE -- send message to server -  ** -Only in /afs/andrew.cmu.edu/system/src/local/../host/oldsmail/016/src: usersmtp.c~ -diff -cr ./src/util.c /afs/andrew.cmu.edu/system/src/local/../host/oldsmail/016/src/util.c -*** ./src/util.c	Mon Jul 19 23:50:45 1993 ---- /afs/andrew.cmu.edu/system/src/local/../host/oldsmail/016/src/util.c	Mon Jul 26 17:17:10 1993 -*************** -*** 1034,1039 **** ---- 1034,1091 ---- -  			return (FALSE); -  	return (TRUE); -  } -+  -+ #ifdef RCPTSTREAM -+ /*********************************************************************** -+  * -+  * RCPT streaming code by John G Myers, jgm+@cmu.edu -+  * This is not supported by the maintainer of sendmail. -+  * Report all bugs concerning RCPT streaming to jgm+@cmu.edu -+  * -+  *********************************************************************** -+  */ -+  -+ #include <fcntl.h> -+  -+ /* -+ **  NONBLOCK -- set or clear non-blocking mode on file descriptor -+ ** -+ **	Parameters: -+ **		fd -- the file descriptor -+ **		mode -- TRUE to set non-blocking mode -+ **			FALSE to clear non-blocking mode -+ ** -+ **	Returns: -+ **		none -+ ** -+ **	Side Effects: -+ **		modifies nonblocking status of fd -+ */ -+  -+ nonblock(fd, mode) -+ int fd; -+ bool mode; -+ { -+     int flags; -+  -+     flags = fcntl(fd, F_GETFL, 0); -+     if (mode) { -+ #ifdef FNONBIO -+ 	flags |= FNONBIO; -+ #else -+ 	flags |= O_NDELAY; -+ #endif -+     } -+     else { -+ #ifdef FNONBIO -+ 	flags &= ~FNONBIO; -+ #else -+ 	flags &= ~O_NDELAY; -+ #endif -+     } -+     fcntl(fd, F_SETFL, flags); -+ } -+ #endif -  /* -  **  STRCONTAINEDIN -- tell if one string is contained in another -  ** diff --git a/usr.sbin/sendmail/contrib/xla/README b/usr.sbin/sendmail/contrib/xla/README deleted file mode 100644 index a72fd03c832b..000000000000 --- a/usr.sbin/sendmail/contrib/xla/README +++ /dev/null @@ -1,207 +0,0 @@ -         XLA - Extended Load Average design for Sendmail R6 -         -------------------------------------------------- - -          Christophe Wolfhugel - Herve Schauer Consultants -              wolf@grasp.insa-lyon.fr, wolf@hsc-sec.fr - - -WARNING:  this extension is supplied as a contribution to Sendmail. -Should you have trouble, questions, please contact me directly, and -*not* the Sendmail development team. - - -ABSTRACT - -Sendmail currently furnishes a limitation mecanism which is based on -the system load average, when available.  Experience has prooven that -this was not sufficiant for some particular situations, for example -if you have slow and/or overloaded links. This can easily cause both -system and network congestions with Sendmail having to handle a large -number of simultaneous sessions on the same overloaded link, causing -most of the SMTP sessions to timeout after a long time.  The system -load average is also generally too slow to react when your system -gets a burst of incoming or outgoing SMTP sessions which on some -stations can easily cause system unavailabilities. - -The extended load average module has been designed in order to furnish -a way of limitation the load generated by Sendmail to both your -system and your network. This design can be used either alone or as -complementary to the system load average if your system supports it. - -Limitation is based on the number of incoming/outgoing SMTP sessions, -and remote hosts are classified in classes. The system administrator -will define a maximum number of incoming SMTP sessions as well as -a maximum total (incoming + outgoing) sessions for each class of -hosts. A class can be either an individual machine or a network. - -When the limit is reached for a given class, all incoming SMTP -connections will be politely refused. When the limit is reached for -all classes, the SMTP connections will be refused by the system -(which one could consider as less politely :)). -On outgoing mail, messages will be queued for delayed processing. - -The extended load average parameters are given in the Sendmail -configuration file, and when not present, Sendmail behaves the -usual way. - - -COMPILATION - -Copy the xla.c module in the src sub-directory, edit the Makefile -in order to define XLA (-DXLA). Also add the xla.[co] module name -in the list of files so that it gets compiled. - -Regenerate sendmail by removing all objects, or at least those -containing references to XLA (this list may vary, so use grep to -get the module list).  This will generate a new sendmail executable -containing the xla code. - -Debugging level 59 has been assigned to this module and when used -it provides some output (sendmail -d59.x).  Please check the source -code to see which levels are supported. - - -CONFIGURATION - -The extended average uses a new set of configuration lines in the -sendmail.cf file.  All newly introduced line begin with the letter L -(capital L). - -Before detailling the syntax, first an example (this can be placed -at any section of the sendmail.cf file, note that the order is -important). Fields are separated by (one or more) tabs/spaces. - -# File name used to store the counters -L/etc/sendmail.la -# Classes definition -# Lname            #queue #reject -L*.insa-lyon.fr         8       3 -L*.univ-lyon1.fr        6       4 -L*                     15      16 - -The first line defines the working file which will be used in order -to have the occurences of Sendmail read and update the counters. The -format of this file is described in the "Design" section. -This line is mandatory and the specified file must be absolute (ie -begin with a slash). - -Then you can specify one or more classes. The last class (*) is also -mandatory and should be in last position as the first match will stop -the search and if there is no match the behavior of Sendmail is unknown. - -Each class has three fields separated by one or more tabs/spaces. - -L{mask}         {queue_#}      {refuse_#} - -The {mask} is a simple mask. It can be either an explicit host name -(like grasp.insa-lyon.fr) or a mask starting with "*." or just "*". -No other variants are allowed. - -Lgrasp.insa-lyon.fr  will match exactely any session to/from this host. - -L*.insa-lyon.fr      will match any session to/from any machine in the -                     insa-lyon.fr domain as well as from the machine -                     named "insa-lyon.fr" if it exists. - -L*                   will match any session, and thus should also be -                     last in the list to act as a catchup line. - -The {queue_#} is the maximum number of SMTP sessions in the given class -for both incoming and outgoing messages. The {refuse_#} indicates when -to refuse incoming messages for this class. The interaction between -those counters is somewhat subtle. It seems logical that a standard -configuration has {queue_#} >= {refuse_#}, and in fact in most -configurations they can be equal (that's why what I use in my environment). -Thus, this is not mandatory. If {queue_#} < {refuse_#} outgoing messages -will be lower priority than incoming messages and once a class gets loaded -the outgoing messages are blocked first. - -I use very low values in some situations, for example I have a customer -connected to the Internet via a 9600 bps line, they also have internal -users sending burst of messages (10, 20 small messages coming in just -one or two seconds).  Both situations were unsupportable. The line is -too slow to handle many simultaneous connections and the mail server -does not have the ressources to handle such a heavy load (it's a 12 Megs -Sun 3 also doing Usenet news). - -I have defined following section in the configuration file, and experience -shows the benefits for everyone. Fake domain for the example: customer.fr. - -L/etc/sendmail.la -L*.customer.fr          8       8 -L*                      3       3 - -This means that there might not be more than 8 simultaneous SMTP sessions -between the mail server and any other internal host. This is to protect -the station from heavy loads like users (or applications !) sending -several tenths of messages in just a few seconds). -No more than 3 SMTP sessions are authorized with any other host, this is -to save the load of the slow 9600 line to the Internet. - -Drawback is that is you have 3 * 2 Megs sessions established from/to the -outside, all your mail will be held until one slot gets available, on -a 9600 bps line just make your counts, il blocks your line during over -one hour. - - -DESIGN - -Sendmail will analyze the "L" lines in the configuration file during -startup (or read the initialized structure from the frozen file). -When started in daemon mode (and only there), any existing working file -will be cleared and a new one is created. Each class gets a record in -the sendmail.la work file. The size of this record is a short integer -(generally two bytes) and represents the count of active sessions in -the given class.  Read/Write operations in this file are done in -one operation (as anyway the size is far below one disk sector). The -file is locked with Sendmail's lockfile() function priori to any -access. - -Handling incoming SMTP sessions. - -There is interaction is two points in the Sendmail source code. First -on the listen system call: if all slots in all classes are in use, -a listen(0) is done so that the system rejects any incoming SMTP session. -This avois to fork and then reject the connexion. - -If there are some free slots, nothing better than accepting the -connection, then forking can be done. The child process then checks if -the adequate class is full or not. If full, it rejects the connection -with a "421 Too many sessions" diagnostic to the sender (which should -then appear when the remote users do a mailq). If the treshold {reject_#} -is not reached, the connection is accepted and the counter is sendmail.la -is updated. - -Handling outgoing SMTP sessions. - -As soon as Sendmail needs to connect to a distant host, the adequate class -is checked against {queue_#} and if no slots are available, the message is -queued for further processing. - -Sendmail's connection caching. - -Sendmail-R6 introduces a new design: connection caching, ie several SMTP -sessions can be opened at the same time.  This could cause some problems -when sending mail, as after having a few connections opened, all slots -could be in use and generate a partial delivery of the message.  In -order to deal with this, xla.c uses following design "for a given -sendmail process, only the first connection in a given class is counted". -This can be done because sendmail does not do parralel message sending -on the different channels. - -End of connection. - -As soon as a connection is closed, the counters will be automatically -updated. - - - -Please look at the code to understand of all this works. Comments, -suggestions, questions welcome. - - - -                                        Christophe Wolfhugel -                                        Herve Schauer Consultants -                                        Paris, France -                                        May 23, 1993 diff --git a/usr.sbin/sendmail/contrib/xla/xla.c b/usr.sbin/sendmail/contrib/xla/xla.c deleted file mode 100644 index ef998e3fb4ca..000000000000 --- a/usr.sbin/sendmail/contrib/xla/xla.c +++ /dev/null @@ -1,532 +0,0 @@ -/* - * (C) Copyright 1993-94, Herve Schauer Consultants - * - * This module written by Christophe.Wolfhugel@hsc-sec.fr - * is to be used under the same conditions and terms (and absence - * or warranties) than the other modules of the Sendmail package. - * - * ABSOLUTELY NO WARRANTY. USE AT YOUR OWN RISKS. - * - * Version: 940417, applied a patch from Paul Graham <pjg@acsu.buffalo.edu> - *                  (lockfile syntax in xla.c did not reflect anymore the - *                  new one used by sendmail, now fine). - * - */ - - -#ifdef XLA - -#ifndef MAXLARULES -# define MAXLARULES	20 -#endif - -# include "sendmail.h" - -typedef struct { -		short	queue;		/* # of connexions to have queueing */ -		short	reject;		/* # of conn. to reject */ -		short	num;		/* # of increments this process */ -		char	*mask;		/* Mask (domain) */ -        } XLARULE; - -char	*XlaFname;			/* Work file name */ -char	XlaHostName[1024];		/* Temporary */ -int	XlaNext;			/* # of XlaRules */ -pid_t	XlaPid;				/* Pid updating the tables */ -XLARULE	XlaRules[MAXLARULES];		/* The rules themselves */ -short   XlaCtr[MAXLARULES];		/* Counter (for work file only) */ - -extern	bool	lockfile(); - -/* -** XLAMATCH -- Matches a fnmatch like expression. -** -**	Parameters: -**		mask -- mask to match the string too; -**		name -- string. -** -** Mask can either be a plain string or a simplified fnmatch like mask: -**	*.string     or  string.* -** No other alternatives are accepted. -** -**	Returns: -**		none. -** -**	Side Effects: -**		none. -*/ - -bool -XlaMatch(mask, name) -	char *mask, *name; -{ -	int l1, l2; - -	l1 = strlen(mask);  l2 = strlen(name); -	if (l1 == 1 && mask[0] == '*') return(TRUE); -	if (mask[0] == '*' && mask[1] == '.') { -		if (l2 < (l1 - 2)) return(FALSE); -		if (strcasecmp(&mask[2], name) == 0) return(TRUE); -		if (strcasecmp(&mask[1], name + l2 - l1 + 1) == 0) return(TRUE); -		return(FALSE); -	} -	if (l1 < 3) return(FALSE); -	if (mask[l1 -1] == '*') { -		if (l2 < l1 - 1) return(FALSE); -		if (strncasecmp(mask, name, l1 - 1) == 0) return(TRUE); -		return(FALSE); -	} -	if (strcasecmp(mask, name) == 0) return(TRUE); -	return(FALSE); -} - -/* -** XLAZERO -- Zeroes the used variables -** -** 	Just initializes some variables, called once at sendmail -**	startup. -** -**	Parameters: -**		none. -** -**	Returns: -**		none. -** -**	Side Effects: -**		none. -*/ - -xla_zero() -{ -	if (tTd(59, 1)) { -		printf("xla_zero\n"); -	} -	XlaFname = NULL; -	XlaNext  = 0; -	XlaPid   = 0; -	memset((char *) &XlaRules[0], 0, sizeof(XLARULE) * MAXLARULES); -} - - -/* -**  XLAINIT -- initialized extended load average stuff -** -**  This routine handles the L lines appearing in the configuration -**  file. -** -**  L/etc/sendmail.la     indicates the working file -**  Lmask   #1   #2	  Xtended LA to apply to mask -**	#1 = Queueing # of connections -**	#2 = Reject connections. -** -**	Parameters: -**		line -- the cf file line to parse. -** -**	Returns: -**		none. -** -**	Side Effects: -**		Builds several internal tables. -*/ - -xla_init(line) -	char *line; -{ -	char *s; - -	if (tTd(59, 1)) { -		printf("xla_init line: %s\n", line); -	} -	if (XlaFname == NULL && *line == '/') {	/* Work file name */ -                XlaFname = newstr(line); -		if (tTd(59, 10)) -			printf("xla_init: fname = %s\n", XlaFname); -		return; -	} -	if (XlaNext == MAXLARULES) { -		syserr("too many xla rules defined (%d max)", MAXLARULES); -		return; -	} -	s = strtok(line, " \t"); -	if (s == NULL) { -		syserr("xla: line unparseable"); -		return; -	} -	XlaRules[XlaNext].mask = newstr(s); -	s = strtok(NULL, " \t"); -	if (s == NULL) { -		syserr("xla: line unparseable"); -		return; -	} -	XlaRules[XlaNext].queue = atoi(s); -	s = strtok(NULL, " \t"); -	if (s == NULL) { -		syserr("xla: line unparseable"); -		return; -	} -	XlaRules[XlaNext].reject = atoi(s); -	if (tTd(59, 10)) -		printf("xla_init: rule #%d = %s q=%d r=%d\n", XlaNext, -			XlaRules[XlaNext].mask, -			XlaRules[XlaNext].queue, XlaRules[XlaNext].reject); -	XlaNext++; -} - - -/* -**  XLACREATEFILE -- Create the working file -** -**	Tries to create the working file, called each time sendmail is -**	invoked with the -bd option. -** -**	Parameters: -**		none. -** -**	Returns: -**		none. -** -**	Side Effects: -**		Creates the working file (sendmail.la) and zeroes it. -*/ - -xla_create_file() -{ -	int	fd, i; - -	if (tTd(59, 1)) -		printf("xla_create_file:\n"); -	if (XlaFname == NULL) return; -	fd = open(XlaFname, O_RDWR|O_CREAT, 0644); -	if (fd == -1) { -		XlaFname = NULL; -		syserr("xla_create_file: open failed"); -		return; -	} -	if (!lockfile(fd, XlaFname, NULL, LOCK_EX)) { -		close(fd); -		XlaFname = NULL; -		syserr("xla_create_file: can't set lock"); -		return; -	} -	if (ftruncate(fd, 0) == -1) { -		close(fd); -		XlaFname = NULL; -		syserr("xla_create_file: can't truncate XlaFname"); -		return; -	} -	if (write(fd, XlaCtr, sizeof(XlaCtr)) != sizeof(XlaCtr)) { -		XlaFname == NULL; -		syserr("xla_create_file: can't write XlaFname"); -	} -	close(fd); -} - - -/* -**  XLASMTPOK -- Checks if all slots are in use -** -**	Check is there are still some slots available for an SMTP -**	connection. -** -**	Parameters: -**		none. -** -**	Returns: -**		TRUE -- slots are available; -**		FALSE -- no more slots. -** -**	Side Effects: -**		Reads a file, uses a lock and updates sendmail.la if a slot -**		is free for use. -*/ - -bool -xla_smtp_ok() -{ -	int	fd, i; - -	if (tTd(59, 1)) -		printf("xla_smtp_ok:\n"); -	if (XlaFname == NULL) return(TRUE); -	fd = open(XlaFname, O_RDWR, 0644); -	if (fd == -1) { -		XlaFname = NULL; -		syserr("xla_smtp_ok: open failed"); -		return(TRUE); -	} -	if (!lockfile(fd, XlaFname, NULL, LOCK_EX)) { -		close(fd); -		XlaFname = NULL; -		syserr("xla_smtp_ok: can't set lock"); -		return(TRUE); -	} -	if (read(fd, XlaCtr, sizeof(XlaCtr)) != sizeof(XlaCtr)) { -		close(fd); -                XlaFname = NULL; -                syserr("xla_smtp_ok: can't read XlaFname"); -                return(TRUE); -	} -	close(fd); -	for (i = 0; i < XlaNext; i++) { -		if (XlaCtr[i] < XlaRules[i].reject) -			return(TRUE); -	} -	return(FALSE); -} - - -/* -**  XLAHOSTOK -- Can we accept a connection from this host -** -**	Check the quota for the indicated host -** -**	Parameters: -**		name -- host name or IP# (string) -** -**	Returns: -**		TRUE -- we can accept the connection; -**		FALSE -- we must refuse the connection.1 -** -**	Side Effects: -**		Reads and writes a file, uses a lock and still updates -**		sendmail.la is a slot gets assigned. -*/ - -bool -xla_host_ok(name) -	char *name; -{ -	int	fd, i; - -	if (tTd(59, 1)) -		printf("xla_host_ok:\n"); -	if (XlaFname == NULL) return(TRUE); -	fd = open(XlaFname, O_RDWR, 0644); -	if (fd == -1) { -		XlaFname = NULL; -		syserr("xla_host_ok: open failed"); -		return(TRUE); -	} -	XlaPid = getpid(); -	if (!lockfile(fd, XlaFname, NULL, LOCK_EX)) { -		close(fd); -		XlaFname = NULL; -		syserr("xla_host_ok: can't set lock"); -		return(TRUE); -	} -	if (read(fd, XlaCtr, sizeof(XlaCtr)) != sizeof(XlaCtr)) { -		close(fd); -                XlaFname = NULL; -                syserr("xla_smtp_ok: can't read XlaFname"); -                return(TRUE); -	} -	strncpy(XlaHostName, name, sizeof(XlaHostName) -1); -	XlaHostName[sizeof(XlaHostName) -1] = 0; -	i = strlen(name) - 1; -	if (i >= 0 && XlaHostName[i] == '.') XlaHostName[i] = 0; -	for (i = 0; i < XlaNext; i++) { -		if (XlaMatch(XlaRules[i].mask, XlaHostName)) { -			if (XlaCtr[i] < XlaRules[i].reject) { -				if (XlaRules[i].num++ == 0) { -					XlaCtr[i]++; -					lseek(fd, i*sizeof(XlaCtr[i]), SEEK_SET); -					if (write(fd, &XlaCtr[i], sizeof(XlaCtr[i])) !=  sizeof(XlaCtr[i])) -						XlaFname = NULL; -				} -				close(fd); -				return(TRUE); -			} -			close(fd); -			return(FALSE); -		} -	} -	close(fd); -	return(TRUE); -} - -/* -**  XLANOQUEUEOK -- Can we sent this message to the remote host -** -**	Check if we can send to the remote host -** -**	Parameters: -**		name -- host name or IP# (string) -** -**	Returns: -**		TRUE -- we can send the message to the remote site; -**		FALSE -- we can't connect the remote host, queue. -** -**	Side Effects: -**		Reads and writes a file, uses a lock. -**		And still updates the sendmail.la file. -*/ - -bool -xla_noqueue_ok(name) -	char *name; -{ -	int	fd, i; - -	if (tTd(59, 1)) -		printf("xla_noqueue_ok:\n"); -        if (XlaFname == NULL) return(TRUE); -	fd = open(XlaFname, O_RDWR, 0644); -	if (fd == -1) { -		XlaFname = NULL; -		syserr("xla_noqueue_ok: open failed"); -		return(TRUE); -	} -	if (!lockfile(fd, XlaFname, NULL, LOCK_EX)) { -		close(fd); -		XlaFname = NULL; -		syserr("xla_noqueue_ok: can't set lock"); -		return(TRUE); -	} -	XlaPid = getpid(); -        if (read(fd, XlaCtr, sizeof(XlaCtr)) != sizeof(XlaCtr)) { -                close(fd); -                XlaFname = NULL; -                syserr("xla_noqueue_ok: can't read XlaFname"); -                return(TRUE); -        } -	strncpy(XlaHostName, name, sizeof(XlaHostName) -1); -	XlaHostName[sizeof(XlaHostName) -1] = 0; -	i = strlen(name) - 1; -	if (i >= 0 && XlaHostName[i] == '.') XlaHostName[i] = 0; -	for (i = 0; i < XlaNext; i++) { -		if (XlaMatch(XlaRules[i].mask, XlaHostName)) { -			if (XlaCtr[i] < XlaRules[i].queue) { -				if (XlaRules[i].num++ == 0) { -					XlaCtr[i]++; -                                	lseek(fd, i*sizeof(XlaCtr[i]), SEEK_SET); -                                	if (write(fd, &XlaCtr[i], sizeof(XlaCtr[i])) !=  sizeof(XlaCtr[i])) -                                        	XlaFname = NULL; -				} -				close(fd); -				return(TRUE); -			} -			close(fd); -			return(FALSE); -		} -	} -	close(fd); -	return(TRUE); -} - - -/* -**  XLAHOSTEND -- Notice that a connection is terminated. -** -**	Updates the counters to reflect the end of an SMTP session -**	(in or outgoing). -** -**	Parameters: -**		name -- host name or IP# (string) -** -**	Returns: -**		none. -** -**	Side Effects: -**		Reads and writes a file, uses a lock. -**		And still updates sendmail.la. -*/ - -xla_host_end(name) -	char	*name; -{ -	int	fd, i; - -	if (tTd(59, 1)) -		printf("xla_host_end:\n"); -	if (XlaFname == NULL || XlaPid != getpid()) return; -	fd = open(XlaFname, O_RDWR, 0644); -	if (fd == -1) { -		XlaFname = NULL; -		syserr("xla_host_end: open failed"); -		return; -	} -	if (!lockfile(fd, XlaFname, NULL, LOCK_EX)) { -                close(fd); -                XlaFname = NULL; -		syserr("xla_host_end: can't set lock"); -		return; -	} -        if (read(fd, XlaCtr, sizeof(XlaCtr)) != sizeof(XlaCtr)) { -                close(fd); -                XlaFname = NULL; -                syserr("xla_host_end: can't read XlaFname"); -                return(TRUE); -	} -	strncpy(XlaHostName, name, sizeof(XlaHostName) -1); -	XlaHostName[sizeof(XlaHostName) -1] = 0; -	i = strlen(name) - 1; -	if (i >= 0 && XlaHostName[i] == '.') XlaHostName[i] = 0; -	for (i = 0; i < XlaNext; i++) { -		if (XlaMatch(XlaRules[i].mask, XlaHostName)) { -			if (XlaRules[i].num > 0 && XlaRules[i].num-- == 1) { -				if (XlaCtr[i]) XlaCtr[i]--; -                                lseek(fd, i*sizeof(XlaCtr[i]), SEEK_SET); -                                if (write(fd, &XlaCtr[i], sizeof(XlaCtr[i])) -                                        !=  sizeof(XlaCtr[i])) -                                        XlaFname = NULL; -			} -			close(fd); -			return; -		} -	} -	close(fd); -} - -/* -**  XLAALLEND -- Mark all connections as closed. -** -**	Generally due to an emergency exit. -** -**	Parameters: -**		name -- host name or IP# (string) -** -**	Returns: -**		none. -** -**	Side Effects: -**		Reads and writes a file, uses a lock. -**		And guess what: updates sendmail.la. -*/ - -xla_all_end() -{ -	int	fd, i; - -	if (tTd(59, 1)) -		printf("xla_all_end:\n"); -	if (XlaFname == NULL || XlaPid != getpid()) return; -	fd = open(XlaFname, O_RDWR, 0644); -        if (fd == -1) { -                XlaFname = NULL; -		syserr("xla_all_end: open failed"); -                return; -        } -        if (!lockfile(fd, XlaFname, NULL, LOCK_EX)) { -                close(fd); -                XlaFname = NULL; -                syserr("xla_all_end: can't set lock"); -                return; -        } -        if (read(fd, XlaCtr, sizeof(XlaCtr)) != sizeof(XlaCtr)) { -                close(fd); -                XlaFname = NULL; -                syserr("xla_all_end: can't read XlaFname"); -                return(TRUE); -        } -	for (i = 0; i < XlaNext; i++) { -		if (XlaCtr[i] > 0 && XlaRules[i].num > 0) { -			XlaCtr[i]--; XlaRules[i].num = 0; -		} -	} -	lseek(fd, 0, SEEK_SET); -	if (write(fd, XlaCtr, sizeof(XlaCtr)) != sizeof(XlaCtr)) { -		XlaFname = NULL; -	} -	close(fd); -} -#endif /* XLA */ diff --git a/usr.sbin/sendmail/src/makesendmail b/usr.sbin/sendmail/src/makesendmail deleted file mode 100644 index 1b266c3564a5..000000000000 --- a/usr.sbin/sendmail/src/makesendmail +++ /dev/null @@ -1,313 +0,0 @@ -#!/bin/sh - -# Copyright (c) 1993, 1996 Eric P. Allman -# Copyright (c) 1993 The Regents of the University of California. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# 1. Redistributions of source code must retain the above copyright -#    notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -#    notice, this list of conditions and the following disclaimer in the -#    documentation and/or other materials provided with the distribution. -# 3. All advertising materials mentioning features or use of this software -#    must display the following acknowledgement: -#	This product includes software developed by the University of -#	California, Berkeley and its contributors. -# 4. Neither the name of the University nor the names of its contributors -#    may be used to endorse or promote products derived from this software -#    without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND -# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE -# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -# SUCH DAMAGE. -# -#       @(#)makesendmail	8.41 (Berkeley) 9/23/96 -# - -# -#  A quick-and-dirty script to compile sendmail in the presence of -#  multiple architectures and Makefiles. -# - -if [ "x${1-""}" = "x-m" ] -then -	# show Makefile name only -	mflag=1 -else -	mflag="" -fi - -# -#  Do heuristic guesses !ONLY! for machines that do not have uname -# -if [ -d /NextApps -a ! -f /bin/uname -a ! -f /usr/bin/uname ] -then -	# probably a NeXT box -	arch=`hostinfo | sed -n 's/.*Processor type: \([^ ]*\).*/\1/p'` -	os=NeXT -	rel=`hostinfo | sed -n 's/.*NeXT Mach \([0-9\.]*\).*/\1/p'` -elif [ -f /usr/sony/bin/machine -a -f /etc/osversion ] -then -	# probably a Sony NEWS 4.x -	os=NEWS-OS -	rel=`awk '{ print $3}' /etc/osversion` -	arch=`/usr/sony/bin/machine` -elif [ -d /usr/omron -a -f /bin/luna ] -then -	# probably a Omron LUNA -	os=LUNA -	if [ -f /bin/luna1 ] && /bin/luna1 -	then -		rel=unios-b -		arch=luna1 -	elif [ -f /bin/luna2 ] && /bin/luna2 -	then -		rel=Mach -		arch=luna2 -	elif [ -f /bin/luna88k ] && /bin/luna88k -	then -		rel=Mach -		arch=luna88k -	fi -fi - -if [ ! "$arch" -a ! "$os" -a ! "$rel" ] -then -	arch=`uname -m | sed -e 's/ //g'` -	os=`uname -s | sed -e 's/\//-/g' -e 's/ //g'` -	rel=`uname -r | sed -e 's/(/-/g' -e 's/)//g'` -fi - -# -#  Tweak the values we have already got.  PLEASE LIMIT THESE to -#  tweaks that are absolutely necessary because your system uname -#  routine doesn't return something sufficiently unique.  Don't do -#  it just because you don't like the name that is returned.  You -#  can combine the architecture name with the os name to create a -#  unique Makefile name. -# - -# tweak machine architecture -case $arch -in -  sun4*)	arch=sun4;; - -  9000/*)	arch=`echo $arch | sed -e 's/9000.//' -e 's/..$/xx/'`;; - -  DS/907000)	arch=ds90;; -esac - -# tweak operating system type and release -case $os -in -  DYNIX-ptx)	os=PTX;; -  Paragon*)	os=Paragon;; -  HP-UX)	rel=`echo $rel | sed -e 's/^[^.]*\.0*//'`;; -  AIX)		rel=`uname -v` -		if [ "$rel" = "2" ] -		then -			arch="" -		fi;; -  BSD-386)	os=BSD-OS;; -  SCO_SV)	os=SCO; rel=`uname -X | sed -n 's/Release = 3.2v//p'`;; -  UNIX_System_V) if [ "$arch" = "ds90" ] -		then -			os="UXPDS" -			rel=`uname -v | sed -e 's/\(V.*\)L.*/\1/'` -		fi;; -esac - -# get "base part" of operating system release -rroot=`echo $rel | sed -e 's/\.[^.]*$//'` -rbase=`echo $rel | sed -e 's/\..*//'` -if [ "$rroot" = "$rbase" ] -then -	rroot=$rel -fi - -# heuristic tweaks to clean up names -- PLEASE LIMIT THESE! -if [ "$os" = "unix" ] -then -	# might be Altos System V -	case $rel -	in -	  5.3*)		os=Altos;; -	esac -elif [ -r /unix -a -r /usr/lib/libseq.a -a -r /lib/cpp ] -then -	# might be a DYNIX/ptx 2.x system, which has a broken uname -	if strings /lib/cpp | grep _SEQUENT_ > /dev/null -	then -		os=PTX -	fi -elif [ -d /usr/nec ] -then -	# NEC machine -- what is it running? -	if [ "$os" = "UNIX_System_V" ] -	then -		os=EWS-UX_V -	elif [ "$os" = "UNIX_SV" ] -	then -		os=UX4800 -	fi -elif [ "$arch" = "mips" ] -then -	case $rel -	in -	  4_*) -		if [ `uname -v` = "UMIPS" ] -		then -			os=RISCos -		fi;; -	esac -fi - -# see if there is a "user suffix" specified -if [ "${SENDMAIL_SUFFIX-}x" = "x" ] -then -	sfx="" -else -	sfx=".${SENDMAIL_SUFFIX}" -fi - -echo "Configuration: os=$os, rel=$rel, rbase=$rbase, rroot=$rroot, arch=$arch, sfx=$sfx" - -# now try to find a reasonable object directory -if [ -r obj.$os.$rel.$arch$sfx ]; then -	obj=obj.$os.$rel.$arch$sfx -elif [ -r obj.$os.$rroot.$arch$sfx ]; then -	obj=obj.$os.$rroot.$arch$sfx -elif [ -r obj.$os.$rbase.x.$arch$sfx ]; then -	obj=obj.$os.$rbase.x.$arch$sfx -elif [ -r obj.$os.$rel$sfx ]; then -	obj=obj.$os.$rel$sfx -elif [ -r obj.$os.$rbase.x$sfx ]; then -	obj=obj.$os.$rbase.x$sfx -elif [ -r obj.$os.$arch$sfx ]; then -	obj=obj.$os.$arch$sfx -elif [ -r obj.$rel.$arch$sfx ]; then -	obj=obj.$rel.$arch$sfx -elif [ -r obj.$rbase.x.$arch$sfx ]; then -	obj=obj.$rbase.x.$arch$sfx -elif [ -r obj.$os$sfx ]; then -	obj=obj.$os$sfx -elif [ -r obj.$arch$sfx ]; then -	obj=obj.$arch$sfx -elif [ -r obj.$rel$sfx ]; then -	obj=obj.$rel$sfx -elif [ -r obj$sfx ]; then -	obj=obj$sfx -else -	# no existing obj directory -- try to create one if Makefile found -	obj=obj.$os.$rel.$arch$sfx -	if [ -r Makefiles/Makefile.$os.$rel.$arch$sfx ]; then -		makefile=Makefile.$os.$rel.$arch$sfx -	elif [ -r Makefiles/Makefile.$os.$rel.$arch ]; then -		makefile=Makefile.$os.$rel.$arch -	elif [ -r Makefiles/Makefile.$os.$rroot.$arch$sfx ]; then -		makefile=Makefile.$os.$rroot.$arch$sfx -	elif [ -r Makefiles/Makefile.$os.$rroot.$arch ]; then -		makefile=Makefile.$os.$rroot.$arch -	elif [ -r Makefiles/Makefile.$os.$rbase.x.$arch$sfx ]; then -		makefile=Makefile.$os.$rbase.x.$arch$sfx -	elif [ -r Makefiles/Makefile.$os.$rbase.x.$arch ]; then -		makefile=Makefile.$os.$rbase.x.$arch -	elif [ -r Makefiles/Makefile.$os.$rel$sfx ]; then -		makefile=Makefile.$os.$rel$sfx -	elif [ -r Makefiles/Makefile.$os.$rel ]; then -		makefile=Makefile.$os.$rel -	elif [ -r Makefiles/Makefile.$os.$rroot$sfx ]; then -		makefile=Makefile.$os.$rroot$sfx -	elif [ -r Makefiles/Makefile.$os.$rroot ]; then -		makefile=Makefile.$os.$rroot -	elif [ -r Makefiles/Makefile.$os.$rbase.x$sfx ]; then -		makefile=Makefile.$os.$rbase.x$sfx -	elif [ -r Makefiles/Makefile.$os.$rbase.x ]; then -		makefile=Makefile.$os.$rbase.x -	elif [ -r Makefiles/Makefile.$os.$arch$sfx ]; then -		makefile=Makefile.$os.$arch$sfx -	elif [ -r Makefiles/Makefile.$os.$arch ]; then -		makefile=Makefile.$os.$arch -	elif [ -r Makefiles/Makefile.$rel.$arch$sfx ]; then -		makefile=Makefile.$rel.$arch$sfx -	elif [ -r Makefiles/Makefile.$rel.$arch ]; then -		makefile=Makefile.$rel.$arch -	elif [ -r Makefiles/Makefile.$rroot.$arch$sfx ]; then -		makefile=Makefile.$rroot.$arch$sfx -	elif [ -r Makefiles/Makefile.$rroot.$arch ]; then -		makefile=Makefile.$rroot.$arch -	elif [ -r Makefiles/Makefile.$rbase.x.$arch$sfx ]; then -		makefile=Makefile.$rbase.x.$arch$sfx -	elif [ -r Makefiles/Makefile.$rbase.x.$arch ]; then -		makefile=Makefile.$rbase.x.$arch -	elif [ -r Makefiles/Makefile.$os$sfx ]; then -		makefile=Makefile.$os$sfx -	elif [ -r Makefiles/Makefile.$os ]; then -		makefile=Makefile.$os -	elif [ -r Makefiles/Makefile.$arch$sfx ]; then -		makefile=Makefile.$arch$sfx -	elif [ -r Makefiles/Makefile.$arch ]; then -		makefile=Makefile.$arch -	elif [ -r Makefiles/Makefile.$rel$sfx ]; then -		makefile=Makefile.$rel$sfx -	elif [ -r Makefiles/Makefile.$rel ]; then -		makefile=Makefile.$rel -	elif [ -r Makefiles/Makefile.$rel$sfx ]; then -		makefile=Makefile.$rel$sfx -	else -		echo "Cannot determine how to support $arch.$os.$rel" -		exit 1 -	fi -	if [ "$mflag" ] -	then -		echo "Will run in virgin $obj using $makefile" -		exit 0 -	fi -	echo "Creating $obj using $makefile" -	mkdir $obj -	(cd $obj; ln -s ../*.[ch158] ../sendmail.hf .; ln -s ../Makefiles/$makefile Makefile) -	echo "Making dependencies in $obj" -	(cd $obj; ${MAKE-make} depend) -fi - -if [ "$mflag" ] -then -	makefile=`ls -l $obj/Makefile | sed 's/.* //'` -	if [ -z "$makefile" ] -	then -		echo "ERROR: $obj exists but has no Makefile" -		exit 1 -	fi -	case $makefile -	in -	  ../Makefiles/*) -		makefile=`echo $makefile | sed 's/...Makefiles.//'` -		echo "Will run in existing $obj using $makefile" -		;; - -	  *) -		echo "Will run in existing $obj using custom $makefile" -		;; -	esac -	exit 0 -fi - -echo "Making in $obj" -cd $obj -if [ $# = 0 ] -then -	exec ${MAKE-make} -else -	exec ${MAKE-make} "$@" -fi diff --git a/usr.sbin/watch/watch.8 b/usr.sbin/watch/watch.8 index 50bd5b87414d..a3f095c4db96 100644 --- a/usr.sbin/watch/watch.8 +++ b/usr.sbin/watch/watch.8 @@ -9,9 +9,9 @@  .Nd snoop on another tty line  .Sh SYNOPSIS  .Nm watch -.Op Fl ciotW +.Op Fl ciotnW  .Ar tty -.\"  watch [-ciotW] [<tty name>] +.\"  watch [-ciotnW] [<tty name>]  .Sh DESCRIPTION  .Nm Watch  allows the superuser to examine all data coming through a specified tty. @@ -45,6 +45,12 @@ For more info see  .Xr snp 4 .  .It Fl t  Print the date and time when observation of a given tty is started. +.It Fl n +Disable the ability to switch the watched tty interactively.  This disables +both change requests made with <control-X> as well as automatic prompting +when the current tty is closed or overflows.  In all cases where a prompt +would be displayed, watch will exit.  The reconnect flags are unaffected by +this option.  .It Fl W  Allow write access to observed tty.  .It Ar tty diff --git a/usr.sbin/watch/watch.c b/usr.sbin/watch/watch.c index a1459164bca9..8add801f5796 100644 --- a/usr.sbin/watch/watch.c +++ b/usr.sbin/watch/watch.c @@ -48,6 +48,7 @@ int             opt_reconn_oflow = 0;  int             opt_interactive = 1;  int             opt_timestamp = 0;  int		opt_write = 0; +int		opt_no_switch = 0;  char            dev_name[DEV_NAME_LEN];  int             snp_io; @@ -158,7 +159,7 @@ cleanup()  void  show_usage()  { -	printf("watch -[ciotW] [tty name]\n"); +	printf("watch -[ciotnW] [tty name]\n");  	exit(1);  } @@ -274,16 +275,13 @@ main(ac, av)  	(void) setlocale(LC_TIME, ""); -	if (getuid() != 0) -		fatal(NULL); -  	if (isatty(std_out))  		opt_interactive = 1;  	else  		opt_interactive = 0; -	while ((ch = getopt(ac, av, "Wciot")) != EOF) +	while ((ch = getopt(ac, av, "Wciotn")) != EOF)  		switch (ch) {  		case 'W':  			opt_write = 1; @@ -300,6 +298,9 @@ main(ac, av)  		case 't':  			opt_timestamp = 1;  			break; +		case 'n': +			opt_no_switch = 1; +			break;  		case '?':  		default:  			show_usage(); @@ -312,7 +313,7 @@ main(ac, av)  	snp_io = open_snp();  	if (*(av += optind) == NULL) { -		if (opt_interactive) +		if (opt_interactive && !opt_no_switch)  			ask_dev(dev_name, MSG_INIT);  		else  			fatal("No device name given."); @@ -345,6 +346,8 @@ main(ac, av)  				clear();  				break;  			case CHR_SWITCH: +				if (opt_no_switch) +					break;  				detach_snp();  				ask_dev(dev_name, MSG_CHANGE);  				set_dev(dev_name); @@ -353,6 +356,8 @@ main(ac, av)  				if (opt_write) {  					if (write(snp_io,chb,nread) != nread) {  						detach_snp(); +						if (opt_no_switch) +							fatal("Write failed.");  						ask_dev(dev_name, MSG_NOWRITE);  						set_dev(dev_name);  					} @@ -370,7 +375,7 @@ main(ac, av)  		case SNP_OFLOW:  			if (opt_reconn_oflow)  				attach_snp(); -			else if (opt_interactive) { +			else if (opt_interactive && !opt_no_switch) {  				ask_dev(dev_name, MSG_OFLOW);  				set_dev(dev_name);  			} else @@ -379,7 +384,7 @@ main(ac, av)  		case SNP_TTYCLOSE:  			if (opt_reconn_close)  				attach_snp(); -			else if (opt_interactive) { +			else if (opt_interactive && !opt_no_switch) {  				ask_dev(dev_name, MSG_CLOSED);  				set_dev(dev_name);  			} else | 
