*DECK FFSUVFN 
     FUNC FFSUVFN(FILENAME) B;
*CALL COPYRITE
# TITLE FFSUVFN - VALIDATE FILE NAME                                   #
  
      BEGIN                            # FFSUVFN                       #
  
# 
****  FFSUVFN - VALIDATE FILE NAME. 
* 
*     R. A. MANN   84/07/26.
* 
*     THIS FUNCTION VERIFIES THAT A VARIABLE CONFORMS TO NOS FILE 
*     NAMING CONVENTIONS. 
* 
*     ENTRY   FILENAME - VARIABLE CONTAING FILE NAME TO BE VERIFIED 
* 
*     EXIT    FFSUVFN = TRUE - FILE NAME OK 
*                       FALSE - FILE NAME CONTAINS ILLEGAL CHARACTERS.
* 
*     METHOD
*             TEST EACH CHARACTER TO BE BETWEEN A-Z, AND 0-9. 
* 
# 
  
      ITEM FILENAME U;       # FILE NAME TO BE VERIFIED      #
  
      ITEM CHAR     U;
      ITEM K        I;                 # LOOP VARIABLE                 #
      ITEM STAT     B;                 # STATUS FLAG                   #
  
      STAT = TRUE;
      IF C<0,1>FILENAME EQ 0 THEN 
        STAT = FALSE; 
      FOR K = 0 STEP 1 WHILE K LS 7 
        AND C<K,7-K>FILENAME NQ 0 AND STAT
      DO
        BEGIN 
        CHAR = C<K,1>FILENAME;
        IF 1 GR CHAR OR CHAR GR O"44" 
        THEN                           # ILLEGAL FILE NAME             #
          BEGIN 
          STAT = FALSE; 
          END 
        END 
  
      FFSUVFN = STAT; 
      RETURN; 
  
      END                              # FFSUVFN                       #
  
      TERM
