Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 22 Jan 2010 05:09:10 +0000 (UTC)
From:      Ed Schouten <ed@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r202779 - head/lib/libc/gen
Message-ID:  <201001220509.o0M59ArC054993@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201001220509.o0M59ArC054993>