xref: /illumos-gate/usr/src/man/man3proc/Perror_printf.3proc (revision dcbf3bd6a1f1360fc1afcee9e22c6dcff7844bf2)
1.\"
2.\" This file and its contents are supplied under the terms of the
3.\" Common Development and Distribution License ("CDDL"), version 1.0.
4.\" You may only use this file in accordance with the terms of version
5.\" 1.0 of the CDDL.
6.\"
7.\" A full copy of the text of the CDDL should have accompanied this
8.\" source.  A copy of the CDDL is also available via the Internet at
9.\" http://www.illumos.org/license/CDDL.
10.\"
11.\"
12.\" Copyright 2015 Joyent, Inc.
13.\"
14.Dd May 11, 2016
15.Dt PERROR_PRINTF 3PROC
16.Os
17.Sh NAME
18.Nm Perror_printf
19.Nd interposable function for additional diagnostics
20.Sh SYNOPSIS
21.Ft void
22.Fo Perror_printf
23.Fa "struct ps_prochandle *P"
24.Fa "const char *format"
25.Fa "..."
26.Fc
27.Sh DESCRIPTION
28The
29.Fn Perror_printf
30function allows for consumers of the
31.Sy libproc
32library to obtain additional diagnostic information during various
33operations. Consumers must explicitly
34.Em interpose
35on this symbol and provide their own definition, if desired. There is no
36requirement for such an interposition to be done. When called,
37.Fa P
38will be the process handle that the additional diagnostics are being
39generated for and the diagnostics will be provided in a
40.Xr printf 3C
41style.
42.Sh INTERFACE STABILITY
43.Sy Uncommitted
44.Pp
45While the interposing interface is
46.Sy uncommitted ,
47the provided diagnostics are
48.Sy Not-an-Interface
49and may change at any time.
50.Sh LOCKING
51Callers should presume that this function may be called from multiple
52threads and always in a context in which taking locks is fine. Callers
53should not expect to be called from a signal handler.
54.Sh SEE ALSO
55.Xr libproc 3LIB
56