xref: /freebsd/cddl/usr.sbin/dwatch/libexec/errno (revision d0b2dbfa0ecf2bbc9709efc5e20baf8e4b44bbbf)
15bf5ca77SDevin Teske# -*- tab-width: 4 -*- ;; Emacs
25bf5ca77SDevin Teske# vi: set filetype=sh tabstop=8 shiftwidth=8 noexpandtab :: Vi/ViM
35bf5ca77SDevin Teske############################################################ IDENT(1)
45bf5ca77SDevin Teske#
55bf5ca77SDevin Teske# $Title: dwatch(8) module for syscall errno logging $
65bf5ca77SDevin Teske# $Copyright: 2014-2018 Devin Teske. All rights reserved. $
75bf5ca77SDevin Teske#
85bf5ca77SDevin Teske############################################################ DESCRIPTION
95bf5ca77SDevin Teske#
105bf5ca77SDevin Teske# Print when syscall returns with non-zero errno (default) or other condition.
115bf5ca77SDevin Teske# To override the default test condition, use (for example) `-t errno==2' to
125bf5ca77SDevin Teske# test for specific value or simply `-t 1' to unconditionally show all values.
135bf5ca77SDevin Teske#
145bf5ca77SDevin Teske############################################################ PROBE
155bf5ca77SDevin Teske
165bf5ca77SDevin Teske: ${PROBE:=syscall:::return}
175bf5ca77SDevin Teske
185bf5ca77SDevin Teske############################################################ EVENT ACTION
195bf5ca77SDevin Teske
205bf5ca77SDevin Teske[ "$CUSTOM_TEST" ] || EVENT_TEST="errno > 0"
215bf5ca77SDevin Teske
225bf5ca77SDevin Teske############################################################ EVENT DETAILS
235bf5ca77SDevin Teske
24*a061d970SDevin Teskeif [ ! "$CUSTOM_DETAILS" ]; then
255bf5ca77SDevin Teskeexec 9<<EOF
265bf5ca77SDevin Teske	/*
275bf5ca77SDevin Teske	 * Print errno details
285bf5ca77SDevin Teske	 */
295bf5ca77SDevin Teske	printf("%s: %s (%i)", probefunc, strerror[errno], errno);
305bf5ca77SDevin TeskeEOF
315bf5ca77SDevin TeskeEVENT_DETAILS=$( cat <&9 )
32*a061d970SDevin Teskefi
335bf5ca77SDevin Teske
345bf5ca77SDevin Teske################################################################################
355bf5ca77SDevin Teske# END
365bf5ca77SDevin Teske################################################################################
37