      This document is a manual for the BANNER security banner and page 
marking program.  The pages that make up Figure 1 and Examples 1,2,3 and 
4 are in a file called FIGURES.132.  FIGURES.132 is a 132 character wide
file that is intended for a printer that can handle this width.  

      I recommend printing the file of figures on a line printer and 
then reducing them on a xerox machine for insertion in this manual.  The 
empty pages in this manual are provided for pasting the figures right on
each corresponding page.  Another method would be to print out the 
figures on a laser printer in landscape mode with a small line printer 
font.

      The figures are vital and do make the understanding of this 
document an easier chore.


                               Eric.















                           B A N N E R


       A security banner and page marking program for VAX/VMS


                            July 1985









                                by
                           Eric Andresen
                   General Research Corporation

CONTENTS
________________________________________________________________________


Format                                                                 1
________________________________________________________________________

Description                                                            2
________________________________________________________________________

Command Qualifiers                                                     6
________________________________________________________________________

Command Parameters                                                    10
________________________________________________________________________

Examples                                                              11
________________________________________________________________________







INTENDED AUDIENCE
________________________________________________________________________


      This document is for VAX/VMS users.  The reader must have an
understanding of how VMS commands, qualifiers and parameters are used.







STRUCTURE OF THIS DOCUMENT
________________________________________________________________________


      The section called Format is a brief description of the BANNER
command and its parameters and qualifiers.  It is intended to be a
reference page only. The Description section describes the uses of
BANNER and makes reference to some of the key words used in this manual.
The Command Qualifiers and Parameters section describes each parameter
and qualifier in detail, showing command syntax, default values and
lengths of the various fields. The Examples section gives a number of
examples and the results they produce.  

FORMAT
_______________________________________________________________________


$ BANNER  classification  file-spec[,...]


      Command qualifiers                              Value limitations

      /[NO]ADDRESS
      /[NO]CLASS_NOTE=[class-note]                    70 character max
      /[NO]CLASSBY=[style-number]                     1 or 2
      /[NO]DATE
      /[NO]DOC_NUMBER=[document-number]               20 character max
      /[NO]FILE_CLASS=[class-of-file-name]            10 character max
      /[NO]FILE_NAME=[file-name]                      19 character max
      /[NO]HANDLE=[handle]                            60 character max
      /[NO]LOG_NUMBER=[log-number]                    20 character max
      /[NO]SIGN
      /[NO]USERNAME=[username]                        19 character max
      /[NO]WORK_ORDER=[work-order]                    27 character max

      /[NO]BATCH=[batch-queue]                        255 character max
      /[NO]CARRIAGE_CONTROL=[fortran|list|none]
      /[NO]FILL_CHAR=[one character]                  1 character max
      /[NO]LINES_PAGE=[number]                        56 thru 66
      /[NO]NOTIFY
      /[NO]OVERSTRIKE
      /[NO]PAGE_NUMBER
      /[NO]QUEUE=[print-queue]                        255 character max
      /[NO]SAVE
      /[NO]TOTAL_PAGES
      /[NO]UNDERLINE

      Parameters                                                       

      classification    Specifies the major classification of the job.
                        This is the text that appears in large letters.
                        Up to 19 characters may be specified

      file-spec[,...]   File to be printed.  A list of up to 20 files
                        may be given with wild card characters.  Each
                        file name may have up to 255 characters.

      []     Something in brackets means it is optional.
      |      The vertical bar means there is a choice of items.
      TEXT   Text strings as parameters and as command qualifier values
             must be enclosed in double quotes if there are spaces in
             the string and if the desired text is to be in lowercase
             letters and if there is a symbol in the text that affects
             the VMS interpretation of the command line, like "-".
DESCRIPTION
________________________________________________________________________


      BANNER is a security oriented banner and page marking program that
is designed to run in the VAX/VMS environment.  It creates a customized
two page header banner at the beginning of a job and a two page trailer
banner at the end of a job.  Banner pages can optionally include a
variety of items that describe the file being printed and the
classification of the file.  Each page in a printed document has a line
at the top of every page that may include a classification note,
document number and page number.  Each page also has a line at the
bottom that that may include two different classifications notes.

      Figure 1 shows the style of the banner and the last two lines of
that figure show the style of the top and bottom page markings.  Descrip-
tions of the fields can be found on the opposite page.  The same
reference numbers are used next to their corresponding qualifiers in the
Command Qualifiers section.  Almost all of the text on the banner pages
and page markings can be described specifically, defaulted or eliminated.
As an example, the large username can be described specifically as some
string of characters. If not described, it will be the same as the
username of the VMS account being used.  It can also be completely
eliminated.  All of the text areas are modified by adding qualifiers to
the BANNER command. Each field has a command qualifier that describes
whether the field should exist and whether it should take on a default
value or a specified one. 

      Some of the fields have different styles to accommodate various
needs for projects.  The document number at the top of the banner pages
can either be called a "Doc. No." or a "Log No.".  This is specified by
using one of the command qualifiers also.  The qualifier /DOC_NUMBER
places the string "Doc. No." at the top of the page and on all page
markings.   If the document number itself is not specified, a line will
appear in its place to be filled in by hand later.  The /LOG_NUMBER
qualifier works the same way, but creates the text "Log No." on the
banner pages and page markings.  There is, however, a subtle difference
between the document number and the log number.   The log number will
not be referenced on every page unless the actual log number has been
specified.  To allow enough versatility, something as simple as a
document number or log number can take on several different forms. Two
different qualifiers define how the document number must look and what
its value should be.

      In addition to the qualifiers that modify the various text areas,
there are qualifiers that describe important information about how the
file should print.  The printer you want to print to, whether you would
like processing to occur in batch and whether page markings should be
underlined or overstriked are a few options a user might specify with
qualifiers.

      It is quite possible to enter the BANNER command with no
qualifiers at all.  If this is done all of the values will default.
Default conditions include the default string that might appear and
whether some text item appears at all.  When it is said that a qualifier
is "specified", this means that either it appears by default or it was
actually added to the BANNER command. Each VAX may have different
defaults set up.  Printing one small file with no qualifiers is a good
way to see how the System Manager has set up BANNER on your VAX.

      The BANNER program reads through the input file(s) and creates an
appropriate output file for the printer, using all of the options
specified.  BANNER is able to read most sequential files and supports
"fortran", "list" and "none" carriage control files.  If an input files'
record is longer than the maximum allowable column width the remaining
portion of the record will be stripped off.  The largest column width
for fortran files is 133 including the carriage control column.  "None"
carriage control files may have 135 columns and list carriage control
files may have 132 columns.  If more than one input file is specified
there will be no additional banner pages in the document separating
them.  They will just be appended one after the other and page numbering
will occur sequentially from the beginning of the document to the end.
The output file created by banner is a variable length carriage control
"none" file with up to 134 characters per record. 

      BANNER is also capable of printing plot files for Printronix type 
printers.  There are no qualifiers that pertain to this feature.  To 
print a plot file simply supply the file name as if it were any ASCII 
file and BANNER will do the rest.  BANNER realizes that a file has some 
Printronix plot data in it when it encounters the CONTROL E character 
or ASCII 5.  Normal ASCII data can be mixed with plot data.

      BANNER will attempt to mark every page of a plot file if it is 
possible.  The standard BANNER flag pages are printed and the first
non-flag page will always begin with a header.  The plot is then printed
and BANNER will place a footer or a header in the normal position on
each page only if there is room.  A plot that takes up exactly a page
will have no footer.  If several plots have been appended within one
file and no text or form feeds occur (the file only has graphics) then 
the next page marking may only be the last footer on the last page.  If 
the file has form feeds or text in it then headers and footers will be 
placed in their appropriate positions whenever possible.  The main goal
in printing plots is that no plot will be broken up.  However, even if
pages are poorly marked due to a number of long plots appended together,
the trailer flag pages will be there and will always contain an accurate
count of the number of pages printed. 

                            Figure 1

[1]  Address of Company is optional.

[2]  Classification note is a line of characters that appears in 
     addition to the main classification marking.  It will appear on
     every page.

[3]  "Classified by" marking is optional and has two different styles.

[4]  Date when file was printed is optional

[5]  Document number is optional and if specified will appear on every
     page.  If not specified a fill-in line will be in its place.

[6]  Log number optionally causes the "Log No." field to be used 
     instead of the document number.  It too may appear on every page.

[7]  File name classification is the classification of the file name
     itself.  It appears optionally.

[8]  File name is a short version of the standard VMS file name.  It 
     can also be specified as any string of characters.

[9]  Handle is a classification marking that appears in addition to 
     the main classification marking and the classification note.

[10] Sign out marking allows a printout to be signed by an on-duty
     operator and by the recipient of the document.  It is optional.

[11] Username is the username of the VMS account from which the file 
     was printed.  It can be turned off or specified as some other string.

[12] Work order number is the account number of the VMS account being
     used or any string of characters.  It can be omitted.

[13] Classification is the main classification marking in large
     letters.
 
[14] Fill character is one character that is repeated in the page
     markings to make the line stand out, like the "*".
 
[15] Overstrike is an option that makes the page markings bold.
 
[16] Page number is an option to include page numbers.
 
[17] Total pages includes the total pages with the page number.

[18] Underline is an option that causes the page markings to be 
     underlined.

COMMAND QUALIFIERS
_______________________________________________________________________


[1]   /[NO]ADDRESS                                                     
      Specifies whether the company address appears on the banner pages.
      If negated the address will not appear.

[2]   /[NO]CLASS_NOTE=[class-note]                                     
      Specifies the classification note to appear on the banner pages
      and in the page markings. If omitted or not specified the
      classification note will be equal to the classification (13).
      The string of characters may not exceed 70 characters.

[3]   /[NO]CLASSBY=[style-number]                                      
      If negated there will be no "Classified by" marking. The style
      number may be 1 or 2 and the associated styles are as follows:

      1   Classified by: _____________     2   Classified by: __________
                         _____________         Declassify on: __________
          Declassify on: _____________         Derived from:  __________

[4]   /[NO]DATE                                                        
      Specifies whether the date when the file was printed is to appear
      on the banner pages.  If negated there will be no date.

[5]   /[NO]DOC_NUMBER=[document-number]                                
      If negated there will no reference to a document number.  If the
      actual document number is specified the document number will appear
      on all banner pages and on the top page marking of every page.  If
      the actual document number is omitted a fill-in line will appear
      in its place on the banner page and page markings.  The document
      number may be up to 20 characters and is automatically preceded by
      the abbreviation "Doc No.".

[6]   /[NO]LOG_NUMBER=[log-number]                                     
      If negated there will be no reference to a log number.  If
      included without a value the log number will be seen on the banner
      pages only as a fill-in line preceded by the abbreviation "Log No.".
      If the log number value is specified it will appear on the banner
      pages and in the top page marking of every page.  It may be up to 20
      characters in length.

[7]   /[NO]FILE_CLASS=[class-of-file-name]                             
      If negated there will be no file classification at the end of the
      file name.  If no specific value is given the file classification
      will be marked with a "U" for unclassified.  A value can be given
      of up to 10 characters.  The parenthesis should not be specified
      in the value.  The BANNER program includes them automatically.

[8]   /[NO]FILE_NAME=[file-name]                                       
      If negated the file name will be blank.  If included, but with no
      value, the file name will be built from the file name of the first
      VMS file being printed in the document.  As the file classification
      gets larger the file name will get smaller. Because of the large
      letters the file name and punctuation can not exceed 19 characters.
      A further limitation is that the length of the file name plus the
      length of the file classification, including punctuation and
      parenthesis, can not exceed 19 characters.

[9]   /[NO]HANDLE=[handle]                                             
      The handle is an additional security marking that may be up to 60
      characters in length.  If negated or the value is omitted the
      handle will be set to the main classification (13).  It appears on
      the banners and on the bottom page marking of each printed page.
      If the value $FILE is specified, the handle will contain the VMS 
      file name of the current file on each page.

[10]  /[NO]SIGN                                                        
      The "sign out" option places a marking on the front banner pages
      as seen in figure 1.  It could be used in a VAX installation where
      permanent operators sign out documents to recipients in order to
      log all classified files printed on the VAX.  If negated this
      marking will not appear.

[11]  /[NO]USERNAME=[username]                                         
      If negated the username field will be blank.  If included with no
      value the username of the VMS account will be used as the username.
      A value of up to 19 characters can be specified as a value to
      override the VMS accounts username.

[12]  /[NO]WORK_ORDER=[work-order]                                     
      If negated this field will be blank.  If included with no value
      the account number of the VMS account will be used.  A value of up
      to 27 characters can be specified to override the default.  The
      work order number will always have the heading "Work Order No." as
      long as this qualifier is not negated.

      /[NO]BATCH=[batch-queue]                                         
      The batch option instructs BANNER to process the file(s) in batch
      mode.  BANNER creates a temporary command procedure and submits it
      to the specified batch queue.  If no batch queue is specified the
      job will be submitted to SYS$BATCH.  The batch queue specification
      may be no more than 255 characters.  This option may be useful if
      a very large file is being processed.  

      /[NO]CARRIAGE_CONTROL=[fortran|list|none]                        
      This option is a way to force BANNER to interpret the files being
      processed as a particular type.  A file may be of a different type
      than VMS claims it is.  This option has been added to eliminate
      the step of converting a file to its proper type.  Only "Fortran",
      "List" and "None" carriage control files can be interpreted

[14]  /[NO]FILL_CHAR=[one character]                                   
      The fill character is the character that gets repeated in the
      page markings to make the line stand out more than the rest of the
      text on the page.  It may be one printable character, including a
      space.  If this is negated the line will be filled with blanks.

      /[NO]LINES_PAGE=[number]                                         
      The number of lines per page can be adjusted to accommodate
      different printers.  The number of lines per page is the total
      number, including the page markings.  If negated the number of
      lines per page will be 62.  The specified value may be from 56 to
      88 lines.

      /[NO]NOTIFY                                                      
      If included the user will be notified when the print job gets
      done.  This is the standard PRINT/NOTIFY option included with VMS.

[15]  /[NO]OVERSTRIKE                                                  
      The overstrike option causes the printer to overstrike the main
      classification on the banner pages and the page markings on all the
      printed pages.  Before using this option, the user must be sure
      that the printer being used allows this.

[16]  /[NO]PAGE_NUMBER                                                 
      The page numbering option causes the page number to appear on the
      top page marking of every printed page.  If negated no page number
      will appear.

      /[NO]QUEUE=[print-queue]                                         
      The queue is the printer queue that is to be printed to.  This
      defaults to SYS$PRINT, but can optionally be specified as any
      valid queue name of up to 255 characters.  If negated, the output
      file will not be sent to a queue.  It is necessary to include the
      /SAVE qualifier if the queue qualifier is negated.

      /[NO]SAVE                                                        
      The save qualifier causes the output file to be saved.  This might
      be helpful if the file is to be printed several times.  The file
      can then repeatedly be printed with the standard VMS PRINT
      command.  The saved file will have a file type of ".BAN". The save
      qualifier is usually negated by default.

[17]  /[NO]TOTAL_PAGES                                                 
      The total pages option causes the total pages to be placed beside
      the current page number as in Figure 1.  This option causes
      BANNER to run about 15% to 20% slower since it has to go through
      the input files twice since it has to figure the total number of
      pages before beginning to create the output file.

[18]  /[NO]UNDERLINE                                                   
      The underline option causes the page markings to be
      underlined once.  The output printer must be able to do this.

COMMAND PARAMETERS
_______________________________________________________________________


[13]  classification___________________________________________________
      The classification is the main classification that appears in
      large letters on the banner pages.  It is not optional.  It
      may be any string up to 19 characters long.  Several one letter
      codes can be used to reflect standard classifications.  If the
      one letter codes are used they will be replaced by their
      equivalent string.

      T    will be replaced by   TOP SECRET
      S    will be replaced by   SECRET
      R    will be replaced by   SECRET/RESTRICTED
      C    will be replaced by   CONFIDENTIAL
      U    will be replaced by   UNCLASSIFIED

      file-spec[,...]__________________________________________________
      The file specification is any valid VMS file specification.  Wild
      cards may be used and a list of up to 20 files can be given,
      separated by commas or plus signs.  Only the first file in the
      specification will be reflected on the banner page and no marking
      within the document will reflect that a new file has started.
      The files will simply be appended to each other in order.

EXAMPLES
_______________________________________________________________________


      For each example below there is a corresponding page that includes
the entire banner page produced by that command.  The bottom two lines
of each example page are the top and bottom pagemarkings respectively. 


Example 1______________________________________________________________

$ BANNER/NOTIFY U LOGIN.COM/USERNAME="BOB JONES"/FILL="_" -
  /NOLOG_NUMBER/HANDLE="My login command file"/PAGE/TOTAL

The user will be notified when the job finishes after executing this
command.


Example 2______________________________________________________________

$ BANNER/CLASS_NOTE="TOP SECRET - Don't even read this" -
  /HANDLE="Super Secret Project"/NOFILE_CLASS/NOUSERNAME/NOADDRESS -
  /DOC_NUMBER="TS - #1"/CLASSBY=2 T PLANS.DAT/SIGN/NOFILL


Example 3______________________________________________________________

$ BANNER "Company Private" BANNER.FOR/NODATE/FILE_CLASS=CP -
  /WORK=131401/NOCLASSBY/DOC_NUMBER


Example 4______________________________________________________________

$ BANNER/QUEUE=PRINT2/SAVE/BATCH  U  PROGRAM.FOR/LINES=60 -
  /WORK_ORDER=1234567/USERNAME=SYSTEM/NOFILE_CLASS

This example would create a batch job to process the file and would save
the output file.  The file would be submitted to the print queue PRINT2.
The entire document will have 60 lines on each page.

                           Example 1

                           Example 2

                           Example 3

                           Example 4
