SESSREG(1)

SESSREG(1) | General Commands Manual | SESSREG(1)

# NAME

sessreg - manage utmpx/wtmpx entries for non-init clients

# SYNOPSIS

    sessreg
    [-w wtmpx-file]
    [-u utmpx-file]
    [-L lastlog-file]

        [-l line-name]
    [-h host-name]
    [-s slot-number]

        [-x Xservers-file]
    [-t ttys-file]
    [-V]
    [-a]
    [-d]
    user-name

# DESCRIPTION

Sessreg is a simple program for managing utmpx/wtmpx and lastlog entries for xdm sessions.

System V has a better interface to utmp than BSD; it dynamically allocates entries in the file, instead of writing them at fixed positions indexed by position in /etc/ttys.

To manage BSD-style utmp files, sessreg has two strategies. In conjunction 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 the utmp file 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 than /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 ignores them.

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.

This version of sessreg is built using the modern POSIX pututxline(3c) interfaces, which no longer require the slot-number, ttys-file, or Xservers-file mappings. For compatibility with older versions and other operating systems, the -s, -t, and -x flags are accepted, but ignored.

# USAGE

In Xstartup, place a call like:

           sessreg -a -l $DISPLAY -x /etc/X11/xdm/Xservers $USER

and in Xreset:

           sessreg -d -l $DISPLAY -x /etc/X11/xdm/Xservers $USER

# OPTIONS

-w wtmpx-file
  This specifies an alternate wtmpx file, instead of /var/log/wtmp. The special name "none" disables writing records to the wtmpx file.
-u utmpx-file
  This specifies an alternate utmpx file, instead of /var/run/utmp. The special name "none" disables writing records to the utmpx file.
-L lastlog-file
  This specifies an alternate lastlog file, instead of lastlogx, if the platform supports lastlog files. The special name "none" disables writing records to the lastlog file.
-l line-name
  This describes the "line" name of the entry. For terminal sessions, 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.
-h host-name
  This is set to indicate that the session was initiated from a remote host. In typical xdm usage, this options is not used.
-s slot-number
  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. This option is accepted for compatibility, but does nothing in this version of sessreg.
-x Xservers-file
  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 option is accepted for compatibility, but does nothing in this version of sessreg.
-t ttys-file
  This specifies an alternate file which the -x option will use to count the number of terminal sessions on a host. This option is accepted for compatibility, but does nothing in this version of sessreg.
-V, --version
  This option causes the command to print its version and exit.
-a
  This session should be added to utmpx/wtmpx.
-d
  This session should be deleted from utmpx/wtmpx. One of -a/-d must be specified.

# SEE ALSO

xdm(1), utmpx(5), wtmpx(5)

# AUTHOR

Keith Packard, MIT X Consortium

2025-03-22 | X Version 11