# SOME DESCRIPTIVE TITLE # Copyright (C) YEAR Free Software Foundation, Inc. # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "POT-Creation-Date: 2012-05-01 04:39+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #. type: TH #: build/C/man3/getutent.3:30 #, no-wrap msgid "GETUTENT" msgstr "" #. type: TH #: build/C/man3/getutent.3:30 #, no-wrap msgid "2008-06-29" msgstr "" #. type: TH #: build/C/man3/getutent.3:30 build/C/man3/getutmp.3:24 build/C/man3/login.3:24 build/C/man3/updwtmp.3:23 build/C/man5/utmp.5:29 #, no-wrap msgid "Linux Programmer's Manual" msgstr "" #. type: SH #: build/C/man3/getutent.3:31 build/C/man3/getutmp.3:25 build/C/man3/login.3:25 build/C/man3/updwtmp.3:24 build/C/man5/utmp.5:30 #, no-wrap msgid "NAME" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:34 msgid "" "getutent, getutid, getutline, pututline, setutent, endutent, utmpname - " "access utmp file entries" msgstr "" #. type: SH #: build/C/man3/getutent.3:34 build/C/man3/getutmp.3:27 build/C/man3/login.3:27 build/C/man3/updwtmp.3:26 build/C/man5/utmp.5:32 #, no-wrap msgid "SYNOPSIS" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:36 build/C/man3/login.3:29 build/C/man5/utmp.5:34 msgid "B<#include Eutmp.hE>" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:38 msgid "B" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:40 msgid "BIB<);>" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:42 msgid "BIB<);>" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:44 msgid "BIB<);>" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:46 msgid "B" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:48 msgid "B" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:50 msgid "BIB<);>" msgstr "" #. type: SH #: build/C/man3/getutent.3:50 build/C/man3/getutmp.3:35 build/C/man3/login.3:35 build/C/man3/updwtmp.3:35 build/C/man5/utmp.5:34 #, no-wrap msgid "DESCRIPTION" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:53 msgid "" "New applications should use the POSIX.1-specified \"utmpx\" versions of " "these functions; see CONFORMING TO." msgstr "" #. type: Plain text #: build/C/man3/getutent.3:62 msgid "" "B() sets the name of the utmp-format file for the other utmp " "functions to access. If B() is not used to set the filename " "before the other functions are used, they assume B<_PATH_UTMP>, as defined " "in Ipaths.hE>." msgstr "" #. type: Plain text #: build/C/man3/getutent.3:67 msgid "" "B() rewinds the file pointer to the beginning of the utmp file. " "It is generally a good idea to call it before any of the other functions." msgstr "" #. type: Plain text #: build/C/man3/getutent.3:72 msgid "" "B() closes the utmp file. It should be called when the user code " "is done accessing the file with the other functions." msgstr "" #. type: Plain text #: build/C/man3/getutent.3:79 msgid "" "B() reads a line from the current file position in the utmp " "file. It returns a pointer to a structure containing the fields of the " "line. The definition of this structure is shown in B(5)." msgstr "" #. type: Plain text #: build/C/man3/getutent.3:95 msgid "" "B() searches forward from the current file position in the utmp " "file based upon I. If Iut_type> is one of B, " "B, B, or B, B() will find the first " "entry whose I field matches Iut_type>. If " "Iut_type> is one of B, B, " "B, or B, B() will find the first entry " "whose I field matches Iut_id>." msgstr "" #. type: Plain text #: build/C/man3/getutent.3:105 msgid "" "B() searches forward from the current file position in the utmp " "file. It scans entries whose I is B or " "B and returns the first one whose I field matches " "Iut_line>." msgstr "" #. type: Plain text #: build/C/man3/getutent.3:117 msgid "" "B() writes the I structure I into the utmp file. It " "uses B() to search for the proper place in the file to insert the " "new entry. If it cannot find an appropriate slot for I, B() " "will append the new entry to the end of the file." msgstr "" #. type: SH #: build/C/man3/getutent.3:117 build/C/man3/getutmp.3:49 build/C/man3/login.3:87 #, no-wrap msgid "RETURN VALUE" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:126 msgid "" "B(), B(), and B() return a pointer to a " "I on success, and NULL on failure (which includes the \"record " "not found\" case). This I is allocated in static storage, and " "may be overwritten by subsequent calls." msgstr "" #. type: Plain text #: build/C/man3/getutent.3:132 msgid "On success B() returns I; on failure, it returns NULL." msgstr "" #. type: Plain text #: build/C/man3/getutent.3:135 msgid "" "B() returns 0 if the new name was successfully stored, or -1 on " "failure." msgstr "" #. type: SH #: build/C/man3/getutent.3:135 #, no-wrap msgid "ERRORS" msgstr "" #. type: TP #: build/C/man3/getutent.3:136 #, no-wrap msgid "B" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:139 msgid "Out of memory." msgstr "" #. type: TP #: build/C/man3/getutent.3:139 #, no-wrap msgid "B" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:142 msgid "Record not found." msgstr "" #. type: Plain text #: build/C/man3/getutent.3:149 msgid "" "B(), B(), and the B functions can also fail " "for the reasons described in B(2)." msgstr "" #. type: SH #: build/C/man3/getutent.3:149 build/C/man3/login.3:92 build/C/man3/updwtmp.3:48 build/C/man5/utmp.5:223 #, no-wrap msgid "FILES" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:151 msgid "/var/run/utmp\tdatabase of currently logged-in users" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:153 msgid "/var/log/wtmp\tdatabase of past user logins" msgstr "" #. type: SH #: build/C/man3/getutent.3:153 build/C/man3/getutmp.3:53 build/C/man3/login.3:105 build/C/man3/updwtmp.3:52 build/C/man5/utmp.5:227 #, no-wrap msgid "CONFORMING TO" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:155 msgid "XPG2, SVr4." msgstr "" #. type: Plain text #: build/C/man3/getutent.3:165 msgid "" "In XPG2 and SVID 2 the function B() is documented to return " "void, and that is what it does on many systems (AIX, HP-UX, Linux libc5). " "HP-UX introduces a new function B<_pututline>() with the prototype given " "above for B() (also found in Linux libc5)." msgstr "" #. type: Plain text #: build/C/man3/getutent.3:169 msgid "" "All these functions are obsolete now on non-Linux systems. POSIX.1-2001, " "following SUSv1, does not have any of these functions, but instead uses" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:171 msgid "B<#include Eutmpx.hE>" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:173 msgid "B" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:175 msgid "B" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:177 msgid "B" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:179 msgid "B" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:181 msgid "B" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:183 msgid "B" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:192 msgid "" "These functions are provided by glibc, and perform the same task as their " "equivalents without the \"x\", but use I, defined on Linux to " "be the same as I. For completeness, glibc also provides " "B(), although this function is not specified by POSIX.1." msgstr "" #. type: Plain text #: build/C/man3/getutent.3:200 msgid "" "On some other systems, the I structure is a superset of the I " "structure, with additional fields, and larger versions of the existing " "fields, and parallel files are maintained, often I and " "I." msgstr "" #. type: Plain text #: build/C/man3/getutent.3:205 msgid "" "Linux glibc on the other hand does not use a parallel I file since " "its I structure is already large enough. The functions B() " "etc. are aliases for B() etc." msgstr "" #. type: SH #: build/C/man3/getutent.3:205 build/C/man3/getutmp.3:56 build/C/man3/login.3:108 build/C/man3/updwtmp.3:65 build/C/man5/utmp.5:279 #, no-wrap msgid "NOTES" msgstr "" #. type: SS #: build/C/man3/getutent.3:206 #, no-wrap msgid "Glibc Notes" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:209 msgid "The above functions are not thread-safe. Glibc adds reentrant versions" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:214 #, no-wrap msgid "" "B<#define _GNU_SOURCE> /* or _SVID_SOURCE or _BSD_SOURCE;\n" "\\& see B */\n" "B<#include Eutmp.hE>\n" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:216 #, no-wrap msgid "BIB<, struct utmp **>IB<);>\n" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:219 #, no-wrap msgid "" "BIB<,>\n" "B< struct utmp *>IB<, struct utmp **>IB<);>\n" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:222 #, no-wrap msgid "" "BIB<,>\n" "B< struct utmp *>IB<, struct utmp **>IB<);>\n" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:234 msgid "" "These functions are GNU extensions, analogs of the functions of the same " "name without the _r suffix. The I argument gives these functions a " "place to store their result. On success they return 0, and a pointer to the " "result is written in I<*ubufp>. On error these functions return -1. There " "are no utmpx equivalents of the above functions. (POSIX.1 does not specify " "such functions.)" msgstr "" #. type: SH #: build/C/man3/getutent.3:234 #, no-wrap msgid "EXAMPLE" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:242 msgid "" "The following example adds and removes a utmp record, assuming it is run " "from within a pseudo terminal. For usage in a real application, you should " "check the return values of B(3) and B(3)." msgstr "" #. type: Plain text #: build/C/man3/getutent.3:249 #, no-wrap msgid "" "#include Estring.hE\n" "#include Estdlib.hE\n" "#include Epwd.hE\n" "#include Eunistd.hE\n" "#include Eutmp.hE\n" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:254 #, no-wrap msgid "" "int\n" "main(int argc, char *argv[])\n" "{\n" " struct utmp entry;\n" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:256 #, no-wrap msgid " system(\"echo before adding entry:;who\");\n" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:268 #, no-wrap msgid "" " entry.ut_type = USER_PROCESS;\n" " entry.ut_pid = getpid();\n" " strcpy(entry.ut_line, ttyname(STDIN_FILENO) + strlen(\"/dev/\"));\n" " /* only correct for ptys named /dev/tty[pqr][0-9a-z] */\n" " strcpy(entry.ut_id, ttyname(STDIN_FILENO) + strlen(\"/dev/tty\"));\n" " time(&entry.ut_time);\n" " strcpy(entry.ut_user, getpwuid(getuid())-Epw_name);\n" " memset(entry.ut_host, 0, UT_HOSTSIZE);\n" " entry.ut_addr = 0;\n" " setutent();\n" " pututline(&entry);\n" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:270 #, no-wrap msgid " system(\"echo after adding entry:;who\");\n" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:277 #, no-wrap msgid "" " entry.ut_type = DEAD_PROCESS;\n" " memset(entry.ut_line, 0, UT_LINESIZE);\n" " entry.ut_time = 0;\n" " memset(entry.ut_user, 0, UT_NAMESIZE);\n" " setutent();\n" " pututline(&entry);\n" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:279 #, no-wrap msgid " system(\"echo after removing entry:;who\");\n" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:283 #, no-wrap msgid "" " endutent();\n" " exit(EXIT_SUCCESS);\n" "}\n" msgstr "" #. type: SH #: build/C/man3/getutent.3:284 build/C/man3/getutmp.3:67 build/C/man3/login.3:123 build/C/man3/updwtmp.3:81 build/C/man5/utmp.5:337 #, no-wrap msgid "SEE ALSO" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:287 msgid "B(3), B(5)" msgstr "" #. type: SH #: build/C/man3/getutent.3:287 build/C/man3/getutmp.3:70 build/C/man3/login.3:126 build/C/man3/updwtmp.3:84 build/C/man5/utmp.5:350 #, no-wrap msgid "COLOPHON" msgstr "" #. type: Plain text #: build/C/man3/getutent.3:294 build/C/man3/getutmp.3:77 build/C/man3/login.3:133 build/C/man3/updwtmp.3:91 build/C/man5/utmp.5:357 msgid "" "This page is part of release 3.40 of the Linux I project. A " "description of the project, and information about reporting bugs, can be " "found at http://www.kernel.org/doc/man-pages/." msgstr "" #. type: TH #: build/C/man3/getutmp.3:24 #, no-wrap msgid "GETUTMP" msgstr "" #. type: TH #: build/C/man3/getutmp.3:24 #, no-wrap msgid "2010-09-10" msgstr "" #. type: TH #: build/C/man3/getutmp.3:24 build/C/man5/utmp.5:29 #, no-wrap msgid "Linux" msgstr "" #. type: Plain text #: build/C/man3/getutmp.3:27 msgid "getutmp, getutmpx - copy utmp structure to utmpx, and vice versa" msgstr "" #. type: Plain text #: build/C/man3/getutmp.3:31 #, no-wrap msgid "" "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n" "B<#include Eutmpx.hE>\n" msgstr "" #. type: Plain text #: build/C/man3/getutmp.3:34 #, no-wrap msgid "" "B< void getutmp(const struct utmpx *>IB<, struct utmp *>IB<);>\n" "B< void getutmpx(const struct utmp *>IB<, struct utmpx *>IB<);>\n" msgstr "" #. type: Plain text #: build/C/man3/getutmp.3:49 msgid "" "The B() function copies the fields of the I structure " "pointed to by I to the corresponding fields of the I structure " "pointed to by I. The B() function performs the converse " "operation." msgstr "" #. type: Plain text #: build/C/man3/getutmp.3:51 msgid "These functions do not return a value." msgstr "" #. type: SH #: build/C/man3/getutmp.3:51 #, no-wrap msgid "VERSIONS" msgstr "" #. type: Plain text #: build/C/man3/getutmp.3:53 msgid "These functions first appeared in glibc in version 2.1.1." msgstr "" #. type: Plain text #: build/C/man3/getutmp.3:56 msgid "" "These functions are nonstandard, but appear on a few other systems, such as " "Solaris and NetBSD." msgstr "" #. e.g., on Solaris, the utmpx structure is rather larger than utmp. #. type: Plain text #: build/C/man3/getutmp.3:67 msgid "" "These functions exist primarily for compatibility with other systems where " "the I and I structures contain different fields, or the size of " "corresponding fields differs. On Linux, the two structures contain the same " "fields, and the fields have the same sizes." msgstr "" #. type: Plain text #: build/C/man3/getutmp.3:70 build/C/man3/login.3:126 msgid "B(3), B(5)" msgstr "" #. type: TH #: build/C/man3/login.3:24 #, no-wrap msgid "LOGIN" msgstr "" #. type: TH #: build/C/man3/login.3:24 #, no-wrap msgid "2004-05-06" msgstr "" #. type: TH #: build/C/man3/login.3:24 build/C/man3/updwtmp.3:23 #, no-wrap msgid "GNU" msgstr "" #. type: Plain text #: build/C/man3/login.3:27 msgid "login, logout - write utmp and wtmp entries" msgstr "" #. type: Plain text #: build/C/man3/login.3:31 msgid "BIB<);>" msgstr "" #. type: Plain text #: build/C/man3/login.3:33 msgid "BIB<);>" msgstr "" #. type: Plain text #: build/C/man3/login.3:35 msgid "Link with I<-lutil>." msgstr "" #. type: Plain text #: build/C/man3/login.3:40 msgid "" "The utmp file records who is currently using the system. The wtmp file " "records all logins and logouts. See B(5)." msgstr "" #. type: Plain text #: build/C/man3/login.3:46 msgid "" "The function B() takes the supplied I, I, and " "writes it to both the utmp and the wtmp file." msgstr "" #. type: Plain text #: build/C/man3/login.3:50 msgid "The function B() clears the entry in the utmp file again." msgstr "" #. type: SS #: build/C/man3/login.3:50 #, no-wrap msgid "GNU Details" msgstr "" #. type: Plain text #: build/C/man3/login.3:71 msgid "" "More precisely, B() takes the argument I struct, fills the field " "Iut_type> (if there is such a field) with the value " "B, and fills the field Iut_pid> (if there is such a " "field) with the process ID of the calling process. Then it tries to fill " "the field Iut_line>. It takes the first of I, I, " "I that is a tty, and stores the corresponding pathname minus a " "possible leading I into this field, and then writes the struct to the " "utmp file. On the other hand, if no tty name was found, this field is " "filled with \"???\" and the struct is not written to the utmp file. After " "this, the struct is written to the wtmp file." msgstr "" #. type: Plain text #: build/C/man3/login.3:87 msgid "" "The B() function searches the utmp file for an entry matching the " "I argument. If a record is found, it is updated by zeroing out the " "I and I fields, updating the I timestamp field and " "setting I (if there is such a field) to B." msgstr "" #. type: Plain text #: build/C/man3/login.3:92 msgid "" "The B() function returns 1 if the entry was successfully written to " "the database, or 0 if an error occurred." msgstr "" #. type: TP #: build/C/man3/login.3:93 #, no-wrap msgid "I" msgstr "" #. type: Plain text #: build/C/man3/login.3:99 msgid "" "user accounting database, configured through B<_PATH_UTMP> in " "Ipaths.hE>" msgstr "" #. type: TP #: build/C/man3/login.3:99 build/C/man3/updwtmp.3:49 #, no-wrap msgid "I" msgstr "" #. type: Plain text #: build/C/man3/login.3:105 msgid "" "user accounting log file, configured through B<_PATH_WTMP> in " "Ipaths.hE>" msgstr "" #. type: Plain text #: build/C/man3/login.3:108 msgid "Not in POSIX.1-2001. Present on the BSDs." msgstr "" #. type: Plain text #: build/C/man3/login.3:123 msgid "" "Note that the member I of I is called I in " "BSD. Therefore, I is defined as an alias for I in " "Iutmp.hE>." msgstr "" #. type: TH #: build/C/man3/updwtmp.3:23 #, no-wrap msgid "UPDWTMP" msgstr "" #. type: TH #: build/C/man3/updwtmp.3:23 #, no-wrap msgid "2008-07-02" msgstr "" #. type: Plain text #: build/C/man3/updwtmp.3:26 msgid "updwtmp, logwtmp - append an entry to the wtmp file" msgstr "" #. type: Plain text #: build/C/man3/updwtmp.3:29 #, no-wrap msgid "B<#include Eutmp.hE>\n" msgstr "" #. type: Plain text #: build/C/man3/updwtmp.3:31 #, no-wrap msgid "BIB<, const struct utmp *>IB<);>\n" msgstr "" #. type: Plain text #: build/C/man3/updwtmp.3:34 #, no-wrap msgid "" "BIB<, const char *>IB<, const char " "*>IB<);>\n" msgstr "" #. type: Plain text #: build/C/man3/updwtmp.3:40 msgid "B() appends the utmp structure I to the wtmp file." msgstr "" #. type: Plain text #: build/C/man3/updwtmp.3:48 msgid "" "B() constructs a utmp structure using I, I, I, " "current time and current process ID. Then it calls B() to append " "the structure to the wtmp file." msgstr "" #. type: Plain text #: build/C/man3/updwtmp.3:52 msgid "database of past user logins" msgstr "" #. type: Plain text #: build/C/man3/updwtmp.3:55 msgid "Not in POSIX.1-2001. Present on Solaris, NetBSD, and perhaps other systems." msgstr "" #. type: SH #: build/C/man3/updwtmp.3:55 #, no-wrap msgid "AVAILABILITY" msgstr "" #. type: Plain text #: build/C/man3/updwtmp.3:65 msgid "" "Both functions are available under glibc2, but not under libc5. However, " "B() used to occur in the old libbsd. These days, the B() " "function is included in libutil. (Hence you'll need to add I<-lutil> to " "your compiler command line to get it.)" msgstr "" #. type: Plain text #: build/C/man3/updwtmp.3:69 msgid "" "For consistency with the other \"utmpx\" functions (see B(3)), " "glibc provides (since version 2.1):" msgstr "" #. type: Plain text #: build/C/man3/updwtmp.3:72 #, no-wrap msgid "B<#include Eutmpx.hE>\n" msgstr "" #. type: Plain text #: build/C/man3/updwtmp.3:74 #, no-wrap msgid "" "BIB<, const struct utmpx " "*>IB<);>\n" msgstr "" #. type: Plain text #: build/C/man3/updwtmp.3:81 msgid "" "This function performs the same task as B(), but differs in that it " "takes a I structure as its last argument." msgstr "" #. type: Plain text #: build/C/man3/updwtmp.3:84 msgid "B(3), B(5)" msgstr "" #. type: TH #: build/C/man5/utmp.5:29 #, no-wrap msgid "UTMP" msgstr "" #. type: TH #: build/C/man5/utmp.5:29 #, no-wrap msgid "2011-09-28" msgstr "" #. type: Plain text #: build/C/man5/utmp.5:32 msgid "utmp, wtmp - login records" msgstr "" #. type: Plain text #: build/C/man5/utmp.5:41 msgid "" "The I file allows one to discover information about who is currently " "using the system. There may be more users currently using the system, " "because not all programs use utmp logging." msgstr "" #. type: Plain text #: build/C/man5/utmp.5:51 msgid "" "B I must not be writable by the user class \"other\", " "because many system programs (foolishly) depend on its integrity. You risk " "faked system logfiles and modifications of system files if you leave I " "writable to any user other than the owner and group owner of the file." msgstr "" #. type: Plain text #: build/C/man5/utmp.5:59 msgid "" "The file is a sequence of I structures, declared as follows in " "Iutmp.hE> (note that this is only one of several definitions " "around; details depend on the version of libc):" msgstr "" #. type: Plain text #: build/C/man5/utmp.5:63 #, no-wrap msgid "/* Values for ut_type field, below */\n" msgstr "" #. type: Plain text #: build/C/man5/utmp.5:78 #, no-wrap msgid "" "#define EMPTY 0 /* Record does not contain valid info\n" " (formerly known as UT_UNKNOWN on Linux) */\n" "#define RUN_LVL 1 /* Change in system run-level (see\n" " B(8)) */\n" "#define BOOT_TIME 2 /* Time of system boot (in I) */\n" "#define NEW_TIME 3 /* Time after system clock change\n" " (in I) */\n" "#define OLD_TIME 4 /* Time before system clock change\n" " (in I) */\n" "#define INIT_PROCESS 5 /* Process spawned by B(8) */\n" "#define LOGIN_PROCESS 6 /* Session leader process for user login */\n" "#define USER_PROCESS 7 /* Normal process */\n" "#define DEAD_PROCESS 8 /* Terminated process */\n" "#define ACCOUNTING 9 /* Not implemented */\n" msgstr "" #. type: Plain text #: build/C/man5/utmp.5:82 #, no-wrap msgid "" "#define UT_LINESIZE 32\n" "#define UT_NAMESIZE 32\n" "#define UT_HOSTSIZE 256\n" msgstr "" #. type: Plain text #: build/C/man5/utmp.5:87 #, no-wrap msgid "" "struct exit_status { /* Type for ut_exit, below */\n" " short int e_termination; /* Process termination status */\n" " short int e_exit; /* Process exit status */\n" "};\n" msgstr "" #. type: Plain text #: build/C/man5/utmp.5:115 #, no-wrap msgid "" "struct utmp {\n" " short ut_type; /* Type of record */\n" " pid_t ut_pid; /* PID of login process */\n" " char ut_line[UT_LINESIZE]; /* Device name of tty - \"/dev/\" */\n" " char ut_id[4]; /* Terminal name suffix,\n" " or inittab(5) ID */\n" " char ut_user[UT_NAMESIZE]; /* Username */\n" " char ut_host[UT_HOSTSIZE]; /* Hostname for remote login, or\n" " kernel version for run-level\n" " messages */\n" " struct exit_status ut_exit; /* Exit status of a process\n" " marked as DEAD_PROCESS; not\n" " used by Linux init(8) */\n" " /* The ut_session and ut_tv fields must be the same size when\n" " compiled 32- and 64-bit. This allows data files and shared\n" " memory to be shared between 32- and 64-bit applications. */\n" "#if __WORDSIZE == 64 && defined __WORDSIZE_COMPAT32\n" " int32_t ut_session; /* Session ID (B(2)),\n" " used for windowing */\n" " struct {\n" " int32_t tv_sec; /* Seconds */\n" " int32_t tv_usec; /* Microseconds */\n" " } ut_tv; /* Time entry was made */\n" "#else\n" " long ut_session; /* Session ID */\n" " struct timeval ut_tv; /* Time entry was made */\n" "#endif\n" msgstr "" #. type: Plain text #: build/C/man5/utmp.5:121 #, no-wrap msgid "" " int32_t ut_addr_v6[4]; /* Internet address of remote\n" " host; IPv4 address uses\n" " just ut_addr_v6[0] */\n" " char __unused[20]; /* Reserved for future use */\n" "};\n" msgstr "" #. type: Plain text #: build/C/man5/utmp.5:129 #, no-wrap msgid "" "/* Backward compatibility hacks */\n" "#define ut_name ut_user\n" "#ifndef _NO_UT_TIME\n" "#define ut_time ut_tv.tv_sec\n" "#endif\n" "#define ut_xtime ut_tv.tv_sec\n" "#define ut_addr ut_addr_v6[0]\n" msgstr "" #. type: Plain text #: build/C/man5/utmp.5:139 msgid "" "This structure gives the name of the special file associated with the user's " "terminal, the user's login name, and the time of login in the form of " "B