svn commit: r202779 - head/lib/libc/gen
Ed Schouten
ed at FreeBSD.org
Fri Jan 22 05:09:10 UTC 2010
Author: ed
Date: Fri Jan 22 05:09:10 2010
New Revision: 202779
URL: http://svn.freebsd.org/changeset/base/202779
Log:
Describe why pututxline() doesn't entirely conform to standards.
Modified:
head/lib/libc/gen/getutxent.3
Modified: head/lib/libc/gen/getutxent.3
==============================================================================
--- head/lib/libc/gen/getutxent.3 Fri Jan 22 04:53:08 2010 (r202778)
+++ head/lib/libc/gen/getutxent.3 Fri Jan 22 05:09:10 2010 (r202779)
@@ -414,14 +414,32 @@ The
.Fn endutxent ,
.Fn getutxent ,
.Fn getutxid ,
-.Fn getutxline ,
-.Fn pututxline
+.Fn getutxline
and
.Fn setutxent
functions are expected to conform to
.St -p1003.1-2008 .
.Pp
The
+.Fn pututxline
+function deviates from the standard by writing its records to multiple
+database files, depending on its
+.Fa ut_type .
+This prevents the need for special utility functions to update the other
+databases, such as the
+.Fn updwtmpx
+function which is often available in other implementations.
+It also tries to replace
+.Dv DEAD_PROCESS
+entries in the active sessions database when storing
+.Dv USER_PROCESS
+entries and no entry with the same value for
+.Fa ut_id
+has been found.
+The standard always requires a new entry to be allocated, which could
+cause an unbounded growth to the database.
+.Pp
+The
.Fn getutxuser
and
.Fn setutxdb
More information about the svn-src-all
mailing list