HEADS UP: <utmp.h> gone. All welcome <utmpx.h>.

Pieter de Goeje pieter at degoeje.nl
Wed Jan 13 23:54:55 UTC 2010

On Wednesday 13 January 2010 20:42:54 Ed Schouten wrote:
> Hello everyone,
> I just made various commits to FreeBSD HEAD to remove our old user
> accounting database interface (see utmp(5)) and replace it by the POSIX
> standardized utmpx interface (see getutxent(3)). This means we just got
> rid of some annoyances that are as old as the FreeBSD project itself:
> - Hostnames were originally restricted to 16 bytes, which is way too
>   short for your average hostname generated by your ISP, but also for
>   IPv6 addresses, which are at most 32 + 7 = 39 characters.

This is most welcome :-)

> - No support for login sessions not related to TTYs, like ppp(8),
>   ftpd(8) sessions.
> - No support for multiple login sessions on one TTY, for example
>   generated by login(1).
> I was not able to give us a smooth transition from utmp towards utmpx,
> simply because our utmp implementation offered almost no utility
> functions, which means all consumers modify the database files
> themselves. This means you should probably recompile any applications
> you're interested in that uses the user accounting database. I realize
> this may be quite uncomfortable, but we can't always win.
> [ This information is mainly for port maintainers: ]
> I've noticed there is some breakage in ports, but it shouldn't be too
> serious. I've seen cases where an application includes <utmp.h>, even
> though it doesn't use anything provided by that header. In other cases
> they used fields like UT_NAMESIZE to derive the maximum user name length
> supported by the system, which is clearly not what this definition was
> intended for. I've incremented __FreeBSD_version to 900007 to identify
> the import of utmpx. In case a certain port breaks badly, let me know
> and I'm willing to take a look at it.
> Be sure to give it a try and report any issues. Thanks!

From the commit logs I can tell it was a lot of work on something that many 
people wouldn't consider a very glamourous or spectacular piece of FreeBSD.

So let me just say: Thanks!


Pieter de Goeje

More information about the freebsd-current mailing list