[comp.os.vms] Terminal name length problems

ardai@sybil.UUCP (Mike Ardai) (07/31/88)

I just noticed some strangeness on our 8550.  It has been up for 
30 days, and the lat terminal numbers have just topped 999.  It
seems that 'show users' or something is using an 8-byte buffer 
to hold the terminal name and has just overflowed.  I hope there 
is nothing important in the next byte :-}  Does anyone know if this 
is just an ignorable nuisance, or is it a potential problem?

/mike
          VAX/VMS Interactive Users
           30-JUL-1988 10:43:14.44
    Total number of interactive users = 3

 Username     Process Name      PID     Terminal
 ARDAI        Ardai           20407260  LTA1009        LTA1009:
 ZELLER       ZELLER985       20406522  LTA985:        
 ZELLER       ZELLER986       20406525  LTA986:        

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Michael L. Ardai   Teradyne DATA Group
Usenet: ...!sun!sequent!sybil!ardai
USnail: 179 Lincoln St.   Boston MA 02111

*** Note: SYBIL is not a gateway into Teradyne's internal network ***

#include <disclaimer.h>

MNK@DRACO.HAC.COM (Michael N. Kimura) (08/09/88)

> > From:         Mike Ardai <sequent!sybil!ardai@DECWRL.DEC.COM>
> > Subject:      Terminal name length problems
> > To:           John Hascall <GA.JPH@ISUMVS>
> >
> > I just noticed some strangeness on our 8550.  It has been up for
> > 30 days, and the lat terminal numbers have just topped 999.  It
> > seems that 'show users' or something is using an 8-byte buffer
> > to hold the terminal name and has just overflowed.  I hope there
> > is nothing important in the next byte :-}  Does anyone know if this
> > is just an ignorable nuisance, or is it a potential problem?
> >
> > /mike
> >           VAX/VMS Interactive Users
> >            30-JUL-1988 10:43:14.44
> >     Total number of interactive users = 3
> >
> >  Username     Process Name      PID     Terminal
> >  ARDAI        Ardai           20407260  LTA1009        LTA1009:
> >  ZELLER       ZELLER985       20406522  LTA985:
> >  ZELLER       ZELLER986       20406525  LTA986:
> >
>    The same thing happens here, it seems that the show users buffer
>   is too small, hence the truncation.  Also it looks at the last
>   character of the terminal name an if it is not at colon, it thinks
>   that it is a virtual terminal and so it looks for and displays the
>   "real live physical terminal" as well....

As it turns out SHOW USERS displays your terminal name from the PCB which is
at offset PCB$T_TERMINAL and is a counted string (i.e.  first  byte  is  the
length of the string) PCB$S_TERMINAL (8) bytes long.  Therefore VMS can only
hold  a  7  byte  terminal  name in the PCB.  You can verify that by calling
$GETJPI with an item of JPI$_TERMINAL which will return  PCB$T_TERMINAL.

$ write sys$output f$getjpi("20407260","TERMINAL")
LTA1009

Also,    if    the    physical   terminal   name   returned   from   $GETDVI
(DVI$_TT_PHYDEVNAM) is not identical to  the  terminal  name  returned  from
$GETJPI  (JPI$_TERMINAL)  then the physical terminal name is also displayed.
Usually this will be the case for a virtual terminal, but this is  also  the
case  when  the  PCB$T_TERMINAL  name  has  had  the colon truncated off and
doesn't match the full name with the colon returned by $GETDVI

---------------------------------------------------------------------------
Michael Kimura

Internet:	mnk%draco@hac2arpa.hac.com
BITnet:		mnk@draco.hac.com
Telephone:	(213) 615-9775

US Mail:	Hughes Aircraft Company (RSG)
		P.O. Box 92426		MS: R2/A159
		Los Angeles,  CA  90009
---------------------------------------------------------------------------