summaryrefslogtreecommitdiffstats
path: root/libexec/ulog-helper/ulog-helper.c
Commit message (Collapse)AuthorAgeFilesLines
* Do a better job at determining the username of the login session.ed2012-04-191-1/+23
| | | | | | | | | | | When multiple users share the same UID, the old code will simply pick an arbitrary username to attach to the utmpx entries. Make the code a bit more accurate by first checking whether getlogin() returns a username which corresponds to the uid of the calling process. If this fails, simply fall back to picking an arbitrary username. Reported by: saurik on GitHub MFC after: 2 weeks
* Minor cleanups to ulog-helper:ed2011-06-211-14/+10
| | | | | | | | | | | | - Remove unneeded linking against libmd. libulog depends on this library, but the ulog-helper tool itself does not. - Change the comment at the top to mention utmpx instead of utmp, wtmp and lastlog. - Simply use user_from_uid() to translate to a username string. - Put variable declarations together.
* Repair breakage to last-minute API change.ed2009-12-031-4/+2
| | | | | | | I changed ulog_log{in,out} to return a void, but forgot to change ulog-helper as well. Reported by: stefanf
* Add a new library: libulog.ed2009-12-031-0/+81
One of the things I really want to do, is to get rid of the limitations of our current utmp(5) mechanism: - It only allows 8 byte TTY device names. - The hostname only allows 16 bytes of storage. I'm not a big fan of <utmpx.h>, but I think we should at least try to add parts of it. Unfortunately we cannot implement <utmpx.h>, because we miss various fields, such as ut_id, ut_pid, etc. The API provided by libulog shares some similarities with <utmpx.h>, so it shouldn't be too hard to port these applications eventually. In most simple cases, it should just be a matter of removing the ulog_ prefix everywhere. As a bonus, it also implements a function called ulog_login_pseudo(), which allows unprivileged applications to write log entries, provided they have a valid file descriptor to a pseudo-terminal master device. libulog will allow a smoother transition to a new file format by adding a library interface to deal with utmp/wtmp/lastlog files. I initially thought about adding the functionality to libutil, but because I'm not planning on keeping this library around forever, we'd better keep it separated. Next items on the todo list: 1. Port applications in the base system (and ports) to libulog, instead of letting them use <utmp.h>. 2. Remove <utmp.h>, implement <utmpx.h> and reimplement this library on top. 3. Port as many applications as possible back to <utmpx.h>.
OpenPOWER on IntegriCloud