]>
Commit | Line | Data |
---|---|---|
1 | .\" $NetBSD: getlastlogx.3,v 1.1 2003/08/26 17:37:51 wiz Exp $ | |
2 | .\" | |
3 | .\" Copyright (c) 2003 The NetBSD Foundation, Inc. | |
4 | .\" All rights reserved. | |
5 | .\" | |
6 | .\" This code is derived from software contributed to The NetBSD Foundation | |
7 | .\" by Thomas Klausner. | |
8 | .\" | |
9 | .\" Redistribution and use in source and binary forms, with or without | |
10 | .\" modification, are permitted provided that the following conditions | |
11 | .\" are met: | |
12 | .\" 1. Redistributions of source code must retain the above copyright | |
13 | .\" notice, this list of conditions and the following disclaimer. | |
14 | .\" 2. Redistributions in binary form must reproduce the above copyright | |
15 | .\" notice, this list of conditions and the following disclaimer in the | |
16 | .\" documentation and/or other materials provided with the distribution. | |
17 | .\" 3. All advertising materials mentioning features or use of this software | |
18 | .\" must display the following acknowledgement: | |
19 | .\" This product includes software developed by the NetBSD | |
20 | .\" Foundation, Inc. and its contributors. | |
21 | .\" 4. Neither the name of The NetBSD Foundation nor the names of its | |
22 | .\" contributors may be used to endorse or promote products derived | |
23 | .\" from this software without specific prior written permission. | |
24 | .\" | |
25 | .\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS | |
26 | .\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED | |
27 | .\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR | |
28 | .\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS | |
29 | .\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | |
30 | .\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | |
31 | .\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | |
32 | .\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | |
33 | .\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | |
34 | .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | |
35 | .\" POSSIBILITY OF SUCH DAMAGE. | |
36 | .\" | |
37 | .Dd Dec 26, 2005 | |
38 | .Dt GETLASTLOGX 3 | |
39 | .Os | |
40 | .Sh NAME | |
41 | .Nm getlastlogx , | |
42 | .Nm getlastlogxbyname , | |
43 | .Nm getutmp , | |
44 | .Nm getutmpx , | |
45 | .Nm utmpxname | |
46 | .Nd user accounting database functions | |
47 | .Sh SYNOPSIS | |
48 | .In utmpx.h | |
49 | .Ft struct lastlogx * | |
50 | .Fn getlastlogx "uid_t uid" "struct lastlogx *ll" | |
51 | .Ft struct lastlogx * | |
52 | .Fn getlastlogxbyname "const char *name" "struct lastlogx *ll" | |
53 | .Ft void | |
54 | .Fn getutmp "const struct utmpx *ux" "struct utmp *u" | |
55 | .Ft void | |
56 | .Fn getutmpx "const struct utmp *u" "struct utmpx *ux" | |
57 | .Ft int | |
58 | .Fn utmpxname "const char *fname" | |
59 | .Sh DESCRIPTION | |
60 | The | |
61 | .Fn getlastlogx | |
62 | function looks up the entry for the user with user id | |
63 | .Fa uid | |
64 | and returns it in | |
65 | .Fa \&ll . | |
66 | If the provided | |
67 | .Fa \&ll | |
68 | is | |
69 | .Dv NULL , | |
70 | the necessary space will be allocated by | |
71 | .Fn getlastlogx | |
72 | and should be | |
73 | .Fn free Ns d | |
74 | by the caller. | |
75 | The | |
76 | .Fn getlastlogxbyname | |
77 | function is similar to | |
78 | .Fn getlastlogx , | |
79 | except the user name is passed. | |
80 | .Pp | |
81 | .Fn getutmp | |
82 | function fills out the entries in the struct utmp | |
83 | .Fa u | |
84 | with the data provided in the struct utmpx | |
85 | .Fa ux . | |
86 | .Fn getutmpx | |
87 | does the opposite, filling out the entries in the struct utmpx | |
88 | .Fa ux | |
89 | with the data provided in the struct utmp | |
90 | .Fa u , | |
91 | and initializing all the unknown fields to 0. | |
92 | The sole exception is the | |
93 | .Fa ut_type | |
94 | field, which will be initialized to | |
95 | .Dv USER_PROCESS . | |
96 | .Pp | |
97 | A | |
98 | .Ft struct lastlogx | |
99 | is defined like this: | |
100 | .Bd -literal | |
101 | struct lastlogx { | |
102 | struct timeval ll_tv; /* time entry was created */ | |
103 | char ll_line[_UTX_LINESIZE]; /* tty name */ | |
104 | char ll_host[_UTX_HOSTSIZE]; /* host name */ | |
105 | }; | |
106 | .Ed | |
107 | .Pp | |
108 | The | |
109 | .Fn utmpxname | |
110 | function sets the default | |
111 | .Xr utmpx 5 | |
112 | database file name to | |
113 | .Fa fname . | |
114 | .Sh RETURN VALUES | |
115 | .Fn getlastlogx | |
116 | and | |
117 | .Fn getlastlogxbyname | |
118 | return the found entry on success, or | |
119 | .Dv NULL | |
120 | if it could not open the database, could not find an entry matching | |
121 | .Fa uid | |
122 | or | |
123 | .Fa name , | |
124 | or could not allocate the necessary space (in case | |
125 | .Fa \&ll | |
126 | was | |
127 | .Dv NULL ) . | |
128 | .Pp | |
129 | .Fn utmpxname | |
130 | returns 1 on success, or 0 if the supplied file name was too long or | |
131 | did not end with | |
132 | .Sq x . | |
133 | .Sh SEE ALSO | |
134 | .Xr endutxent 3 , | |
135 | .Xr utmpx 5 | |
136 | .Sh HISTORY | |
137 | The functions | |
138 | .Fn getutmp , | |
139 | .Fn getutmpx , | |
140 | and | |
141 | .Fn utmpxname | |
142 | first appeared in | |
143 | .Tn Solaris . | |
144 | .Nm getlastlogx | |
145 | first appeared in | |
146 | .Nx 2.0 . |