{*** EVERLOCK SB structure ***}

{*** Last Updated 15/Oct/96 SSS ***}

Type
  SecureBlock = Record       { 770 bytes total }
                                         { OFFSET  DESCRIPTION                         }
    id          : array[0..3] of char;   {  000    ID literal to scan for 'AZSB'       }
    drv         : char;                  {  004    Drive Pgm was loaded from (ASCII)   }
    auth        : char;                  {  005    Auth Device (A,B,C=disk)            }
    ptype       : char;                  {  006    Protection Type (C,E,I,N,P)         }
    prod        : array[0..8] of char;   {  007    Product Name (ASCIIZ)               }
    snp         : {unsigned} longint;    {  016    Product serial number               }
    hnuc        : word;                  {  020    Net-Users file handle               }
    avers       : word;                  {  022    Authorization version               }
    ecl         : word;                  {  024    Exec-Count Limit                    }
    dft         : integer;               {  026    0 = m/d/y, 1 = d/m/y, 2 = y/m/d     }
    edl         : word;                  {  028    Expire-Days Limit                   }
    etl         : word;                  {  030    Elapsed time on last day (etl * 2)secs }
    ed          : array[0..8] of char;   {  032    Expire-Date (ASCIIZ)                }
    chksum      : char;                  {  041    checksum                            }
    nuc         : word;                  {  042    Network-Users current count         }
    nul         : word;                  {  044    Network-Users Limit                 }
    icr         : integer;               {  046    Install counts remaining            }
    accflg      : set of 0..63;          {  048    Access Flags 1-64                   }
    usrdat      : array[0..7] of byte;   {  056    User-Data                           }
    rtype       : char;                  {  064    Reg. Type (N=Non-Verified)          }
    rname       : array[0..50] of char;  {  065    Register name (ASCIIZ)              }
    rcomp       : array[0..50] of char;  {  116    Register to company (ASCIIZ)        }
    rloc        : array[0..50] of char;  {  167    Register to location (ASCIIZ)       }
    rdate       : array[0..8] of char;   {  218    Register Date (ASCIIZ)              }
    cdate       : array[0..8] of char;   {  227    Current System Date (ASCIIZ)        }
    rsrvd1      : array[0..19] of char;  {  236                                        }
    secstr      : array[0..255] of char; {  256    Secure-String (expanded ASCIIZ)     }
    func        : integer;               {  512    function # (0,1,2)                  }
    stat1       : integer;               {  514    pass completion status              }
    stat2       : integer;               {  516    pass completion status              }
    stat3       : integer;               {  518    pass completion status              }
    source      : array[0..62] of char;  {  520    source path (including drive ASCIIZ) }
    target      : array[0..62] of char;  {  583    target path (including drive ASCIIZ) }
    rsrvd2      : array[0..1] of char;   {  646                                        }
    pin         : {unsigned} longint;    {  648    PIN (SCB Only)                      }
    ruc         : integer;               {  652    reset use count                     }
    pcnt        : integer;               {  654    # programs updated                  }
    rsrvd3      : array[0..1] of char;   {  656                                        }
    uninst      : integer;               {  658    DO Uninstall (0=No/1=Yes)           }
    reg         : integer;               {  660    NV Reg during install (0=No/1=Yes)  }
    rsrvd4      : array[0..3] of char;   {  662                                        }
    code        : array[0..29] of char;  {  666    auth code (ASCIIZ nnnnn-nnnnn-nnnnn-nnnnn-nnnnn)}
    rsrvd5      : array[0..73] of char;  {  696                                        }
  end;

