[mod.computers.vax] Extra space in UAF records

KARNEY%PPC.MFENET@NMFECC.ARPA.UUCP (12/22/86)

  I've written a program which updates records in the SYSUAF file.  I'm
using the layout of the SYSUAF file given by John Carosso in SYSUAFDEF.PAS
which Joe Meadows distributed as part of DELIVER.  The last two fields in
this record definition (uaf$b_filler5 and uaf$b_filler6) increase the
length of the record from 644 bytes to 1412 bytes.

  If you create a new SYSUAF.DAT, DIR/FULL shows that the record format is
"Variable length, maximum 1412 bytes", while DUMP/RECORD shows that the two
records (SYSTEM and DEFAULT) in the file both have only 644 bytes.

My questions are:
  What are these last two fields used for?
  Does it hurt to read in a 644 byte record and update it as a 1412 byte
record (with the extra bytes set to zero)?
  What's the easiest way in PASCAL to read and update variable length
records (from a file like SYSUAF.DAT) keeping the length of the record
fixed?

                    Charles Karney
                    Karney%PPC.MFENET@NMFECC.ARPA
CC:
        INFO-VAX@SRI-KL.ARPA
        KARNEY

iglesias%unxa.uci.edu@ICS.UCI.EDU (Mike Iglesias) (12/24/86)

You might consider using the $GETUAI/$SETUAI system services instead of
writing to the file directly.  That way, your program will be more
independent of changes in SYSUAF in the future, and you won't have to
worry about the fillers.  Of course, use of these system services
requires VMS v4.4 and up, so if you aren't running 4.4 or 4.5, you're
going to have to figure it out the hard way.


Mike Iglesias
University of California, Irvine
iglesias@ics.uci.edu   (arpa)
miglesias@ucivmsa      (bitnet)