<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src-test/lib/libulog, branch releng/9.2</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src-test/atom?h=releng%2F9.2</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src-test/atom?h=releng%2F9.2'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/'/>
<updated>2012-06-18T04:55:07Z</updated>
<entry>
<title>MFC r233648:</title>
<updated>2012-06-18T04:55:07Z</updated>
<author>
<name>Eitan Adler</name>
<email>eadler@FreeBSD.org</email>
</author>
<published>2012-06-18T04:55:07Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=1be2e5bd8cc6faf5b25f9b39445ed5e3d1b6d5f5'/>
<id>urn:sha1:1be2e5bd8cc6faf5b25f9b39445ed5e3d1b6d5f5</id>
<content type='text'>
	Remove trailing whitespace per mdoc lint warning

Approved by:	cperciva (implicit)
</content>
</entry>
<entry>
<title>Fix reference to nonexistent manpage getuid(3).</title>
<updated>2010-10-11T20:30:57Z</updated>
<author>
<name>Ed Schouten</name>
<email>ed@FreeBSD.org</email>
</author>
<published>2010-10-11T20:30:57Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=eaeeb89e754fb0dfef7d116c2d8f64aec9cc900b'/>
<id>urn:sha1:eaeeb89e754fb0dfef7d116c2d8f64aec9cc900b</id>
<content type='text'>
Submitted by:	pluknet
</content>
</entry>
<entry>
<title>mdoc: order prologue macros consistently by Dd/Dt/Os</title>
<updated>2010-04-14T19:08:06Z</updated>
<author>
<name>Ulrich Spörlein</name>
<email>uqs@FreeBSD.org</email>
</author>
<published>2010-04-14T19:08:06Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=aa12cea2ccc6e686d6d31cf67d6bc69cbc1ba744'/>
<id>urn:sha1:aa12cea2ccc6e686d6d31cf67d6bc69cbc1ba744</id>
<content type='text'>
Although groff_mdoc(7) gives another impression, this is the ordering
most widely used and also required by mdocml/mandoc.

Reviewed by:	ru
Approved by:	philip, ed (mentors)
</content>
</entry>
<entry>
<title>Remove utmpx stub from libulog.</title>
<updated>2010-01-13T18:53:06Z</updated>
<author>
<name>Ed Schouten</name>
<email>ed@FreeBSD.org</email>
</author>
<published>2010-01-13T18:53:06Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=691ac623d7dc777e723f45bb0b941c28ef3d83a1'/>
<id>urn:sha1:691ac623d7dc777e723f45bb0b941c28ef3d83a1</id>
<content type='text'>
I'm not increasing the shlib major version for this, because not a
single application outside the base system should have used these
functions in such a short timespan.

Rewrite ulog_login(3) and ulog_logout(3) to build on top of the utmpx
implementation in libc.
</content>
</entry>
<entry>
<title>Implement &lt;utmpx.h&gt;.</title>
<updated>2010-01-13T17:29:55Z</updated>
<author>
<name>Ed Schouten</name>
<email>ed@FreeBSD.org</email>
</author>
<published>2010-01-13T17:29:55Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=a627ac61ab8d660acfe6c88b01bdca8e8c1590aa'/>
<id>urn:sha1:a627ac61ab8d660acfe6c88b01bdca8e8c1590aa</id>
<content type='text'>
The utmpx interface is the standardized interface of the user accounting
database. The standard only defines a subset of the functions that were
present in System V-like systems.

I'd like to highlight some of the traits my implementation has:

- The standard allows the on-disk format to be different than the
  in-memory representation (struct utmpx). Most operating systems don't
  do this, but we do. This allows us to keep our ABI more stable, while
  giving us the opportunity to modify the on-disk format. It also allows
  us to use a common file format across different architectures (i.e.
  byte ordering).

- Our implementation of pututxline() also updates wtmp and lastlog (now
  called utx.log and utx.lastlogin). This means the databases are more
  likely to be in sync.

- Care must be taken that our implementation discard any fields that are
  not applicable. For example, our DEAD_PROCESS records do not hold a
  TTY name. Just a time stamp, a record identifier and a process
  identifier. It also guarantees that strings (ut_host, ut_line and
  ut_user) are null terminated. ut_id is obviously not null terminated,
  because it's not a string.

- The API and its behaviour should be conformant to POSIX, but there may
  be things that slightly deviate from the standard. This implementation
  uses separate file descriptors when writing to the log files. It also
  doesn't use getutxid() to search for a field to overwrite. It uses an
  allocation strategy similar to getutxid(), but prevents DEAD_PROCESS
  records from accumulating.

Make sure libulog doesn't overwrite the manpages shipped with our C
library. Also keep the symbol list in Symbol.map sorted.

I'll bump __FreeBSD_version later this evening. I first want to convert
everything to &lt;utmpx.h&gt; and get rid of &lt;utmp.h&gt;.
</content>
</entry>
<entry>
<title>Build lib/ with WARNS=6 by default.</title>
<updated>2010-01-02T09:58:07Z</updated>
<author>
<name>Ed Schouten</name>
<email>ed@FreeBSD.org</email>
</author>
<published>2010-01-02T09:58:07Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=daaf5759104f210a9315f49f80f1e0f01a8b3bff'/>
<id>urn:sha1:daaf5759104f210a9315f49f80f1e0f01a8b3bff</id>
<content type='text'>
Similar to libexec/, do the same with lib/. Make WARNS=6 the norm and
lower it when needed.

I'm setting WARNS?=0 for secure/. It seems secure/ includes the
Makefile.inc provided by lib/. I'm not going to touch that directory.
Most of the code there is contributed anyway.
</content>
</entry>
<entry>
<title>Parse DEAD_PROCESS entries properly.</title>
<updated>2009-12-27T22:26:29Z</updated>
<author>
<name>Ed Schouten</name>
<email>ed@FreeBSD.org</email>
</author>
<published>2009-12-27T22:26:29Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=4a1f09d742873657ad2a7df0c17b31479d2e1531'/>
<id>urn:sha1:4a1f09d742873657ad2a7df0c17b31479d2e1531</id>
<content type='text'>
The TTY line name should always be set for DEAD_PROCESS entries right
now. When we parse a clean utmp entry, we don't want to interpret it as
a DEAD_PROCESS entry if the TTY has never been used yet.
</content>
</entry>
<entry>
<title>Several refinements to libulog's API.</title>
<updated>2009-12-26T22:36:05Z</updated>
<author>
<name>Ed Schouten</name>
<email>ed@FreeBSD.org</email>
</author>
<published>2009-12-26T22:36:05Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=444999a3147165b2f753184ec723a0c4e27b27bb'/>
<id>urn:sha1:444999a3147165b2f753184ec723a0c4e27b27bb</id>
<content type='text'>
- Only set the fields in the ulog_utmpx structure that are valid for the
  command in question. This means that strings like "shutdown" or "~"
  are not visible to the user anymore.
- Rename UTXF_* to UTXI_*, indicating the indexation, instead of using
  the `antique' filename. If we ever get rid of utmp, it makes little
  sense calling it by its old name.
</content>
</entry>
<entry>
<title>Don't corrupt logout entries in utmp files.</title>
<updated>2009-12-25T20:04:36Z</updated>
<author>
<name>Ed Schouten</name>
<email>ed@FreeBSD.org</email>
</author>
<published>2009-12-25T20:04:36Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=bfa3a5e5bc20d9d2da1478bd2efa36d3a6d23921'/>
<id>urn:sha1:bfa3a5e5bc20d9d2da1478bd2efa36d3a6d23921</id>
<content type='text'>
An older version of the code used a structure on the stack, instead of a
pointer to the structure. It looks like I didn't adjust the parameters
of the write(2) call, causing the first four/eight bytes of the entry to
be corrupted, instead of writing the entire entry to disk.
</content>
</entry>
<entry>
<title>The hostname passed to ulog_login(3) may be optional.</title>
<updated>2009-12-11T23:52:42Z</updated>
<author>
<name>Ed Schouten</name>
<email>ed@FreeBSD.org</email>
</author>
<published>2009-12-11T23:52:42Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test/commit/?id=c4cd42053e4ce99e195418c2cfa8a521fc6fe295'/>
<id>urn:sha1:c4cd42053e4ce99e195418c2cfa8a521fc6fe295</id>
<content type='text'>
Don't trip on a null pointer being passed to this function when
performing a local login.

Noticed by:	dougb
</content>
</entry>
</feed>
