Commit Graph

69 Commits

Author SHA1 Message Date
ed
bd507c7cef Convert the snp(4) driver to use cdevpriv.
Now we have a single /dev/snp device node, which can be opened by
watch(8) multiple times. Even though snp(4) will be dead as of next
week, it's nice having this in SVN, because:

- We may want to MFC it to RELENG_7.
- By the time we fix snp(4) again, it's already there, existing watch(8)
  binaries should already work.

Just like bpf(4), I'm adding a symlink from snp0 to snp to remain binary
compatible.
2008-08-15 13:07:07 +00:00
rink
a0c6a1a4d5 Allow watch(8) to use more than 10 snp* devices. This limitation was purely
due to the way watch(8) looks for available snoop devices.

PR:		bin/118286
Submitted by:	Mykola Zubach <zuborg@advancedhosters.com>
Reviewed by:	rwatson, csjp, imp (all a long time ago)
Approved by:	imp (mentor) (long time ago)
MFC after:	1 week
2008-01-30 13:55:32 +00:00
cognet
4828c58b48 Close the tty file descriptor once we're done with it.
Use O_NONBLOCK when opening the tty device.

Suggested by:   bde
Submitted by:   ru
2005-09-21 14:30:14 +00:00
ru
db795b2c76 Restore the ability to detach from a tty via SIOCSTTY and document
recent changes in a manpage.

Reviewed by:	cognet
2005-09-19 13:48:45 +00:00
cognet
cbeddbcc36 Open the tty device and pass the fd for SNPSTTY.
MFC after:	3 days
2005-09-18 19:24:05 +00:00
ru
c05985f13f Sort sections. 2005-01-18 20:02:45 +00:00
csjp
da80d2d49d By default, the watch utility will attempt to open /dev/snp0, if
another process already has /dev/snp0 open, the snp(4) will return
EBUSY, in which case watch will try to open /dev/snp1..9. Currently
watch does not check errno to see if the failure was a result of EBUSY.

This results in watch making futile attempts to open snp0..snp9 even
though devices may not exist or the caller does not have permissions
to access the device.

In addition to this, it attempts to setup the screen for snooping even
though it may not ever get an snp device.

So this patch does two things
1) Checks errno for EBUSY, if open(2) fails for another reason
   print that reason and exit.
2) setup the terminal for snooping after the snp descriptor has
   been obtained.

Approved by:	bmilekic (mentor)
2004-08-10 01:49:46 +00:00
ru
ac606e7e88 Eliminated double whitespace. 2004-07-03 18:35:53 +00:00
ru
6294018a20 Mechanically kill hard sentence breaks. 2004-07-02 23:13:00 +00:00
csjp
60ae91acf3 Remove constant which makes the assumption that the length of
_PATH_DEV will never change. In the un-likely event that _PATH_DEV
should ever change, watch(8) would have broke because of a
mis-generated device name.

Approved by:	bmilekic (mentor)
Pointed out by:	Yvan Boily
2004-05-29 21:03:00 +00:00
grehan
2dafdd4f00 Userland signed char fixes for PPC build. Problems were using a char
return for getopt() and comparing to -1, ditto with fgetc() and EOF,
and using the kg_nice value from <sys/user.h>

Submitted by: Stefan Farfeleder <stefan@fafoe.narf.at>
Reviewed by: obrien, bde (a while back)
Tested lightly on: ppc, i386, make universe
2004-01-22 07:23:36 +00:00
obrien
7293a24a2b Use __FBSDID over rcsid[]. Protect copyright[] where needed. 2003-05-03 21:06:42 +00:00
obrien
a920d12f89 style.Makefile(5) 2003-04-04 17:49:21 +00:00
schweikh
86f7487fb6 Fix typos, mostly s/ an / a / where appropriate and a few s/an/and/
Add FreeBSD Id tag where missing.
2002-12-30 21:18:15 +00:00
tmm
2b8e8d26ef The FIONREAD sysctl operates on an int *, not a size_t *.
Reviewed by:	dd
2002-11-11 10:56:57 +00:00
mikeh
5d9963ef28 Add break's to case blocks.
PR:		bin/41511
Submitted by:	Daniel Hagan <dhagan@acm.vt.edu>
2002-08-10 08:42:10 +00:00
charnier
d2168fe021 The .Nm utility 2002-07-14 14:47:15 +00:00
imp
71fdede153 de __P
ANSI functions
minor knf
2002-06-12 04:28:15 +00:00
bde
0f2a01ed72 #include <time.h> for the definition of time functions instead of
depending on namespace pollution 2 layers deep in <sys/stat.h>.
2002-02-25 05:31:49 +00:00
dd
50d82a971e Talk about what the user needs to do to get the snp devices, and how
watch(8) will try to help them by loading the module.

PR:		25420
2001-11-24 17:02:58 +00:00
dd
e665c32530 Change 'superuser' to 'user' which was forgotten in the previous
delta.  Remove fake SCCS id while I'm here.
2001-11-24 16:56:43 +00:00
dd
65ce487033 Remove the sentence about only root being able to run watch(8). It
was never technically true (it's snp(4) that required root, not
watch(8)), and after snp.c 1.64, isn't even effectively true, since
who can run watch(8) depends on the permissions of the snp device(s).

Sort options in SYNOPSIS and DESCRIPTION while I'm here.
2001-11-24 15:51:34 +00:00
dd
91fc5ccdb5 Add an -f option which allows one to specify a snp device to use.
Previously, watch would always use the first device it could
successfully open, but this isn't always desired.  Specifically, it
may not be desired during debugging (of snp), or if a particular snp
device has different permissions (which makes since after snp.c 1.64).
2001-11-24 15:41:38 +00:00
rwatson
23eb56f57b o When "-n" is used with watch, it disables the use of <control-X> to
change terminals being watched.  This change makes watch pass the
  <control-X> through to the terminal if it's not being intercepted--
  previously, the keypress would simply be dropped.
2001-11-07 19:15:19 +00:00
dd
cf1db3ca68 Automatically load the "snp" module if it isn't already present. 2001-09-09 14:57:48 +00:00
ache
6710b3d92e Back out WARNS commenting - local fault 2001-07-23 12:38:00 +00:00
ache
744f90a409 Unbreak world - comment out WARNS=2 - deadly warning on tgetstr 2001-07-23 10:46:01 +00:00
obrien
9c97c8f02d Perform a major cleanup of the usr.sbin Makefiles.
These are not perfectly in agreement with each other style-wise, but they
are orders of orders of magnitude more consistent style-wise than before.
2001-07-20 06:20:32 +00:00
dd
12b6546726 Add prototypes, staticize, constify, don't shadow global variables and
functions, remove an unused function, and silence other assorted
warnings.

Set WARNS=2.
2001-07-15 11:03:28 +00:00
olgeni
dba0cf8398 Replace an instance of the "watch" word with the ".Nm" macro: it is used to
specify the command name.
2001-05-04 23:27:30 +00:00
ru
afd506414e - Backout botched attempt to introduce MANSECT feature.
- MAN[1-9] -> MAN.
2001-03-26 14:42:20 +00:00
rwatson
3f5cf40811 o Strip BINMODE from Makefile. Installing watch with 0500 provides no
added security benefit, as it doesn't provide extra privilege.
  Protection against inappropriate snooping is done by protecting
  /dev/snp* properly.
2001-03-22 04:10:51 +00:00
ru
f10dc9aca1 Set the default manual section for usr.sbin/ to 8. 2001-03-20 18:17:26 +00:00
obrien
c2ee1dcc02 Add `_PATH_DEVZERO'.
Use _PATH_* where where possible.
2000-12-09 09:35:55 +00:00
ru
71e2293ad4 mdoc(7) police: use the new features of the Nm macro. 2000-11-20 20:10:44 +00:00
charnier
6d71b03118 Add missing .El.
-Wall cleaning.
2000-01-23 20:27:32 +00:00
phantom
437d3feb75 ``tty'' is not required parameter 1999-10-30 14:52:24 +00:00
peter
9751ab22ae Fix warning: return type of main' is not int' 1999-09-15 01:58:44 +00:00
peter
efabb9ccb1 $Id$ -> $FreeBSD$ 1999-08-28 01:35:59 +00:00
nik
559bbb333e Add $Id$, to make it simpler for members of the translation teams to
track.

The Id line is normally at the bottom of the main comment block in the
man page, separated from the rest of the manpage by an empty comment,
like so;

     .\"    $Id$
     .\"

If the immediately preceding comment is a @(#) format ID marker than the
the $Id$ will line up underneath it with no intervening blank lines.
Otherwise, an additional blank line is inserted.

Approved by:            bde
1999-07-12 20:12:29 +00:00
charnier
6e321f37d4 .Sh AUTHOR -> .Sh AUTHORS. Use .An/.Aq. 1998-03-23 08:31:20 +00:00
charnier
29b9cb9613 Use err(3). 1997-10-27 12:21:10 +00:00
imp
691010efad compare return value from getopt against -1 rather than EOF, per the final
posix standard on the topic.
1997-03-31 05:11:47 +00:00
bde
5350fb0d8b Removed old bogus prerequisite <sys/select.h>. Cleaned up #include mess. 1997-03-19 04:44:07 +00:00
roberto
d6216e2c0e 1. change tty handling from sgttyb to termios,
2. fix a potential buffer oflow,
3. makes watch(8) conform to sysexits(3).

Not a strong 2.2 candidate even if it would be nice.

Reviewed by:	joerg, imp
1997-03-13 08:35:45 +00:00
peter
b782f4df30 Revert $FreeBSD$ to $Id$ 1997-02-22 16:15:28 +00:00
wosch
3c5e4a3bbe Sort cross references. 1997-01-20 00:03:00 +00:00
jkh
808a36ef65 Make the long-awaited change from $Id$ to $FreeBSD$
This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore.  This update would have been
insane otherwise.
1997-01-14 07:20:47 +00:00
jkh
a334cda535 Remove breakage of 1.8.2.2, choose slightly better character for quit. 1996-12-30 09:01:50 +00:00
jkh
fe58599a09 Use RAW, not CBREAK 1996-12-17 15:26:40 +00:00