Commit Graph

87 Commits

Author SHA1 Message Date
enami
686e03f5e7 - If fktrace(2) failed, just exit rather than waiting for trace output.
- Reduce #ifdef a bit.
2004-07-16 23:52:01 +00:00
enami
66820706e0 No need to pretty print the errno with err() or warn(). 2004-07-10 00:00:58 +00:00
wiz
b25f3c1fec Drop trailing whitespace, and bump date for previous. 2004-06-24 15:59:13 +00:00
christos
1e77a9474a Fix a bug in ktruss and ktrace, where they would randomly stop tracing if
the write to the ktraced file descriptor (when they used fktrace internally)
would block. Fix by clearing the non-blocking bit in the file descriptor by
default, so that the writes will block. This has the side effect of stopping
the traced process. Add a flag to override (-n) this behavior and have the
trace stop without blocking the traced process (the previous behavior).
Fix lint, add checks to failed syscalls, ansify.
2004-06-24 15:50:50 +00:00
enami
a612fb0b9d Replace rest of exit status `1' with EXIT_FAILURE. 2004-02-28 02:42:45 +00:00
enami
698c01aba0 Fix usage:
- ktrace(1) takes -s.
- ktruss(1) takes -l.
- -C/-c and commands are exclusive.
- make output fits 80 column.
2004-02-28 02:22:31 +00:00
enami
8a1309b72f - Make ktruss(1) works as expected when -c or -C is specified.
- Include pid or file descriptor in error message when
  ktrace(2)/fktrace(2) failed.
- Remove unnecessary cast.
2004-02-28 01:43:07 +00:00
enami
4d34b523bc Fix whitespace usage. 2004-02-28 01:37:56 +00:00
jmmv
b635f565e7 Homogenize usage messages: make the 'usage' word all lowercase, as this seems
to be the most common practice in our tree.
2004-01-05 23:23:32 +00:00
wiz
c4f3c3c55c Bump date for previous (hi manu!). 2003-11-24 18:00:49 +00:00
manu
23f30b17cb Enable tracing of out of line data sent with Mach messages 2003-11-24 16:53:38 +00:00
christos
309234359e declaration for siginfo code number to name converter function. 2003-09-19 22:49:29 +00:00
agc
89aaa1bb64 Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22365, verified by myself.
2003-08-07 11:13:06 +00:00
wiz
52c00b06b5 Sort translation options list. 2003-07-24 18:21:31 +00:00
dsl
fde07830ad Grok KTR_EXEC_ENV and KTR_EXEC_ARG.
Make ktrace -c default to removing all trace points (not just the default ones).
Make kdump default to dumping everything in the trace file.
Add 'A' (all) and '-' (remove following) to valid -t arguments.
Dump data block of UNKNOWN trace points in hex + ascii.
Make first time output with -R 0 (instead of time since epoch).
Use svis() instead of vis() to get " escaped (as \") (needs fixed libc)
Correctly pass unsigned values to svis()
Update man pages.
2003-07-17 09:05:11 +00:00
wiz
36e4d83a5e Grammar and mdoc fixes. Bump date for last two. 2003-05-06 08:22:08 +00:00
gmcgarry
e00d2f72dc Some more ktruss documentation from Christian Biere <christianbiere@gmx.de>
in PR#17111.
2003-05-02 07:52:23 +00:00
gmcgarry
9256662c6b Explain what ktruss does. Document -l, -R and -T options.
Addresses PR#10458.
2003-05-02 07:40:20 +00:00
wiz
990562bfef .Nm does not need a dummy argument ("") before punctuation or
for correct formatting of the SYNOPSIS any longer.
2003-02-25 10:34:36 +00:00
wiz
2e958b3f0b Bump date for some recent mach changes, fix two nits. 2002-12-18 20:10:37 +00:00
manu
6492e2171f Added support for dumping mach messages in ktrace/kdump. While we are
there, KNFify a few functions.
2002-12-09 21:29:20 +00:00
lukem
ed401558f2 Implement MKDYNAMICROOT, which currently defaults to "no", but will
be changed in the future to "yes".

If MKDYNAMICROOT == "no", there is no change from existing behaviour
of a static /bin and /sbin (and a few programs in elsewhere).

If MKDYNAMICROOT == "yes", the following changes occur:
    in <bsd.own.mk>:
	SHLIBDIR?=     /lib
	SHLINKDIR?=	/lib
    in various Makefiles, the following entry is DISABLED.
	LDSTATIC?=-static
This results in all programs (except those "standalone" programs built
in sys/arch/*/stand) are linked dynamically, the shared linker is moved
from /usr/libexec to /lib (with a compat symlink), and the shared
libraries used by /bin and /sbin programs are moved from /usr/lib to
/lib (with compat symlinks).
2002-08-27 14:46:11 +00:00
christos
36496d50b7 PR/17643: Jared D. McNeill: ktrace leaves ktrace.out file with a kernel
that does not support ktrace.
2002-07-19 12:53:31 +00:00
jdolecek
a31950f616 actually document trstr 'u' - user data and note it's included by default
kill some trailing whitespace
2001-10-26 23:38:07 +00:00
assar
8422fba5ab repair command-line parsing so that an error is generated if no pid or
program is given (or input file for ktruss)
2001-09-02 23:18:01 +00:00
simonb
c24218a889 Add a -s option to open the trace file with O_SYNC. 2001-05-04 07:09:55 +00:00
simonb
0f134bcc0b Don't assume pipes are implemented as sockets -- don't call setsockopt()
on the pipe descriptors.
2001-05-01 02:15:04 +00:00
cgd
a8ec668ddf convert to use getprogname() 2001-02-19 23:03:42 +00:00
jdolecek
33150dda73 add support for KTR_USER records 2000-12-17 16:09:40 +00:00
jdolecek
53b6556eda back out previous change - this needs to be discussed first at least 2000-11-14 00:10:16 +00:00
jdolecek
dfc9af3212 don't link these static; if shared libraries are hosed, these utilities would
surely not save the situation, not help to recover from it
2000-11-13 21:48:33 +00:00
jdolecek
af319ecb1a constify 2000-11-13 21:35:38 +00:00
itojun
bbef2fbaac errx?/warnx? audit. do not pass variable alone, use %s. idea from openbsd 2000-07-07 15:10:32 +00:00
matt
fcd0fb118f Make gcc 2.96 (and maybe earlier) happier. Include <stdlib.h>,<string.>,
etc. as appropriate to get exit,srncmp,abs,abort,etc.
Add -I${.CURDIR} to a few Makefiles
2000-07-03 02:51:12 +00:00
sommerfeld
d4ddc11a83 Two tweaks:
- For cleaner subprocess traces, malloc something before
spawning, so the syscalls malloc does while initializing don't gunk up
the trace.
	- Increase pipe buffer sizes.
2000-05-27 00:45:37 +00:00
itohy
0af9894f2f [ktruss] Use fork(2), not vfork(2).
The child process of do_ktrace() does return and the stack is
changed by another function call (execvp()).
By using vfork() (my previous change), the execution of the parent
process resumes on the modified stack.  Oops.
We could use vfork() carefully, but for now use fork().

Problem reported and investigated by Ethan Solomita <ethan@geocast.com>.
Thanks.
2000-04-13 01:27:53 +00:00
jdolecek
0cdfde1cbc DTRT vs setemul() (for ktruss, similar to kdump.c) 2000-04-10 09:32:03 +00:00
jdolecek
103633896f remove prototype for setemul(), it's in kdump/setemul.h now 2000-04-10 09:30:26 +00:00
jdolecek
646b216e52 add description for -e argument (for ktruss) 2000-04-10 08:11:01 +00:00
jdolecek
84c8f8889f update to setemul() changes 2000-04-10 07:59:22 +00:00
itohy
2f4c0d5e74 Make ktrace(1) not affect interactions between processes.
Following examples show the cases.

    % ktrace -f - false >/dev/null && echo wrong
    wrong
    % ktrace -f - -i /usr/sbin/update >/dev/null
    (does not return to command line)

That is, back out last change and restore the roles of parent/child for
ktrace(1).  The ktruss(1) stuff still remains.
Yes, ktruss(1) has the problems.  Better implementation is expected.
1999-10-29 09:11:49 +00:00
darrenr
c1f203f8b5 Change behaviour from running the command as the parent and ktrace/ktruss as
the child to be ktruss/ktrace is the parent.  This fixes a problem with ktruss
where the prompt would be returned in the middle of output.
1999-07-30 14:03:55 +00:00
enami
4191a1e6d4 - remove duplicated setting for LDSTATIC in ktruss/Makefile.
- fix command name in SYNOPSIS section of man page.
- link ktrace man page to ktruss man page.
- add executable and man page for ktruss in distrib sets.
1999-07-28 01:56:03 +00:00
itohy
99624b0b6d Fix fowllowing problems:
1. If fork()ing, the program is executed twice.
2. If the ktruss(1) output is bufferd, the final output is not flushed
   (because it is executing).

    % ktrace -f - rm >/dev/null
    usage: rm [-dfiPRrW] file ...
    usage: rm [-dfiPRrW] file ...
    % ktruss date | cat
    Fri Jul 23 12:09:45 JST 1999
    Fri Jul 23 12:09:46 JST 1999
    %
1999-07-23 03:10:49 +00:00
darrenr
b7eb8dab03 include comments for ktruss 1999-07-12 03:24:58 +00:00
garbled
9e44e9b578 More and more .Os cleanups. .Os is defined in the tmac.doc-common file,
so we shouldn't override it with versions in the manpages.  Many more to
come.
1999-03-22 18:16:34 +00:00
kleink
3ed4fcf61e In userland, pull in <errno.h> instead of <sys/errno.h> for the declaration
of errno.
1999-01-11 22:39:59 +00:00
nathanw
3cc8349a71 Make "ktrace -f" work again. Slightly klugy because of the
#ifdef's for KTRUSS.
1998-07-14 01:39:59 +00:00
christos
9ec832e055 Appease gcc on arm32 1998-06-27 21:37:50 +00:00
christos
7bc28d2954 fktrace support / ktruss additions. 1998-06-27 21:24:22 +00:00