In message: <[EMAIL PROTECTED]>
            John Baldwin <[EMAIL PROTECTED]> writes:
: On Monday 05 May 2008 04:07:22 am Poul-Henning Kamp wrote:
: > In message <[EMAIL PROTECTED]>, Colin Percival writes:
: > >Poul-Henning Kamp wrote:
: > >> In message <[EMAIL PROTECTED]>, Warner
: > >> Losh write
: > >>
: > >> s:
: > >>>  Added files:
: > >>>    etc/etc.mips         ttys
: > >>>  Log:
: > >>>  Mips ttys file.  Copied from i386 version with removal of the vga
: > >>>  entries.
: > >>
: > >> We should really replace this file with a script that generates it
: > >> from a set of sensible parameters at build-time.
: > >
: > >Yes please -- kmacy might have worked around this, but at one point this
: > >was the only non-kernel file which needed to be different for Xen builds.
: >
: > And for anyone looking at this, there is also a task to eliminate the
: > pty devices in this file, the reason why they are there has to do with
: > the introduction of the really weird notion of "remote logins" back in
: > the early 1980'ies, we really could do better.
: 
: Err, I thought it was because utmp still uses the line index in /etc/ttys so 
: ptys have to be listed in /etc/ttys to get an index.  I haven't looked at 
: utmpx, but it might be nice if we had a utmp format that 1) didn't limit 
: usernames to 16 chars, and 2) stored the name of the tty rather than a dev_t. 
 
: 2) is what I think has broken 'w -M /var/crash/vmcore.X' since 5.x.

/var/run/utmp stores the name.  However, it does appear to use the
index in /etc/ttys to write the record into /var/run/utmp.  typical
entries look like:

000002c0  74 74 79 70 30 00 00 00  69 6d 70 00 00 00 00 00  |ttyp0...imp.....|
000002d0  00 00 00 00 00 00 00 00  3a 30 2e 30 00 00 00 00  |........:0.0....|
000002e0  00 00 00 00 00 00 00 00  28 ec 14 48              |........(..H

Which matches the structures fairly well:

struct utmp {
        char    ut_line[UT_LINESIZE];
        char    ut_name[UT_NAMESIZE];
        char    ut_host[UT_HOSTSIZE];
        int32_t ut_time;
};

Unfortunately, the #defines for the above are somewhat meager:

#define UT_NAMESIZE     16      /* see MAXLOGNAME in <sys/param.h> */
#define UT_LINESIZE     8
#define UT_HOSTSIZE     16

Warner
_______________________________________________
cvs-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/cvs-all
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to