FLEXISMB FLEXISMB is a full-fledged modified print symbiont. It supports security labeled (ie. UNCLAS, CONFID, SECRET) and system defined (ie. PROPRIETARY) flag and header pages. The flag page layout is quite different from the DEC supplied default. Only the items necessary for identification of the owner are used. The page layout emphasizes security and the security classification is the largest item on the page. The classification type is determined by the filename of the file to be printed. If the complete filename contains the word "SECRET" anywhere (ie: USER$DISK:[WISCHOW]SECRET.DAT or USER$DISK:[SECRET]WISCHOW.DAT) then the file classification on output is SECRET. The same for confidental (CONFID) files. The print symbiont software keys on the words SECRET, CONFID, and UNCLAS to determine the classification of the output. When a classified file is printed the following message is sent to the operators console and the operator log file indicating that the file is being printed and on which queue. %%%%%%%%%%% OPCOM 13-OCT-1987 10:44:22.11 %%%%%%%%%%% Message from user SYSTEM Security Alarm / Classified file queued to print on XXX_QUEUE User Name: SYSTEM Time: 13-OCT-1987 10:42:23.14 File: _DJA0:[WISCHOW.SECRET]DUMMY.DAT;4 If a classified file is printed and the /PARAMETER (alternate flag/header set) qualifier is used the /PARAMETER flag/header set is used and the classified file message is STILL sent to the operator and the log file. Unless specified the above scenario is used. Standard FLEXISMB Logical Names Item Logical Name Where used ---- ------------ ---------- System identification FLEXISMB_SYSID Flag page Comment line FLEXISMB_COMMENT Flag page Declassification FLEXISMB_DECLASS Page header Bad file types FLEXISMB_BADTYPES Both Alternate set users FLEXISMB_USERS Both These are REQUIRED logical names. If you do not want to specify anything for one of the items, then equate the logical name to a blank string (" "). The system identification is printed in the header of the flag page. This string may be up to 132 characters. The comment line is a 132 character string that is printed just before the flag page trailer. The declassification string is a 69 character string that is part of the classified page header. The declassification string is NOT printed if the form size is < 132 characters due to space limitations. FLEXISMB allows the specification of file types to prohibit from printing. The logical name FLEXISMB_BADTYPES defines the file extentions that you want to prohibit from printing (i.e. .OBJ and .EXE). If a file type defined in FLEXISMB_BADTYPES is queued to print, it will be aborted after the printing of the flag page. This string may be up to 255 characters. The system manager may create additional flag and header sets by creating additional logical name tables (under the system logical name table). Each of these other tables contains the logical name equivalents for a flag page and page header set. By default, the flag page has four lines of text: LINE1: Username ......... 7 characters high LINE2: Classification ... 14 characters high LINE3: Filename ......... 7 characters high LINE4: File extention ... 7 characters high (Please see SETLOG.COM for examples of FLEXISMB logical names) To use an alternate set (flag page/page header) define the following logical names in a table underneath the system logical name table: Four flag page lines: FLAG_LINE1 FLAG_LINE2 FLAG_LINE3 FLAG_LINE4 and one page header line: HEADER FLEXISMB, also, supports 80 column printers. Start the queue in the eighty column mode by using the form qualifier on the INIT or START command. FLEXISMB supports the /NOTE qualifier. At this time FLEXISMB does not support BURST pages. To print a file using the defaults: PRINT/QUEUE=xxx filename To print a file using an alternate flag page/header page set: PRINT/QUEUE=xxx/PARAMETER=ZZZ filename where ZZZ is the name of a logical name table under the system logical name table. FLEXISMB files: FLEXISMB.FOR Main routine ABORT_JOB.FOR CHECK_NEGATIVE.FOR COMMON_INFO.FOR FLAG_PAGE.FOR MAKE_EVEN.FOR OUTPUT_FILTER.FOR PAGE_HEADER.FOR BIGCHARS.MAR Prints large letters FILL_STRING.FOR SNDOPR.MAR Sends a message to OPERATOR.LOG STRING_LENGTH.FOR TRAN_LOGNAME.FOR Translates logical names FLEXISMB.OPT Linker options file SETLOG.COM Example FLEXISMB logical names $PSMDEF.TXT Symbiont offset definitions $SMBDEF.TXT Symbiont offset definitions CLRLOG.COM Used to delete FLEXISMB logical names DEFLOG.COM More examples of FLEXISMB logical names GO.COM Procedure to start FLEXISMB under DEBUG KILLQ.COM Procedure to delete DEBUG queue and clean up SJOBCTL.COM Procedure to restart the job controller TESTFILES.DIR Various files for testing FLEXISMB Please read the NOTES.TXT file before attempting to modify this software. Modification and testing can be a cryptic experience. Once I understood how all this stuff worked...every thing was fine, however, it can be a real pain. For problems, comments, or hate mail: Perry Bret Wischow Code 351 Naval Ocean Research and Development Activity NSTL, MS 39529-5004 (601)-688-4449