.\" Copyright (c) 2009 Ed Schouten .\" Copyright (c) 2010 Dmitry V. Levin .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .Dd November 4, 2010 .Dt UTEMPTER 3 .Os ALT Linux .Sh NAME .Nm utempter_add_record , .Nm utempter_remove_added_record , .Nm utempter_remove_record , .Nm utempter_set_helper .Nd utempter interface .Sh SYNOPSIS .In utempter.h .Ft int .Fn utempter_add_record "int fd" "const char *host" .Ft int .Fn utempter_remove_added_record "void" .Ft int .Fn utempter_remove_record "int fd" .Ft void .Fn utempter_set_helper "const char *pathname" .Sh DESCRIPTION .Fn utempter_add_record function adds a login record to the database for the TTY belonging to the pseudo-terminal master file descriptor .Fa fd , using the username corresponding with the real user ID of the calling process and the optional hostname .Fa host . This function spawns a privileged process to perform the actual logging. .Pp .Fn utempter_remove_record function marks the login session as being closed for the TTY belonging to the pseudo-terminal master file descriptor .Fa fd . This function spawns a privileged process to perform the actual logging. .Pp .Fn utempter_remove_added_record function has the same properties as the previously mentioned function, except that it uses an internally cached value of the file descriptor passed to the login functions. .Pp .Fn utempter_set_helper function changes default helper path to the specified value. The pointer passed to this function must remain valid all the time while utempter interface is in use. .Sh RETURN VALUES On error, zero is returned. On success, a non-zero value is returned. .Sh NOTES During execution of the privileged process spawned by these functions, SIGCHLD signal handler will be temporarily set to the default action. .Sh SEE ALSO .Xr pututline 3 , .Xr sigaction 3 , .Xr updwtmp 3 . .Sh HISTORY These functions appeared in ALT Linux Sisyphus in October 2001.