1.\" Copyright (c) 1995 Peter Wemm <peter@freebsd.org> 2.\" All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, is permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice immediately at the beginning of the file, without modification, 9.\" this list of conditions, and the following disclaimer. 10.\" 2. Redistributions in binary form must reproduce the above copyright 11.\" notice, this list of conditions and the following disclaimer in the 12.\" documentation and/or other materials provided with the distribution. 13.\" 3. This work was done expressly for inclusion into FreeBSD. Other use 14.\" is permitted provided this notation is included. 15.\" 4. Absolutely no warranty of function or purpose is made by the author 16.\" Peter Wemm. 17.\" 5. Modifications may be freely made to this file providing the above 18.\" conditions are met. 19.\" 20.\" $FreeBSD: src/lib/libc/gen/setproctitle.3,v 1.16.2.4 2001/12/14 18:33:51 ru Exp $ 21.\" 22.Dd December 16, 1995 23.Dt SETPROCTITLE 3 24.Os 25.Sh NAME 26.Nm setproctitle 27.Nd set the process title for 28.Xr ps 1 29.Sh LIBRARY 30.Lb libc 31.Sh SYNOPSIS 32.In sys/types.h 33.In unistd.h 34.Ft void 35.Fn setproctitle "const char *fmt" "..." 36.Sh DESCRIPTION 37The 38.Fn setproctitle 39library routine sets the process title that appears on the 40.Xr ps 1 41command. 42.Pp 43The title is set from the executable's name, followed by the 44result of a 45.Xr printf 3 46style expansion of the arguments as specified by the 47.Va fmt 48argument. 49If the 50.Va fmt 51argument begins with a 52.Dq - 53character, the executable's name is skipped. 54.Pp 55If 56.Va fmt 57is NULL, the process title is restored. 58.Sh EXAMPLES 59To set the title on a daemon to indicate its activity: 60.Bd -literal -offset indent 61setproctitle("talking to %s", inet_ntoa(addr)); 62.Ed 63.Sh SEE ALSO 64.Xr ps 1 , 65.Xr w 1 , 66.Xr kvm 3 , 67.Xr kvm_getargv 3 , 68.Xr printf 3 69.Sh STANDARDS 70.Fn setproctitle 71is implicitly non-standard. Other methods of causing the 72.Xr ps 1 73command line to change, including copying over the argv[0] string are 74also implicitly non-portable. It is preferable to use an operating system 75supplied 76.Fn setproctitle 77if present. 78.Pp 79Unfortunately, it is possible that there are other calling conventions 80to other versions of 81.Fn setproctitle , 82although none have been found by the author as yet. This is believed to be 83the predominant convention. 84.Pp 85It is thought that the implementation is compatible with other systems, 86including 87.Nx 88and 89.Bsx . 90.Sh HISTORY 91.Fn setproctitle 92first appeared in 93.Fx 2.2 . 94Other operating systems have 95similar functions. 96.Sh AUTHORS 97.An -nosplit 98.An Peter Wemm Aq peter@FreeBSD.org 99stole the idea from the 100.Sy "Sendmail 8.7.3" 101source code by 102.An Eric Allman Aq eric@sendmail.org . 103