sessreg - manage utmp/wtmp entries for non-init clients
sessreg [-w wtmp-file] [-u utmp-file] [-l line-name] [-h host-name] [-s
slot-number] [-x Xservers-file] [-t ttys-file] [-a] [-d] user-name
Sessreg is a simple program for managing utmp/wtmp entries for xdm ses-
System V has a better interface to /etc/utmp than BSD; it dynamically
allocates entries in the file, instead of writing them at fixed posi-
tions indexed by position in /etc/ttys.
To manage BSD-style utmp files, sessreg has two strategies. In con-
junction with xdm, the -x option counts the number of lines in
/etc/ttys and then adds to that the number of the line in the Xservers
file which specifies the display. The display name must be specified
as the "line-name" using the -l option. This sum is used as the "slot-
number" in /etc/utmp that this entry will be written at. In the more
general case, the -s option specifies the slot-number directly. If for
some strange reason your system uses a file other that /etc/ttys to
manage init, the -t option can direct sessreg to look elsewhere for a
count of terminal sessions.
Conversely, System V managers will not ever need to use these options
(-x, -s and -t). To make the program easier to document and explain,
sessreg accepts the BSD-specific flags in the System V environment and
BSD and Linux also have a host-name field in the utmp file which
doesn’t exist in System V. This option is also ignored by the System V
version of sessreg.
In Xstartup, place a call like:
sessreg -a -l $DISPLAY -x /usr/X11R6/lib/xdm/Xservers $USER
and in Xreset:
sessreg -d -l $DISPLAY -x /usr/X11R6/lib/xdm/Xservers $USER
This specifies an alternate wtmp file, instead of /usr/adm/wtmp
for BSD or /etc/wtmp for sysV. The special name "none" disables
writing records to /usr/adm/wtmp.
This specifies an alternate utmp file, instead of "/etc/utmp".
The special name "none" disables writing records to /etc/utmp.
This describes the "line" name of the entry. For terminal ses-
sions, this is the final pathname segment of the terminal device
filename (e.g. ttyd0). For X sessions, it should probably be
the local display name given to the users session (e.g. :0). If
none is specified, the terminal name will be determined with
ttyname(3) and stripped of leading components.
This is set for BSD hosts to indicate that the session was ini-
tiated from a remote host. In typical xdm usage, this options
is not used.
Each potential session has a unique slot number in BSD systems,
most are identified by the position of the line-name in the
/etc/ttys file. This option overrides the default position
determined with ttyslot(3). This option is inappropriate for
use with xdm, the -x option is more useful.
As X sessions are one-per-display, and each display is entered
in this file, this options sets the slot-number to be the number
of lines in the ttys-file plus the index into this file that the
line-name is found.
This specifies an alternate file which the -x option will use to
count the number of terminal sessions on a host.
-a This session should be added to utmp/wtmp.
-d This session should be deleted from utmp/wtmp. One of -a/-d
must be specified.
Keith Packard, MIT X Consortium
Man(1) output converted with