========> [VAX92A.4GL_SIG]AAAREADME.TXT;1 <======== Fourth Generation Languages SIG Library Collection Version: Spring 1992 Author: Members of the 4GL SIG Submitted by: Bart Z. Lederman, System Resources Corp., c/o Volpe National Transportation Systems Center 55 Broadway DTS-66 Cambridge, MA 02142-1093 For the VAX/L&T SIG tapes, only new material is included: Operating System: VAX/VMS (V5.*) Source Language: RALLY, FORTRAN Software Required: RALLY, FORTRAN (to re-compile) Keywords: RALLY, System Management - VMS. Abstract: This is a combined effort by the Fourth Generation Languages SIG to produce a library of items related to or using 4GLs. Our sole new contribution comes from the Rally Working Group Chair: [.RALLY.ODI.SELECT_QUEUE] Open Data Interface (ODI) Data Source Defintion Routines For RALLY Applications Julianne de Dufour The SELECT_QUEUE Open Data Interface Data Source Definition is a DSD which has as its record values the names of every defined generic and terminal print queue on the current VMS system. With it, you can create a LOV in your RALLY application which contains a list of these print queues. You can then use this LOV to allow your users to select the destination print queue for the RALLY 'print ...' commands, and for form/reports which are called in PRINT mode, without needing to worry about defining a logical name SYS$PRINT with their choice of print queues. You can also set it up so that users can redirect print output from anywhere within the application -- even while in the middle of a form/report. ========> [VAX92A.AKE]AAAREADME.TXT;1 <======== [.ANU-NEWS_V61-ALPHA4] This is the latest ANU-News Alpha4 release made available on . The savesets can be retrieved via anonymous FTP from site sao.aarnet.edu.au in the [.ANU-NEWS] directory. [.BOSS] This is the BOSS program for VMS version 4.2. These files were FTP'ed from the site lyman.pppl.gov in the /pub/vax/boss directory. [.DVIPS-5_474] This is dvips version 5.474 changed slightly to work with DECUS TeX. Complete sources and binaries are included. Some of the problems with dvips included on the Spring 1991 DECUS TeX collection have been fixed. [.GNUC] This is GNU C++ as FTP'ed from the anonymous FTP site mango.rsmas.miami.edu from the /pub/VMS-g++ directory. The submission includes ready-to-go binaries of the G++ compiler. [.LDB] Ldb is Long Distance Backgammon. This was released to comp.sources.misc by Perry Ross and has been modified by Earle Ake for VMS. Complete sources, objects, and binaries are included. Ldb allows you to play backgammon via e-mail messages. [.PREP] These files were retrieved from the anonymous FTP site prep.ai.mit.edu from the directory /pub/gnu. [.UMORIA_54] The game of umoria version 5.4 written in C and retrieved from the anonymous FTP site kukulcan.berkeley.edu from the /pub/wilson/umoria_5 directory. This contains the executable file compiled and linked under VMS 5.4-2. ========> [VAX92A.AKE.LDB]AAAREADME.TXT;1 <======== This is ldb - long distance backgammon. The author is Perry Ross who can be reached at ross@emf780.den.mmc.com. Ldb has been modified to work much better under VMS by Earle Ake ake@dayton.saic.com. See the readme file for more information. ========> [VAX92A.ALLEBRANDI]AAAREADME.TXT;1 <======== Spring 1992 VAX SIG Tape Submission by Tom Allebrandi Inland Steel Research and Development The files in this submission are in support of session VA240, "Tips and Techniques for Debugging Shareable Images" SETTRACE - Enable tracebacks for program images that do not have them enabled SETDEBUG - Enable debug for program images that do not have it enabled CLEARTRACE - Disable tracebacks for program images that have them enabled CLEARDEBUG - Diable debug for program images that have it enabled Each of these has a .C - C source code .OBJ - Compiled object .EXE - Linked program .PS - PostScript formatted listing In addition, $IHDDEF.H is supplied. Each of the .C programs includes this file to get the Image Header constants. HANDOUTS.PS - PostScript code for the handouts SLIDES.PS - PostScript code for the slides The handouts are just like the slides except that there are four slides per page. ========> [VAX92A.ALPHABITS]AAAREADME.TXT;1 <======== This directory contains various bits of information which DEC has released on the Internet about Alpha, and one stray "argnum" routine which purports to work on both VAX and Alpha. ========> [VAX92A.ARNOLD]AAAREADME.TXT;2 <======== This is a BITNET postmaster's guide in several formats, by Steven Arnold. ========> [VAX92A.BOSS]AAAREADME.TXT;2 <======== BOSS BOSS is an interactive job controller. It lets you run several interactive jobs simultaneously. (That is, BOSS is a multisession monitor.) BOSS can operate in one of two modes: * regular mode. This works with any terminal. See subtopic Description for an overview. * multi-window mode; this ONLY works with a Macintosh running the UW terminal emulator. See subtopic Windows for an overview and further details. Description BOSS lets you create up to 8 processes on a VAX/VMS system. Each process is identified by a single letter (A thru Z). This letter is used in the process name and in the DCL prompt. At most one of these processes is `current'. What you type is sent to that process, and output from that process is sent to your terminal. A process which is not current can run but normally cannot do output. (What happens to the output is governed by the output flag for a particular process. See topic Output_flags.) You usually switch between processes by typing control-\ followed by the identifying letter. It is also possible to have have of your processes initiate the switch. (See topic Communicating.) You can run any program under BOSS. For example, you might run Emacs or EVE in process E SET HOST to another machine in process H run NETTY to the B machine in process B do a FORTRAN compilation in process F execute DCL commands in process D talk to your colleague using PHONE in process P and so on. Of course, you would normally not need to run so many processes. (Indeed your subprocess quota may only let you run 5 processes.) When you are through with a process, you should log out of it (with `logout') and switch to some other process. BOSS makes no attempt to keep track of what is on your screen. Usually when switching to a process which manages the screen in an advanced manner, you should issue a command to the program to get it to re-draw the screen. (This is control-w for EVE, PHONE, SPELL; control-l for Emacs.) However, you can GET Boss to remember things on your screen by giving the Control-J and control-I commands, which cause BOSS to remember what is typed to your screen for the last 4000 characters and restore it when returning to your process. You can also get BOSS to record output to a virtual terminal in a file BOSS.LOG (where is the 1-character process name) with the control-L command. BOSS can also play back a fixed character sequence with each context shift, such as a control-W, to repaint the screen for full-screen applications without the overhead of having to save the characters sent to it. BOSS uses needs to know the escape sequences for clearing your screen, etc. By default, it uses the VT100 sequences which work for a wide range of terminals. See topic Terminal_types. Page 2 Commands Usually, all commands to BOSS begin with the command character which by default is C-\ (control-\). The command character can be changed by using the /COMMAND_CHARACTER qualifier to BOSS. The command character is not required when there is no current process (i.e., initially and immediately after logging out of a process). In that case the command character is optional. The commands are: C-h (or BS) Print command summary C-z Quit (asking confirmation if there are processes) C-x Quit after the last process has terminated a Switch to process labeled A (and similarly with a thru z) A Clear screen and then switch to process A C-n a Create new process A as a subprocess (C-n A clears screen first) C-t a Create process A at top level (C-t A clears screen first) C-k Kill the current process (asks for confirmation) C-b Buffer output for this process C-o Discard output for this process C-p Print output from this process C-w Stop output from this process C-i Toggle buffering active output C-j Toggle keeping buffer for more than 1 process transition C-l (ell) Toggle logging to BOSSn.LOG. Separate logfiles to each process are kept and logging is of what is sent to the pseudoterminal, not the real one, so you can log a process that is in discard-output mode. C-v Toggle logging to BOSSn.LOG. Similar to C-L except that C-L logging suspends the logfile write when toggled off again, and C-V logging closes the log file when toggled off. C-e Toggle logging. This is similar to C-l except that it closes the logfile when it stops logging. Thus you can use C-l when you need to log several items but want to skip the material between, keeping all the logged data in one file. Use control-E to log a bit of a session which you can then examine in a second session, without having to leave BOSS. Note that logging must be on to close the file. C-g n Allows saving of n lines of buffered output (needs to be in C-i C-j mode) and replaying them into the next process you switch to, enabling cut/paste. + Enter command mode for one line (This is used to specify characters to emit at process change, size of buffer to use for refresh, and some other functions.) ? List processes and output flags (* means current, +/- means waiting for output) C-\ Sends the command character to the current process DEL Do nothing other Sound the bell on the terminal Command mode allows one command to be entered. This is done with a Page 3 normal $QIOW, so should be used for setup, as it may cause character ASTs to be lost if used in heavy activity. A number of commands are supported, short to minimize time needed to enter them: Schars Sets current process to get chars (up to 7 of them) when the process is switched to. A common use will be S^W, where "^W" means the control-W character, which gets many fullscreen applications to repaint the screen. Gchars Like Schars but sets the prefix for all processes. The prefix is initially nonexistent. Enumber Causes the terminal buffer to only write "number" characters to the screen on a process switch where ^I and ^J modes are active. Otherwise the entire saved buffer is dumped on each switch, which may be more than is desired. The value is clamped between 100 and the buffer size. Enumber affects only the current process. Gnumber Like Enumber, but resets the output size for all processes. The Enumber and Gnumber commands are designed to allow one to buffer a large number of characters, but only display a smaller number on context switches. Reissuing the commands with a larger value of "number" will allow the rest to be seen. Also, if ^I^J mode is not in use, the entire buffer is displayed as was the case in earlier versions of BOSS. BOSS can also record and play back input sessions, at different speeds if desired, as well as logging terminal output. There are also a variety of controls for interprocess communication, and BOSS can communicate with UW protocol programs on Amiga and Mac, providing up to 7 concurrent windows on an Amiga or Mac each talking to a separate VMS process and all running over one asynchronous connection. See BOSS.HLP for more information. BOSS has been maintained by a variety of individuals. Bugs, questions, etc. to Charles Karney Plasma Physics Laboratory E-mail: Karney@Princeton.EDU Princeton University Phone: +1 609 243 2607 Princeton, NJ 08543-0451 FAX: +1 609 243 2662 ========> [VAX92A.BULLETIN]AAAREADME.TXT;1 <======== The following are instructions for creating and installing the BULLETIN utility. None of the command procedures included here are sophisticated, so it is likely that several modifications will have to be made by the installer. The installer should enable all privileges before installation. Once installation is complete, it is suggested that the installer enter BULLETIN and read HELP FOLDERS to see the options available when creating or modifying folders. BULLETIN creates a default folder called GENERAL which is a SYSTEM folder (allows messages to be posted which are displayed in full when people login.) This folder can be modified (name changed, SYSTEM setting removed, etc.), but it will remain the default folder which is selected when BULLETIN is entered, and it cannot be deleted. One of the main uses of BULLETIN, besides storage of messages that are manually entered by users, is storage of messages from network mailing lists. This is done by using the BBOARD feature, which is enabled using the SET BBOARD command inside BULLETIN. The alternative method is for mail messages to be written directly by a mailing program by calling internal BULLETIN routines. Such a a program has been written for the popular mail utilities PMDF and MX. If you wish to do so for another utility, read the text file WRITEMSG.TXT. I would be glad to include any such programs with my distribution if you think such a program would be of use to other users. Responding to mail which is added via the BBOARD feature is done using VMS MAIL. The name of the mail protocol to use for responding by mail can be either hardcoded by putting in BULLNEWS.INC, or by defining the system logical name BULL_NEWS_MAILER, i.e. DEFINE BULL_NEWS_MAILER "MX%". If for some reason this is inappropriate, you can define BULL_MAILER to point to a command procedure, and which will be run instead of VMS MAIL. The parameters passed to this procedure are P1 = username and P2 = subject. 1) CREATE.COM This will compile and link the BULLETIN sources. Also, there are several INCLUDE files for the fortran sources (.INC files). BULLETIN will create it's data files in the directory pointed to by the logical name BULL_DIR. If you elect not to use this definition, BULLFILES.INC should be modified. Note that after this procedure compiles the sources, it puts the objects into an object library, and then deletes all the OBJ files in the directory. NOTE 1: If you plan on using the USENET NEWS reader capability of BULLETIN, read NEWS.TXT for installation instructions before compiling. NOTE 2: The maximum number of folders for this distribution is 96 folders. If you wish to increase this, modify BULLUSER.INC and recompile the sources. When the new executable is run, it will create a new BULLUSER.DAT data file and rename the old one to BULLUSER.OLD. You cannot reduce the number of folders. 2) INSTALL.COM The following procedure copies the executable image to BULL_DIR and installs it with certain privileges. It also installs the necessary help files in SYS$HELP. (BULLETIN help file is installed into the system help library HELPLIB.HLB. If you don't wish this done, delete or modify the appropriate line in the procedure. Also, the help Page 2 library for the BULLETIN program, BULL.HLB, can be moved to a different directory other than SYS$HELP. If this is done, the system logical name BULL_HELP should be defined to be the directory where the library is to be found.) 3) LOGIN.COM This contains the commands that should be executed at login time by SYS$MANAGER:SYLOGIN.COM. It defines the BULLETIN commands. It also executes the command BULLETIN/LOGIN in order to notify the user of new messages. NOTE: If you wish the utility to be a different name than BULLETIN, you should modify this procedure. The prompt which the utility uses is named after image executable. If you want messages displayed upon logging in starting from oldest to newest (rather than newest to oldest), add /REVERSE to the BULLETIN/LOGIN command. Note that users with the DISMAIL flag setting in the authorization file will not be notified of new messages. See help on the SET LOGIN command within the BULLETIN utility for more information on this. Also, please note that when a brand new user to the system logins, to avoid overwhelming the new user with lots of messages, only PERMANENT SYSTEM messages are displayed. If you want SYSTEM messages, i.e. messages which are displayed in full when logging in, to be continually displayed for a period of time rather than just once, you should add the /SYSTEM= qualifier. This is documented in BULLETIN.HLP, although there it is referred to only with respect to a user wanting to review system messages. It can be added with /LOGIN. DECWINDOWS users should note the following: Both SYLOGIN and LOGIN are executed twice, once before the terminal is actually created, while SYS$OUTPUT is still a mailbox, the other time after the terminal is created. To avoid this, place the following code in both procedure. It causes them to execute only when the output is a terminal. This code also helps to allow programs to be placed in LOGIN.COM that prompt for terminal input. BULLETIN does this if you select READNEW mode for displaying messages when logging in, as READNEW mode will ask you if you want to display the messages text. Attempts to read terminal input under DECWINDOWS when SYS$OUTPUT is still a mailbox will cause DECTERM creation to fail. (This problem is fixed under MOTIF). $ IF F$LOCATE("_TW",F$GETJPI("","PRCNAM")) .NE. 0 THEN GOTO START $ IF "''F$MODE()'" .NES. "INTERACTIVE" THEN GOTO START $ IF F$GETDVI("SYS$OUTPUT","TRM") THEN GOTO START $ GOTO FINISH $START: . . body of SYLOGIN.COM (including BULLETIN command) . . $FINISH: $ EXIT 4) BULLSTART.COM This procedure contains the commands that should be executed after a system startup. It should be executed by SYS$MANAGER:SYSTARTUP.COM. Page 3 It installs the BULLETIN utility with correct privileges. It also includes the command BULLETIN/STARTUP. This starts up a detached process with the name BULLCP. It periodically checks for expire messages,cleanups empty space in files, and converts BBOARD mail to messages. It also allows other DECNET nodes to share it's folders. If you don't want this feature and don't plan on having multiple folders or make use of BBOARD, you could eliminate this command if you like. However, it is highly recommended that you create this process to avoid extra overhead when users login. NOTE: BULLCP normally is created so it is owned by the DECNET account. If that account does not exist, BULLCP will be owned by the account that issues the BULLETIN/START command. In that case, access via other DECNET nodes will not be available. If you are installing BULLETIN on a cluster and plan to have the bulletin files be shared between all of the cluster nodes, you only need to have this process running on one node. On all other nodes, the system logical name BULL_BULLCP should be defined (to anything you want) so as to notify BULLETIN that BULLCP is running. (On the local node where BULLCP is running, this logical name is automatically defined.) The system logical name BULL_CUSTOM can be defined to enable several features. It is equated to a hex number string. Bit 0 set = need privileges to create folder. 1 set = captive account can write files. 2 set = captive account can use editor. If you want to have more than one database, you can do so by redefining BULL_DIR to another directory. However, only directories that are defined in the list of equivalence names pointed to by the system logical name BULL_DIR_LIST are allowed. For example: DEFINE/SYSTEM BULL_DIR_LIST SITE$ROOT:[SYSEXE],USER1:[MRL] Then BULL_DIR can be defined as SITE$ROOT:[SYSEXE] or USER1:[MRL]. BULL_DIR_LIST must be defined on all nodes in a cluster. The use of the MARK command to mark messages require that a file be created for each user which saves the marked info. That file file is stored in the directory pointed to by the logical name BULL_MARK. You can either let users who want to use this command define it themselves, or you can define it for them, i.e. DEFINE/SYSTEM BULL_MARK SYS$LOGIN. 5) INSTRUCT.COM This procedure adds 2 permanent messages which give a very brief description about the BULLETIN utility, and how to turn off optional prompting of non-system messages (via SET NOREADNEW). 6) BOARD_SPECIAL.COM This command procedure describes and illustrates how to use the SET BBOARD/SPECIAL feature. This feature allows the use of BBOARD where the input does not come from VMS MAIL. For example, this could be used in the case where mail from a non-DEC network is not stored in the VMS MAIL. Another example is BOARD_DIGEST.COM. This file takes mail messages from "digest" type mailing lists and splits them into separate BULLETIN messages for easier reading. Page 4 To use this feature, place the special command procedure into the bulletin file directory using the name BOARD_SPECIAL.COM. If you want to have several different special procedure, you should name the command procedure after the username specified by the SET BBOARD command. 7) INSTALL_REMOTE.COM This procedure, in conjunction with REMOTE.COM and DCLREMOTE.COM allows a user to install new versions of BULLETIN on several DECNET nodes from a single node, rather than having to login to each node. This is especially useful when a new version modifies the format of one of the data file. Older versions of BULLETIN will not run with newer formats and will either issue error statements when run, or may cause major problems by attempting to change the files back to the old format. (NOTE: Don't attempt to use this if different nodes are running different versions of VMS, i.e. V4 and V5, as they require different linked executables.) 8) MASTER.COM If you are using PMDF, and want to use the BBOARD option, a set of routines are included which will allow PMDF to write message directly into folders, which is a much more effecient way of doing it than the normal BBOARD method of using VMS MAIL. Read PMDF.TXT for how to do this. 9) OPTIMIZE_RMS.COM This routine optimizes index files. To run, type @OPTIMIZE_RMS.COM followed by the filename. If you omit the filename, it will prompt you to allow you to turn off or on several different types of RMS compression. The default is to turn on all types of compression. The optimization will cause the file to be compressed. If you use the NEWS feature, it is suggest that you run this procedure on BULLNEWS.DAT after it is created. Compression that file greatly speeds up the NEWS update process. If you are tight on space, and have been running BULLETIN for a long time, it might also be useful to compress BULLINF.DAT if that file is very large. However, compressing that (or the other BULLETIN data files) don't appear to save any execution time, unlike BULLNEWS.DAT. 10) BULLETIN.COM If one wants BULLETIN to be able to send messages to other DECNET node's GENERAL folder, but wants to avoid running the process created by BULLETIN/STARTUP on this node, another method exists. This is the "older" (and slower) method. BULLETIN.COM must be put in each node's DECNET default user's directory (usually [DECNET]). Once this is done, the /NODE qualifier for the ADD & DELETE commands can be used. The object BULLETIN pointing to BULLETIN.COM must be added to the NCP database, i.e. the command MCR NCP SET OBJ BULLETIN FILE directory:BULLETIN.COM number 0 must be executed at startup time on the remote node. NOTE: Privileged functions such as /SYSTEM will work on other nodes if you have an account on the other node with appropriate privileges. ========> [VAX92A.BZL]AAAREADME.TXT;1 <======== My personal submission this time contains updates to two previous submissions. [.RDB_TO_RTF] Contains a DCL command procedure and a program (C with embedded SQL) which reads the metadata in an Rdb database and produces a document describing the database. The document is in the Microsoft RTF format, which can be read by many Macintosh and IBM PC word processing programs. [.TRIM] Contains a program (in C) which will process one or more files, and do some or all of the following to all of them: Remove characters from the beginning or end of each line; Remove (and optionally replace) characters from within each line; Insert a prefix or suffix on each line; Process the first line differently from the subsequent lines; Insert a line at the beginning or end of each file; Trim trailing blanks and tabs from each line; Remove blank lines; Strip non-printing characters. This version can accept as input files in the VFC format (the output of DCL procedures) which an earlier version could not handle. Bart Z. Lederman System Resources Corp. 22 James St. Beverly, MA 01915-3704 (DCS and DECUServe accounts LEDERMAN) ========> [VAX92A.CALLBACK]AAAREADME.TXT;2 <======== This area contains two call-back programs which allow you to arrange for your VAX to call you. Both assume Hayes type modem commands. Don Stokes (of New Zealand) was kind enough to send his, and Carl Lydick contributed his to the net. These can be used for security dialback if desired also, when placed in sylogin and invoked for dial-in access. ========> [VAX92A.CRONFEDITCOO]AAAREADME.TXT;3 <======== The following are offered for your amusement: COOKIE Print a random fortune cookie when run. CRON Run jobs at set times, controlled by a data file. Like unix cron. FXEDIT Similar to a callable F$EDIT routine. ========> [VAX92A.DIALER]AAAREADME.TXT;1 <======== Hi. These are some very quick and terse notes for using this auto-dialer: 1. Modify the file DIALER.CFG as appropriate. Dialer assumes a Hayes compatible modem, but the config file allows you to customize the init string, terminal port, etc... The format of the file is: Wherever this file ends up being located, the system logical DIALER_CONFIG must be defined to point to it. 2. Peruse DIALER.COM, DIALME.COM, and DIAL_AUTO.COM. In the first two files, you'll want to be sure that the appropriate batch queue is referenced, as well as the location of DIALER.EXE if it is not placed in SYS$SYSTEM. 3. This stuff was designed to be used to schedule modem calls to a remote modem, but can just as easily be used to have your modem call a pager. Just be sure to include apropriate modem pause characters in the number string. For this use, the dial_auto.com procedure would be used. 4. Generic usage as designed is for the person scheduling a call to invoke DIALME.COM interactively. DIALME, in turn, submits a batch job using DIALER.COM, which in turn makes the call at the scheduled time. WHen testing the setup, just run DIALER.COM interactively, and when you are satisfied your configuration is working, you are set to use it either for modem calls or pager calls as desired. It has been tested with a variety of modems over time, but the code is relatively straightforward if tweaking is needed. I apologize for lack of any better docs, but I coded this up quickly when I needed it, and never intended to share it, so... :) I will field questions as I can... Just send them to mcdonald@cmrsd.nrl.navy.mil, (128.60.18.10). ========> [VAX92A.DX]AAAREADME.TXT;1 <======== PRODUCT NAME DX (Directory eXtension), Version 2.3 GENERAL DESCRIPTION DX is a VAX/VMS utility that performs many file operations on a VT100 or upper type terminal. It can be used to delete, edit, or rename files in the current directory. DX can also create a hardcopy listing of all the files displayed. FEATURES o Flexible display and sorting o Pull-down menu for point-and-shoot interface o Display sub-directories and directory contents with flexible "filters" o Multiple inclusion/exclusion patterns in file operations o Multiple windows provides different views o Display a tree-like directory structure in a scrollable window SOURCE FILES This directory holds the latest distribution version of DX. It includes the following files: AAAREAD.ME DX_BUILD.COM DX.COM DX.CLD DX.HLP DIRECT.C DIRECT.H DIRECTKPD.C DIRECTKPD.H DIRECTQUE.C DIRECTQUE.H DIFF.C DIFF.H DX.C DX.H ENDECODE.C ENDECODE.H FILER.C FILER.H FILERAPP.C FILERAPP.H FILERCPY.C FILERCPY.H FILERCUS.C FILERCUS.H FILERDEC.C FILERDEC.H FILERDEL.C FILERDEL.H FILERDIF.C FILERDIF.H FILEREDT.C FILEREDT.H FILERENC.C FILERENC.H FILEREXE.C FILEREXE.H FILERFLT.C FILERFLT.H FILREFND.C FILREFND.H FILERKPD.C FILERKPD.H FILERLAU.C FILERLAU.H FILERPRO.C FILERPRO.H FILERPRT.C FILERPRT.H FILERPUR.C FILERPUR.H FILEROPT.C FILEROPT.H FILERQUE.C FILERQUE.H FILERREN.C FILERREN.H FILERSTA.C FILERSTA.H FILERSRT.C FILERSRT.H FILERTYP.C FILERTYP.H FILERWIN.C FILERWIN.H FINDFILE.C FINDFILE.H INQUIRE.C INQUIRE.H MENUNAVI.C MENUNAVI.H GLOBAL.H DX$STARTUP.DAT The file `dx_build.com' helps automate the process of building and installing DX. The file `dx.com' in this directory defines logical names and commands such as `DX', so you must edit it to specify the file and directory names Page 2 used. This file must be executed in each session to enable you to run the installed DX. Also, `dx.com' use the file `dx.cld' which contains the command definitions (i.e. command parameters and qualifiers) for DX. The file `dx$startup.dat' is an init file that is loaded from your home directory when DX starts. It is a text file that can be viewed or changed using any editor. Please direct all comments, suggestions, and bugs to Chau-Kuang Hung (chung@us.oracle.com) Oracle Corporation 300 Oracle Parkway BOX 659304 Redwood Shores, CA 94065 ========> [VAX92A.EDX]AAAREADME.TXT;1 <======== EDX EDX is a powerful TPU based EDT style text editor for the VAX/VMS computer system. It offers an EDT-style keypad and supports all the major line mode functions of the EDT editor plus many other advanced features not available in the EDT editor or the newer EVE editor. It is intended for users familiar with the EDT editor who would like to switch to a faster, more powerful editor without having to learn a new editor all over again. EDX also supports a WPS-style keypad mode for users who prefer the WPS-style keypad. Following are some of the advanced features of the EDX editor which are not available in EDT or EVE: · Built in spelling checker with 72,000 word dictionary. Spell check a buffer, range, word, or display the dictionary and browse. Includes guessing algorithms and personal supplemental dictionary support. · Edit modules within VMS text libraries. · Obtain a directory listing including optional /SIZE and /DATE qualifiers. Read in a selected file from the directory listing, delete a selected file, or lock a selected file. · Wildcard search and replace mode, with optional string to exclude as a match, case sensitive or insensitive. · List all lines containing a specified string or wildcard pattern along with the corresponding line number. · Search for and highlight matching parentheses. · Lock files, preventing others from editing them while you do. · Sort a buffer, range, or columnar range. · Columnar cut and paste in insert or overstrike mode. · Translate a buffer from EBCDIC to ASCII, and vice versa. · Compare two buffers line by line. · Translate DCL symbols and logical names. · Create DCL symbols and logical names. Note that all of the above features are performed within the editor, without spawning a subprocess. EDX is built on the VAX Text Processing Utility (VAXTPU). Users familiar with VAXTPU can dynamically extend the editor's abilities by adding new functions which perform complex tasks. EDX makes this job easier by defining over 40 general purpose functions not available in VAXTPU itself. ========> [VAX92A.FAIRBAIRNS]AAAREADME.TXT;1 <======== This kit provides a replacement for DECUS SPELL, which is a VMS-based spell-checker using indexed files. The kit does not supply replacement dictionary files, which should be acquired elsewhere. 0. Read the file AAAREADME.SPELL 1. Build the executable with SPELL.COM - you need a Pascal compiler 2. Build the help file from SPELL.HLP 3. Edit SPELL_INIT.COM to point things at the right directories (logical SPELL_HELP is for the for the *.SPELL_HELP files) 4. If you want to use SPELL from within EVE, see the file USE_FROM_EVE.NEWS_ARTICLE, which I include with its author's permission. You're on your own here: I don't use EVE; note, however, that the article talks about a version of SPELL that (a) requires installation with SET COMMAND (with this version it's optional), and (b) has no /OUTPUT qualifier (this version has) 5. If this is your first-time installation, acquire some SPELL dictionaries from somewhere. They're PD, but I don't feel it's sensible for me to post my (Anglicised) ones... Give it a whirl with some `real' files of yours - there's no IVP ;-) This modification of the software is supplied under the same conditions as the Vassar College original by Mark Resmer; I haven't touched his copyright notice, and make no copyright claim myself. My thanks are extended to my \beta-testers. One way or another, they'll find that all the problems they found have been solved, and all their suggestions (in particular, Ken Fairfield's on avoiding the use of SET COMMAND) have been incorporated. (They will all have been waiting for longer than seemed to me reasonable at the time I last mentioned a date: such is life - none has complained...) The software is supplied (by me) on the off-chance that it may prove useful. I make no claims about its value, though I do use it regularly myself, and it's what everyone on the VAX systems at Laser-Scan uses (unless they're hooked into WordPerfect). In particular, Laser-Scan has no involvement in any part of this software beyond having supplied me with computing respources to use in my spare time. Robin Fairbairns, Senior Consultant, postmaster and general dogsbody Laser-Scan Ltd., Science Park, Milton Rd., Cambridge CB4 4FY, UK Email: robin@lsl.co.uk --or-- rf@cl.cam.ac.uk ========> [VAX92A.FINGER]AAAREADME.TXT;1 <======== Finger for VAX/VMS Version 5, Version: V51.1.24, January 1991 Submitted by: Terry Kennedy, St. Peter's College, Jersey City, NJ. Operating system: VAX/VMS V5 or later Source language: VAX Fortran, Macro-32 Keywords: Networking, System Management - VMS, Utilities - VMS Abstract: VMS Finger performs three main functions: o Lists the current users on the system, along with the location, pro- gram name, etc. In this mode it functions like a personalized SHOW SYSTEM program. o Searches for a specific user, displays the above information if they are logged in and additionally shows information about their mail, last login, and a personal message file they may supply. o Functions as a DECnet server for both in-bound and out-bound links. Remote users may finger the local system, and local users can finger other systems on the network. As part of the network finger protocol it performs explicit route-through. This is valuable in an internet situation such as going from DECnet to TCP/IP, etc. This program can communicate with other VAXen, RSTS/E systems, and DECSYSTEM-20's over DECnet, as well as TCP/IP (Internet) and RSCS (Bitnet) hosts, if the appropriate communication package is available. It can also communicate with LAT devices (terminal servers) if the DEC TSM pro- duct is available. In a large network Finger can be an invaluable tool to locate users, see if they got your mail, etc. This is a new version of VMS Finger, which was originally submitted by Dr. Richard Garland of Columbia University, New York, NY. Many others have contributed to the development of this package as well. Please refer to the sources for detailed credits. Notes: 1) For VAX systems running VMS V4, see DECUS No. VS0014. 2) For PDP-11 systems running RSTS/E, see DECUS No. ??????. A UCX client and daemon are present also, in mostly functional state. ========> [VAX92A.FLOWERS]AAAREADME.TXT;1 <======== ___ ___ _____ ___ ___ | \/ | / ____\ | | | | | \ / | \____ \ | |_| | SPRING 1992 VAX SIG TAPE SUBMISSION |_|\/|_| \_____/ \_____/ Memphis State University Harry Flowers Internet: FLOWERS@MEMSTVX1.MEMST.EDU 112 Admin Bldg Bitnet: FLOWERS@MEMSTVX1 Memphis, TN 38152 Phone: (901) 678-2663 +-------------------------------------------------------------------------+ | Disclaimer: The author, Memphis State University, and DECUS assume no | | responsibility for the use or reliability of this software. | +-------------------------------------------------------------------------+ SUBMISSION DIRECTORY ==================== AAAREADME - This text file. Most of these submissions require VMS 5.4 or later. Most programs were linked with VMS V5.4-3. If you're using an earlier version, you'll need to re-link them. Object files are included for those without a compiler for that language. As I use most of these programs regularly, I would be interested in any problems of a general nature you may have with them, or enhancements which would prove generally useful. Enjoy! Corrections and enhancements to previous submissions: ----------------------------------------------------- CSWING - Directory and file management tool, C Swing v3.6.2. Newer version of MOST. Bug fix for printing under VMS V5.5. Better handling of some options. [.CSWING] - Contains sources for C Swing [.CSWING.DOCUMENTATION] - Contains sources for help and documentation. [.CSWING.OBJ] - Contains object files; if you need to re-link, go to the [.CSWING] directory and @LINK_V5. Even if you don't try anything else here, you should try this. DISK - Reports free disk space. Modified it not to check write-locked disks; this avoids CDROM drives. Also made device name passed on command line easier to match. DISK_WATCHER - Monitors free disk space. Modified it not to check write-locked disks; this avoids CDROM drives. See command file for setup. MAIL_EDIT.COM - Quote, spell check, and append signature on outgoing mail. Corrected behavior of quoting a file sent with "SEND file". Also, made the SMTP internal mail header and spelling checker configurable. Directions for set-up and customization are included in the command file. This is one everyone can use. MENU - DCL Menu System V3.0 Page 2 Changed to handle hardcopy terminals. Added sub-menus all in one command procedure. This was to address the problems with calling other menus and then wanting to exit all the way out. A menu stop command was added in 2.3, but that doesn't work well for captive accounts. So, now all the menus (up to 256) may be in the same command procedure. See the menu for more details. [The passing of CAPTIVE in P1 is no longer needed for captive accounts.] Also added ability to pass menu options on the command line (up to eight). This will execute each option just as if they had been entered each time the "Select option:" prompt was given. For example, in this example menu, issuing a "$ MENU S C Z C M" would cause the following to happen: S - selects the system usage menu (not displayed) C - performs a MONITOR CLUSTER for 2 minutes Z - returns to main menu C - selects the communications menu (not displayed at this time) M - performs a MAIL command When the user exits from MAIL, he would see the communications menu. Alternately, if "$ MENU S C Z C M Z" had been used, he would see the main menu after exiting MAIL. If "$ MENU S C Z C M X" had been used, the programs would be run, but no menu would ever appear (neat, huh?)! This menu contains example options to demonstrate how to set up a menu. These options are not intended to work as-is (though a few, like MAIL, should). You must edit the menu file and put in your own options. New submissions: ---------------- FALL_BACK and SPRING_FORWARD - These command procedures use the TADJUST program someone posted to the net to lose/gain an hour over a four hour period for changes between Daylight Savings Time and Standard Time. Just submit them to run in the wee hours on the appropriate Sunday morning for a kinder, gentler, time change. We've used them with good results (don't have to stop DECnet, DECps, etc. products to do the autumn time change). The SET TIME commands in the command files are necessary to avoid losing the changes. Hopefully, this SIG tape will be available in time for folks to use this in the Fall. Note that CMKRNL, OPER, and LOG_IO privileges are required. Also, if you're running my CLOCK_SYNCH.COM from previous submissions, I'd stop that process before the time change, just in case. MOST - This is John E. Davis's version of MOST with bug fixes and changes by myself that make it more compatible with the version used in C Swing. I thought some of you might want a consistent file viewer whether inside C Swing or not. Best one I've seen yet (thanks to John). ========> [VAX92A.GCE92A]AAAREADME.TXT;2 <======== Glenn Everhart's Spring 1992 Collection This tree contains a number of items, many from all over the net, collected by Glenn Everhart. The top level, brief description follows: [.analy] New version of AnalyRIM, an integrated spreadsheet and relational DBMS. Several bugs are fixed, and an "infinite dimensional" extension documented since 1987 in AnalytiCalc distributions has been implemented, allowing up to 100 dimensions to characterize a cell address. New executables for VMS, Unix (sun) and Amiga are present as well as sources. [.capetc] CAP (Columbia Appletalk server) code for unix, LQtext fulltext browse/retrieve tool, MACPS, and TARSPLIT, which will pick out any part of a long tar file into a smaller one. [.capetc.finger] Latest FINGER distribution from Terry Kennedy containing all current updates of the old, Fortran based FINGER, and the load averaging driver, plus SED, TQE, and CD_ROM readers. [.ckermit] Latest (but still considered beta) C-Kermit for a variety of systems, from Columbia. This supports windows, long packets, and lots of other options. [.decuslib] DECUS library catalog info and BROWSER fulltext retrieval system. [.net92a] Huge variety of material from the internet, and from numerous contributors. Includes fixes for ANU News, BLISS pre symposium seminar text, BOSS 4.2 multisession monitor, CMU domainserver, COPS 1.4 sources (Unix security package), DECwindows hints, DX directory manager (full screen directory and file handling utility), FDdriver updates, FLIST directory manager, FORBIDDEN KNOWLEDGE speculations & info, how to interrupt ASTs with other ASTs, LOOK superfast file reader, MWAIT analyzer, NOTICE program, set path for other process, update to VMS RCS (Revision Control System), security products reviews, updates to UUCICO for UUCP (exe and src), VMS Share, and the Zen and the Internet document, plus more. [.net92a.cdrom] CD-Rom reader application for ISO and High Sierra CD Roms to be read on VMS. [.net92a.dialer] Autodialer program for VMS. ========> [VAX92A.GOATLEY]AAAREADME.TXT;3 <======== Spring 1992 DECUS VAX SIG Tape Submission Western Kentucky University Hunter Goatley, VMS Systems Programmer Academic Computing, STH 226 Western Kentucky University Bowling Green, KY 42101 E-mail: goathunter@WKUVX1.BITNET Voice: 502-745-5251 This directory contains two subdirectories, [.HUNTER] and [.FILESERV]. [.HUNTER] contains programs that I've written, along with a couple of GNU utilities that I've ported to VMS. [.FILESERV] contains programs that I've made available from my file server (FILESERV@WKUVX1.BITNET). They've been included here because most of them have never been on a DECUS tape before. One of the biggest highlights of this submission is the Supervisor Series of terminal monitoring software. The Series includes ADVISER and OBSERVER (watch another user's terminal) and PHOTO (record a terminal session to a file). Once commercial products, they're now in the public domain and are currently being maintained by Hunter Goatley. The version presented here is V5.2 SUPERVISOR is distributed as three savesets installable with VMSINSTAL. Documentation is provided in three formats: ASCII text files, PostScript, and Bookreader. Sources are provided. FILESERV.LISTING contains descriptions of all the files available from FILESERV@WKUVX1.BITNET. As of this writing, the packages are also available via anonymous ftp from ftp.spc.edu in directory [.MACRO32]. A brief description of the included packages follows: [.HUNTER] BAT Easily Execute multiple commands in a batch queue CVTLIS Converts CD source listings to BLISS, MACRO, or C source DCLKEYS Routines to define DCL keys from a program DCL_RECALL Program to patch DCL to provide RECALL of more than 20 cmds FGREP011 GNU fgrep v1.1 for VMS FLIST021 FLIST v2.1 -- File and directory manager GETCMD Display DCL command recall buffer for any process GREP015 GNU e?grep v1.5 for VMS JNET_LINKWATCH Watch Jnet links, reporting errors via OPCOM and mail LABELS Renumber local MACRO labels LOGIN MACRO program to replace LOGIN.COM NOTICE A system for managing login notices RCARD Display DECwindows Cardfiler cards on VT terminal SED018 GNU sed v1.8 for VMS SET_PRCNAM Change process name for any process on system STB Display contents of symbol table files (.STB) Page 2 SUPSERU1051 Supervisor Series v5.1-1 [.FILESERV] APRT Lee Gleason's program to change protection on pages ATG_FT_PATCH Nick de Smith's add access port info to FTAn: devices CLRREF Ehud Gavron's program to clear device reference counts INVISIBLE Ehud Gavron's program to hide your process in the system KEYS Lee Gleason's Process-permanent Action-key routines LASER_V2_03A University of Texas PostScript symbiont MWAIT Nick de Smith's program to display reason for MWAIT PRCPRV Ehud Gavron's program to enable privs for any process TQE Lee Gleason's program to dump Timer Queue Entries UNIX_COMPRESS GNU compress for VMS (compatible with UNIX compress!) UNMACRO UNMACRO disassembler UUCODE Pascal and C versions of UUENCODE/UUDECODE [.SUPSER052] Supervisor Series, V5.2 (allow you to observe, record, or control another terminal, provided it's a TT: class device. Works fine with many network terminal types, but not RT: devices. ========> [VAX92A.GOATLEY.FILESERV.INVISIBLE]AAAREADME.TXT;1 <======== INVISIBLE v02.002 5-JAN-1992 12:35 Ehud Gavron's INVISIBLE, based on Bruce Ellis's STEALTH and Ehud's UNSTEALTH. Try to hide yourself on the system.... To build: $ MACRO INVISIBLE $ LINK/NOTRACE INVISIBLE This version also changes the username in the JIB to SYSTEM. (This is controlled by the definition of the symbol CHANGE_USERNAME in the MACRO source; to disable it, just comment out the following line in INVISIBLE.MAR: CHANGE_USERNAME = 1 Note that commands like MAIL, SEND, REPLY, SUBMIT, etc., will all operate under the SYSTEM username is the code is enabled. If you want such programs to use your own username when you are invisible, disable the code. ========> [VAX92A.GOATLEY.FILESERV.UNIX_COMPRESS]AAAREADME.TXT;1 <======== This is a VMS port of GNU compress, which can be used to decompress files compressed using the UNIX compress utility. This port was done by Jim Dyer. ========> [VAX92A.GOATLEY.FILESERV.UNMACRO]AAAREADME.TXT;1 <======== Name: UNMACRO Author: Robert Thomas Chojnacki Center for Manufacturing Engineering Northwestern University chojnacki@vaxmfg.tech.nwu.edu Operating System: VAX/VMS Source Language: VAX C Keywords: Disassemblers Abstract: Please also read INSTALL.DOC and UNMACRO.DOC. UNMACRO is an interactive disassembler that keeps track of what each byte of the program is (i.e. an instruction, .ENTRY, .QUAD, etcetera). You may leave a session and continue where you left off later by the SAVE and UNSAVE instructions. Features include automatic labeling (for JMP, BR, etc. instructions), automatic .ENTRY (for CALLG, CALLS, transfer address); ability to write the disassembled code to a file; a "DISASSEMBLE UNTIL" that allows disassembly until a data byte, end of the image, or until a specified PC; ability to display any part of the image in DUMP format, ability to display the image header in DUMP format; easily jump from one part of the image to another; SEARCH the image for a byte string; displays important information such as transfer addresses, image base, etcetera. Also knows the P1 system vectors. User defineable symbols for CALLx instructions is included. Commands may be abbreviated and the user may specify that there is no image header, as in the case of boot blocks, etcetera. UNMACRO is not finished but functional. Unfinished parts include most of the .ASCIx directives. A help-format file is included. ========> [VAX92A.GOATLEY.HUNTER.GREP016]AAAREADME.TXT;1 <======== GNU grep v1.6 (June 11, 1992) This version was taken from prep.ai.mit.edu and modified to run under VMS. It compiles under VMS using GNU C or VAX C. It was tested with GNU C v1.39.1 and VAX C v3.2 under VMS v5.5. Thanks to Henrik Tougaard, Datani A/S, Copenhagen, Denmark for the VAX C changes. As supplied, VMSMAKE.COM also compiles SHELL_MUNG.C, which will allow grep to handle wildcarded file specs. To install: $ @VMSMAKE.COM !or just $ MMS $ GREP :== $dev:[dir]GREP.EXE $ EGREP :== $dev:[dir]EGREP.EXE $ SET DEFAULT [.TESTS] $ @VMSREGRESS.COM !To test it out $ LIBRARY/HELP/INSERT library GREP New to this distribution: VMSMAKE.COM DCL command procedure to build grep DESCRIP.MMS MMS file to build grep GREP.CLD Command definition file for e?grep GREP.EXAMPLES grep commands equiv. to SEARCH commands GREP.RNH RUNOFF source for on-line VMS help SHELL_MUNG.C Emulate UNIX shell GREP.C Modified for VMS DFA.C Modified for VMS DFA.H Modified for VMS REGEX.C Modified for VMS [.TESTS]VMSSCRIPTGEN.AWK GNU awk program to create testing .COM [.TESTS]VMSREGRESS.COM DCL command procedure to test egrep This version of grep also includes a few VMS-specific (bracketed by #ifdef VMS) changes. Specifically: 1. Added call to shell_mung 2. References to sys_errlist[errno] were causing grep to stack dump. I modified it to call strerror instead. 3. The exit statuses were changed to better fit VMS: Meaning UNIX VMS ------- ---- --- matches found 0 1 no matches found 1 3 error 2 44 (SS$_ABORT) 4. Modified print_line to use puts when printing lines instead of putchar. Much faster output on VMS. I also modified SHELL_MUNG.C to allow it to be compiled by GNU C. Any suggestions/comments/etc. can be sent to the address below. Page 2 Hunter Goatley, VAX Systems Programmer E-mail: goathunter@WKUVX1.BITNET Academic Computing, STH 226 Voice: (502) 745-5251 Western Kentucky University Bowling Green, KY 42101 ========> [VAX92A.HAINING]AAAREADME.TXT;3 <======== From: MERC::"uunet!CRVAX.SRI.COM!RELAY-INFO-VAX" 14-APR-1992 20:46:48.07 To: INFO-VAX@SRI.COM CC: Subj: Re: Looking for Automatic Account Generation Software Paul R. Taylor recently wrote to the net: > The State University of New York College at Oswego > is going to move over to a system where each student, > faculty member, and staff person will be getting an > account on all of our systems as soon as they become > affiliated with the campus. > > We are looking into writing the software required to > do the automatic creation and deletions of accounts > for multiple hardware/software platforms including VMS, > and a few different flavors of Unix. However before > starting on this project I thought that it would be a > good idea to see if any other institutions out there > might have some similar type of program that they would > be willing to share with us. > > Any Help that you could provide would be greatly > appreciated. Please send all responses via E-Mail > because we seem to loose large portions of some groups. > > Thanks in advance, > > Paul Paul, I strongly suggest that you, and anyone else interested in this topic, attend DECUS in Atlanta and attend session ED024 which is to be given on Friday the 8th of May in room "363 - GWCC" from 11:00am to 12:00 noon. This session has the titles "Managing 10,00 VMS Users" and "A Networked, Heterogeneous Accounting and Account Management System". This session describes a system which "does what you want", although maybe not exactly the way you want it -- but that can be fixed. The system was developed at the University of Washington and is used to manage accounts for VAX/VMS, VM/CMS, VM/HPO, VM/XA, Dynix (Sequent Un*x), Ultrix, BSD 4.2, AIX, and I am not sure what else. A version was also available for NOS, an operating system for Control Data Corporation Cyber computers. The system is currently set up to allow all students, faculty, and staff of the University of Washington to create, on demand, their own account which allows them to use any of the computing facilities managed by UCS. Its great stuff, and its easily available. P.S. Yes, it is my session. :) -Derek S. Haining Page 2 University Computing Services University of Washington Seattle, Washington 98195 (206) 543-5579 DEREK@MAX.BITNET DEREK@MAX.U.WASHINGTON.EDU The submission here contains this software, plus a net print/plot system for VMS and Unix and some other items. It is very much a last minute arrival, hence the material is left in the savesets in which it was submitted, except that these are compressed to reduce space consumption. Listings of the compressed savesets are present as file.LIS to facilitate extraction. Note that the original .BCK files were renamed to *.BCK_32256 and put in the ZOO archive ALLBCKS.ZOO to save space (45000 blocks down to 14000!) to restore, use the ZOO and FILE commands in the tools directory ($zoo:==$[92avaxlt.tools]zoo, and $set command [92avaxlt.tools]file first, MODIFYING these to fit your configuration and adding device name). the commands needed are the following: $zoo e allbcks $file/type=fixed/record=32256/attr=noimpliedcc *.bck_32256 $rename *.bck_32256 *.bck Now the files will be restorea and all names will be as they were originally. You can pull the savesets apart as you wish. ========> [VAX92A.JBAKER]AAAREADME.TXT;1 <======== These submissions are for the Spring '92 DECUS: [.TERMINALS] - (version 2.1) program for generating terminal statistics. Handles virtual terminals, multiple terminal sessions, hardwired terminals, etc. Language is Pascal. (VMS 5.2 or higher.) [.VERSION] - (version 2.3) program that displays software version for layered products and VMS. Modifications are found within the directory README file. Language is FORTRAN. (VMS independent.) [.USERCOUNT] - a command file that looks for "other" interactive processes for the calling user. (VMS 5.2 or higher.) Any questions, suggestions or problems?? Contact me at: Jonathan C. Baker Naval Surface Warfare Center Code N23 Dahlgren, VA 22448-5000 703-663-8705 Mailer address: SYSTEM_JB@128.38.15.69 ========> [VAX92A.LEVINE]AAAREADME.TXT;1 <======== I have 2 menu driven programs which do menu driven VMS mail interfaceing. Both use SMG and need only be compiled and linked. mail_profile_edit allows a manager to modify/delete entries in the mail profile data file. If run with no arguments, reads in the records of all users, or if invoked mm :== $'f$environment("default")'mail_profile_edit.exe mm username [username....] will only edit the specified user entries. user names followed by a "*" indicate users with no corresponding entry in sysuaf.dat. s_mail is for individuals to read/send etc their own mail. It is menu driven but I have never put it in use. It turned out to be slow and cumbersum. I am passing it on as an example only of programming VMS mail interface. The two programs are included here in source and .obj. The .EXE copies were linked on VMS 5.5; relink if you have another VMS version. Michael N. LeVine Naval Air Weapons Station, China Lake, Ca 93555, USA Internet: levine%fidler.decnet@nwc.navy.mil (619) 939-2614 avn 437-2614 "Waiter, there's a bug in my soup!" "No, Sir, it's not a bug, it's a feature!" ========> [VAX92A.LOCK]AAAREADME.TXT;1 <======== Terminal Lock using VAX/VMS Password. Farm Credit Bank of Wichita 245 No. Waco Wichita, KS 67201-2940 Author: Mr. Lynn Tedder This program will lock up a terminal until the user enters their correct VMS Login password. After they have failed LGI_BRK_LIM times, the process will be deleted from the system. To build the procedure: $ macro ssxtlock $ link ssxtlock This procedure requires no privileges to run since the user is only going after his/her own record in the SYSUAF. I am using $getuai to return: the hashed password the seed the algorithm used to encrypt the password and the longword uic. The procedure then calls sys$hash_password to encrypt the entered password and compared against the hashed password returned from the uaf. ========> [VAX92A.LOMASKY.LOGIN]AAAREADME.TXT;1 <======== AAAREADME.TXT 4/8/92 Brian Lomasky c/o TERADYNE, INC. 321 Harrison Ave., Mail Stop H87. Boston, MA 02118 (617) 422-2259 This directory contains the actual source, object, executable, and data files that were referenced at the DECUS 1992 Spring Symposium held at Atlanta, GA during the "VA126 - Optimize LOGIN Time and Resources" session. Defining a large number of symbols and logical names in your SYS$LOGIN:LOGIN.COM file may cause all of your logins to take quite a while to execute. This program allows you to replace almost all of your LOGIN.COM definitions and other functions by simply executing one image (LOGIN.EXE). When executed, the LOGIN.EXE program reads all of your desired definitions from your SYS$LOGIN:LOGIN.DAT file and creates the same symbols and logicals names, as well as some other functions. Complete detailed instructions on how to do this are contained in the sample LOGIN.DAT file. List of contained files: AAAREADME.TXT This file LOGIN.BAS VAX BASIC source code for the LOGIN.EXE program LOGIN.COM Sample LOGIN.COM file which is used to execute LOGIN.EXE LOGIN.DAT Sample data file which is read by the LOGIN.EXE program LOGIN.EXE Linked version of LOGIN.OBJ LOGIN.OBJ Compiled version of LOGIN.BAS You should not need to recompile or relink the executable unless you need to change the features of the program. VAX BASIC V3.n or higher is required to compile this program. This program has been tested on VMS V5.3 and V5.4 ========> [VAX92A.LOMASKY.PIGGY]AAAREADME.TXT;1 <======== AAAREADME.TXT 4/8/92 Brian Lomasky c/o TERADYNE, INC. 321 Harrison Ave., Mail Stop H87. Boston, MA 02118 (617) 422-2259 This directory contains the actual source, object, and executable files that were referenced at the DECUS 1992 Spring Symposium held at Atlanta, GA during the "VA123 - Who's Filling Up the Disk Now?" session. -------------------------------------------------------------------------------- A typical scenario: The system manager gets called because a particular disk is very low on free space. Jobs may abort if the disk runs out of space. The problem lies in trying to figure out who (of the 3000 users who reside on that disk) is filling it up - and typing a DIRECTORY/SIZE [*...] on the entire 5-gigabyte disk takes much too long! What's a poor system manager to do? ****** PIGGY to the rescue!! ****** PIGGY is a utility that tracks changes in disk space very quickly and easily. It works by storing a "snapshot" image of the number of disk blocks used by each UIC (and resource identifier) for a given disk in a central data file. At a later time, when the system manager wants to see who is using too much space on that disk, PIGGY will create a report in just a few seconds, showing which users are using more space than the earlier "snapshot" had stored. Once the system manager knows who the "DISK PIG" is, it's just a simple matter of examining that user's directory tree for the excessively large files. -------------------------------------------------------------------------------- Restrictions and Notes: 1) PIGGY gets the disk space usage information from the disk quota file. If you have not enabled disk quotas for a given volume, you must enable "infinite" quotas for all users on the volume by typing something such as: $ MCR DISKQUOTA DISKQ>USE DISK$volume: (substituting your disk name here) DISKQ>CREATE DISKQ>MODIFY [0,0]/PERM=99999999 DISKQ>REBUILD DISKQ>EXIT (Note that SYSPRV (or equiv) privilege is required) Due to the many different UICs which might try to write files to the system disk, enabling disk quotas on the system disk is NOT recommended, since you might encounter some serious "DISK QUOTA EXCEEDED" errors if there is not an existing disk quota entry for each and every UIC which might ever write to the system disk. Therefore, PIGGY can not be used Page 2 to monitor disk space usage on the system disk. 2) A logical called: TOOLS must exist, and must point to the directory where the PIGGY.DAT data file will reside 3) PIGGY needs BYPASS (or equiv) privilege so that it can successfully open its TOOLS:PIGGY.DAT file, as well as the SYSUAF file (so that it can tell the difference between a UIC and a resource identifier in the disk quota file) 4) PIGGY is invoked as a foreign DCL command. Assuming that PIGGY.EXE resides in the TOOLS: directory, add the following line to your LOGIN.COM file: $ PIGGY :== $TOOLS:PIGGY -------------------------------------------------------------------------------- To create the PIGGY database file for the first time: (Assume that your system contains 3 disks other than the system disk: DISK$USER1, DISK$USER2, and DISK$USER3) 1) First cleanup all obsolete files on each of the disks that you want PIGGY to keep track of. This will allow PIGGY's "snapshot" to store a normal baseline number of disk blocks for each of the UICs (and recource identifiers) that own files on each disk. 2) Enable "infinite" disk quotas, as described above, on each of the disks that you want PIGGY to monitor. 3) Type: PIGGY DISK$USER1: INIT to create a new TOOLS:PIGGY.DAT file containing the baseline disk usage for each UIC/identifier on the DISK$USER1: disk. 4) Type: PIGGY DISK$USER2: UPDATE to add the baseline disk usage for each UIC/identifier on the DISK$USER2: disk to the existing TOOLS:PIGGY.DAT file. 5) Type: PIGGY DISK$USER3: UPDATE to add the baseline disk usage for each UIC/identifier on the DISK$USER3: disk to the existing TOOLS:PIGGY.DAT file. -------------------------------------------------------------------------------- In the future, when you want to see who's using too much space on a disk (example of DISK$USER2:), type: PIGGY DISK$USER2: In just a very short time, a PIG.LIS report will be created, detailing the baseline and current disk usages, as well as the actual and percentage change, for all "PIGGISH" users. PIGGY uses two filters to eliminate the non-PIGGY users from the report: 1) A minimum number of blocks that you want to appear on the report. Any user disk quota which grows by less than this number of disk blocks will not be included in the report. Default of 1000 blocks, unless overridden Page 3 by the options BLOCKn argument (see below for details). 2) A minimum percentage of blocks that you want to appear on the report. Any user disk quota which grows by less than this percentage of disk blocks will not be included in the report. Default of 20 percent, unless overridden by the options PCTnnn argument (see below for details). You can then examine the report and take corrective action against the offending users (cattle prods are highly effective!) A sample report is as follows: PIGGY Report for DISK$HAM56: on 08-Apr-92 02:17 PM (20% limit, 1000 blocks) (Last update was 07-Apr-92 09:13 AM)(Skipping negative diffs) Curr-Usage Prev-Usage Difference %Diff [SYSTEM] 94335 77255 17080 22% [WOODS] 14686 11039 3647 33% [FERRON] 64318 9607 54711 569% [GREER] 18075 12333 5742 46% [UNIXACCESS] 1811 723 1088 155% (Note that user FERRON's disk space has increased by 54711 blocks since that user's baseline number of 9607 disk blocks was stored). -------------------------------------------------------------------------------- PIGGY has a help screen, which is displayed if you type just the PIGGY command at your DCL prompt, without any following parameters or qualifiers. It lists all of the possible arguments that PIGGY allows: Disk Piggy Utility V1.1 Error - No arguments specified. Valid arguments are: dddd = (where dddd=any disk name) Specifies disk to be reported on PCTnnn = (where nnn=0 to 100) Specifies smallest percent change in disk space usage that you want to appear on the report (Default of 20%) BLOCKn = (where n=0 to 999999999) Specifies smallest number of different disk blocks used that you want to appear on the report (Default of 1000) NEG = Also print any negative disk block differences NOXLATE = No uic-to-identifier translation is to be performed ----- Special Restricted Qualifiers Follow: ----- UPDATE = Compare PIGGY values and then update the PIGGY database for all users UPDATE=ident = Compare PIGGY values and then update the PIGGY database with the info only for the specified identifier/username (The above 2 options not allowed with DUMP or NOXLATE) INIT = Initialize the PIGGY database with current disk quota values USERS = Create report containing list of usernames, block size diff, and captive/dismail/ident flags, for existing PIGGY users (This option not allowed with INIT, DUMP, NEG, or NOXLATE) Page 4 Each of the possible arguments are explained, as follows: 1) Immediately after the PIGGY command must be the specification of the disk that you want to access. This is the only required argument. If this is the only argument which is specified, then a PIG.LIS report will be created, indicating all of the users who are pigging up the disk (comparing each user's stored baseline number of blocks with the current number of blocks used, as stored in the disk quota file). (Except when you specify the INIT argument, PIGGY always creates a PIG.LIS report file). 2) The PCTnnn argument is used when you're creating a PIG.LIS report, but you want to use a different threshold for the minimum percentage (Default of 20% if this argument if not specified). 3) The BLOCKn argument is used when you're creating a PIG.LIS report, but you want to use a different threshold for the minimum growth in the number of disk blocks (Default of 1000 blocks if this argument if not specified). 4) The NEG argument is used when you want to include users whose disk blocks have decreased between the baseline amount and the current amount, in addition to the users where the number of disk blocks have grown. 5) The NOXLATE argument is used if you want to see the actual UIC values (rather than the usual username translation) in the report. 6) The UPDATE argument is used to update the TOOLS:PIGGY.DAT data file with new baseline disk space usages for ALL users on the given disk. 7) The UPDATE=username argument is used to update the TOOLS:PIGGY.DAT data file with a new baseline disk space usage for one specific username on the given disk. 8) The INIT argument is used to create a new version of the TOOLS:PIGGY.DAT data file, containing only the baseline disk space usages for ALL users on the given disk; No other disk's baseline information will be stored. 9) The USERS argument is used to create a PIG.LIS report containing a comma-separated list of usernames or identifiers, block size differences, and captive/dismail/identifier flags, for all existing PIGGY users on the specified disk. This file can then be easily read and parsed by DCL, so that you can build your own special reporting and/or notification systems. -------------------------------------------------------------------------------- List of contained files: AAAREADME.TXT This file GET_RMS_STATUS.BAS VAX BASIC source code for a function called by PIGGY.BAS GET_RMS_STATUS.OBJ Compiled version of GET_RMS_STATUS.BAS PIGGY.BAS VAX BASIC source code for the PIGGY.EXE program PIGGY.BLD Command procedure to compile and link PIGGY.EXE from the source files PIGGY.EXE Linked version of PIGGY.OBJ PIGGY.OBJ Compiled version of PIGGY.BAS You should not need to recompile or relink the executable unless you need to Page 5 change the features of the program. VAX BASIC V3.n or higher is required to compile this program. This program has been tested on VMS V5.3 and V5.4 ========> [VAX92A.LOMASKY.SYSUAF]AAAREADME.TXT;1 <======== SYSUAF.DOC (or AAAREADME.DOC) 04/23/92 Brian Lomasky c/o TERADYNE, INC. 321 Harrison Ave., Mail Stop H87 Boston, MA 02118 (617) 422-2259 DEC's AUTHORIZE utility has two reporting options for the SYSUAF.DAT file: 1) Too little (AUTHORIZE LIST/BRIEF) 2) Too much (AUTHORIZE LIST/FULL) This is almost useless for meeting the system manager's requirements of maintaining and monitoring the SYSUAF and its users. -------------------------------------------------------------------------------- SYSUAF V5.42 is a reporting program for the SYSUAF and RIGHTSLIST data files. Simply turn on READALL (or equiv) privilege and run SYSUAF.EXE. (Do NOT install this program with privilege; otherwise, any user could execute it). A menu of reporting options will be displayed. The best way to see what is available is to try them and see what data is displayed. You can print reports either to the screen, to a data file (SYSUAF.LIS), or to create a DCL command procedure (SYSUAF.COM) which can then be easily edited and then executed. SYSUAF.EXE will try to open SYS$SYSTEM:SYSUAF.EXE and SYS$SYSTEM:NETPROXY.EXE (or SYS$SYSTEM:NETUAF.DAT), unless the logical name of SYSUAF and/or NETPROXY (or NETUAF) is defined, in which case the SYSUAF.EXE program will try to open the SYSUAF and/or NETPROXY (or NETUAF) files pointed to by the logical name(s), respectively. SYSUAF.BAS is the source code for the main program (written in VAX BASIC V3). SYSUAF.DOC (or AAAREADME.DOC) is this file. SYSUAF.EXE is the executable file for the main program. SYSUAF.OBJ is the compiled SYSUAF.BAS object code. TRANSFER_PWD_TO_NODE.BAS is the source code for the password-copying program which is executed by the command file created by the SYSUAF.EXE report option "L" (written in VAX BASIC V3). TRANSFER_PWD_TO_NODE.EXE is the executable file for the password-copying program (which must reside in a directory pointed to by the logical name: TOOLS: in order to be available to the SYSUAF.COM command file created by SYSUAF.EXE) TRANSFER_PWD_TO_NODE.OBJ is the compiled TRANSFER_PWD_TO_NODE.BAS object code. You do not need the TRANSFER_PWD_TO_NODE.* files if you never select the "L" option on the SYSUAF menu. You should not need to recompile or relink either of the executables unless you need to change the features of the program. (Instructions for compiling and linking SYSUAF are contained at the beginning of the source code). These Page 2 programs have been tested on VMS V4.6, V4.7 and V5.1, V5.2, V5.3, and V5.4. Special note on report option "K": Report option "K" is used to copy all SYSUAF.DAT data (except for any encrypted password data - which is handled by the "L" option) for selected users (based upon the responses to the other SYSUAF prompts) from one node's SYSUAF.DAT to another node's SYSUAF.DAT. It does this by creating a command file, which when executed, will copy the account data. You will be prompted as to whether you want to copy only usernames which do not have a matching username (as yet) on the remote node or whether to copy data for all selected usernames (based upon the responses to the other SYSUAF prompts). Normally, you would run this option and then run option "L" to create the two SYSUAF.COM command files which will then be subsequently executed, as follows: 1) Copy the SYSUAF.COM command file produced by the report option "K" to the remote node and execute it on the remote node to add the required new accounts (less passwords). 2) Then execute the command file produced by the report option "L" on the local node to copy the encrypted password information from the local node's accounts to the accounts on the remote node. The command file will prompt you for the name of the remote node to be updated. Besides the usual SYSPRV (or equiv) privilege that is required to run this utility on the local node, you will also need a proxy from the local node to a similarly-privileged account on the remote node in order for the program to open both nodes' SYSUAF.DAT files for the transfer operation. Special note on report option "L": Report option "L" is used to copy the encrypted password information from one node's SYSUAF.DAT to another node's SYSUAF.DAT. It does this by creating a command file, which when executed, will copy the data. You will be prompted as to whether you want to copy only passwords whose usernames do not have matching usernames (as yet) on the remote node or whether to copy passwords for all selected accounts (based upon the responses to the other SYSUAF prompts). Note that the command file created by this option will attempt to execute a utility called TRANSFER_PWD_TO_NODE.EXE which is located in a logically-named directory called TOOLS: (You must define the TOOLS: logical name and ensure that the executable resides in that directory, prior to executing the command file). This report option does not affect the local node's SYSUAF.DAT file in any way; Only the remote node's encrypted password data in its SYSUAF.DAT file is updated. -------------------------------------------------------------------------------- Page 3 The user is prompted for the following information (see below for sample display): The first prompt allows you to specify the type of report to be created. The second prompt allows you to specify none or more options which will apply to the selected report. The third prompt allows you to specify a string of none or more characters which indicate which field(s) are to appear in the report or command file. The fourth prompt allows you to specify a string of none or more characters which indicate which field(s) are to searched, so as to limit the output to a subset of all accounts. If you select report option "K" or "L", you will also be prompted as follows: Do you want to skip users who have existing accounts on another node? (Enter Y or N) (If you respond with a "Y" to this prompt, you will be further prompted to enter a node name to be compared against; all usernames on the local node who also have an account on the remote node will be omitted from the update process.) -------------------------------------------------------------------------------- SYSUAF REPORT PROGRAM V5.42 --- Select Report Type: Screen Output: A) Normal Report List File Output: B) Normal Report C) UAF Flags D) Privileges Report (Default AND Authorized) (132-columns) E) Users who have ever logged in F) Users who have never logged in G) Users who have not logged in within the past "n" days H) Highly-privileged users, privileges, UICs, and privileged proxies Command File Output: I) MODIFY username/ J) REVOKE/IDENTIFIER identifier(s) username K) To duplicate a user's account and identifiers (less Password) L) To duplicate a user's encrypted password info onto another node Enter the letter of the desired option (or CTRL/Z to exit): - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - **** Select none or more of the following report options: **** 1) Sort by UIC (instead of normal Username sorting) Page 4 2) Skip usernames which have existing accounts on another node 3) Skip usernames which do not have existing accounts on another node 4) When multiple search fields are specified, search for user records which match ANY of the search criteria (rather than the default of searching only for user records which match ALL of the search criteria) 5) Do not print any report headings (Default=Print Headings) 6) Truncate "too-long" fields so that most of them fit on the report Enter none or more of the above options (concatenated as one string of chars): ==> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - **** Besides the Username, select the data item(s) to appear on the report: **** A) Access Restrictions Quotas: !) Last Password #1 Change Date B) Account Expiration Date R) ASTLM @) Last Password #2 Change Date C) Account Name S) BIOLM #) Last Interactive Login Date D) Base Priority T) BYTLM $) Last Non-Interactive Login Date E) CLI Name U) CPUTIME %) Number of Login Failures F) CLI Table V) DIOLM ^) Any Existing Userdata G) Default Device W) ENQLM &) Customer-site-specific data H) Default Directory X) FILLM *) Held Identifiers I) Login Command filespec Y) JTQUOTA J) Login Flags Z) MAXACCTJOBS K) Minimum Password Length 0) MAXDETACH L) Owner Name 1) MAXJOBS M) Password Lifetime 2) PBYTLM N) Primary/Secondary Days 3) PGFLQUOTA O) Privileges - Authorized 4) PRCLM P) Privileges - Default 5) SHRFILLM Q) UIC 6) TQELM 7) WSDEFAULT 8) WSEXTENT 9) WSQUOTA Enter none or more of the above items (concatenated as one string of chars): ==> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - **** Select none or more data items to SEARCH for: **** A) Access Restrictions Quotas: !) Last Password #1 Change Date B) Account Expiration Date R) ASTLM @) Last Password #2 Change Date C) Account Name S) BIOLM #) Last Interactive Login Date D) Base Priority T) BYTLM $) Last Non-Interactive Login Date E) CLI Name U) CPUTIME %) Number of Login Failures F) CLI Table V) DIOLM ^) Any Existing Userdata G) Default Device W) ENQLM &) Customer-site-specific data H) Default Directory X) FILLM *) Held Identifiers I) Login Command filespec Y) JTQUOTA +) Un-Held Identifiers J) Login Flags Z) MAXACCTJOBS K) Minimum Password Length 0) MAXDETACH L) Owner Name 1) MAXJOBS M) Password Lifetime 2) PBYTLM N) Primary/Secondary Days 3) PGFLQUOTA Page 5 O) Privileges - Authorized 4) PRCLM P) Privileges - Default 5) SHRFILLM Q) UIC Group 6) TQELM 7) WSDEFAULT 8) WSEXTENT 9) WSQUOTA Enter none or more of the above items (concatenated as one string of chars): ==> -------------------------------------------------------------------------------- SYSUAF V5.42 has the following changes: 1) A bug was corrected which caused text strings to print incorrectly when creating a command file output. 2) The 132-col automatic screen-switching functionality is supressed when creating a command file. 3) The additional prompting screens and object file descriptions were included in this documentation file (SYSUAF.DOC or AAAREADME.DOC). 4) The owner name has been added to the "E" and "G" reports. ========> [VAX92A.LPD_FOR_UCX]AAAREADME.TXT;2 <======== LPD for UCX Part01 of 6 From Dietmar Berg . This is an implementation of LPD for UCX, allowing VMS printers to be used from Unix systems. lpd (BSD-style line printer daemon) for VMS ------------------------------------------- Copyright (C) 1991 Dietmar Berg . All rights reserved. Abstract: This package enables users on a UNIX-system to access printers (or more general, queues) on a VMS system. All UNIX utilities (lpr, lpq, lprm, lpd) can be used without any changes. Access privileges and job-ownership are retained by mapping UNIX- to VMS-users through a configuration file. The daemon on VMS must be run with appropriate privileges. Two servers can be built from this package: DLPD DECnet version used with a protocol-converter daemon (lpdgw) running on an ULTRIX-machine acting as gateway between Internet and DECnet ILPD Internet version used with UCX-software on VMS To build: on VMS: $ MMS dlpd.exe $ MMS ilpd.exe on ULTRIX (gateway process): % cc -o lpdgw lpdgw.c -ldnet For installation and configuration, see the documentation dlpd.tex (source) or dlpd.ps (PostScript output) File Name Archive # Description ----------------------------------------------------------- README 1 This file COPYRIGHT 1 (my company requires this) descrip.mms 1 "makefile" for VMS build.com 1 output of MMS/NOACTION lpd.h 1 header file lpd.c 1 main program rcvjob.c 2 receive a job showjob.c 1 show queue deljob.c 1 delete job inet.c 2 UCX / TCP network stuff dnet.c 2 DECnet network stuff sndjbc.c 2 send job to job-controller getqui.c 3 get queue info cmd.c 1 operator-comm Page 2 config.c 3 configuration util.c 3 utility functions llist.c 2 list handling routines baseline.c 2 list of modules lpd.opt 1 just for VMS-linker dlpd.tex 4 doc in LaTeX-source dlpd.ps.A 5 doc in PostScript, part A dlpd.ps.B 5 doc in PostScript, part B (concat A+B) lpdgw.c 4 ULTRIX gateway program ilpd_start.com 2 sample startup routine ILPD dlpd_start.com 2 sample startup routine DLPD dlpd.config 4 sample config file cmd.com 5 sample proc to interface to cmd-mbx -- V Dietmar Berg C=AT;A=ADA;P=Alcatel-W01 (X.400) +---------------------+ Telecom Engineer | A L C A T E L | Alcatel Austria AG 10741::X100_BERG (ANS) +---------------------+ Scheydgasse 41 +43-1-27722-2788 (tel) A U S T R I A A-1210 Vienna-Austria/Europe +43-1-27722-148 (fax) ========> [VAX92A.MCMAHON]AAAREADME.TXT;2 <======== Session Notes from DECUS Atlanta 1992 ------------------------------------- Submitted by: John "Fast-Eddie" McMahon UNISIG Session Notes Editor TGV, Inc. 603 Mission Street Santa Cruz, CA 95060 MCMAHON@TGV.COM 800/848-3440 *.OUTLINE files are text files. *.PS files are PostScript files. DECWINDOWS-BRAIN-SURGERY.OUTLINE - Session UI035 by John McMahon DECWINDOWS-BRAIN-SURGERY.PS EVENING-WITH-BERFERD.PS - Session UN049 by Bill Cheswick GREP-SED-AWK.PS - Session UN046 by Fred Avolio LOCATING-UNIX-SOFTWARE-ON-THE-INTERNET.PS - Session UN065 by Sam Kimery SENDMAIL.PS - Session UN047 by Fred Avolio SURVIVAL-ON-THE-INTERNET.OUTLINE - Session NE153/SE136 by John McMahon SURVIVAL-ON-THE-INTERNET.PS ULTRIX-DIST-SYS-MGR.PS - Session UN093 VA-TECH-INFO-SERVER-PROJECTS.PS - Session UN029 by Ron Jarrell ========> [VAX92A.MEADOWS]AAAREADME.TXT;1 <======== CD is a program to play audio CD's on CDROM readers capable of doing so, such as the RRD42. This version is written in C, using Motif. It requires privilege to use (DIAGNOSE and PHY_IO), to be able to access the SCSI bus directly. The name may change to something more appropriate (such as CD_PLAYER). All feedback would be quite welcome (if not absolutely necessary!). Send email to joe@kirk.fhcrc.org or meadowsj@boeing.com with all comments. To use the program you need to define a logical name "DECW$CD_PLAYER" (chosen since many folks were already running the DEC CD player and have defined this logical) to point to the name of your CD driver. You may or may not need to set up the device to be configured manually and configure it with the generic SCSI driver (read the beginning of CD.C for more info on how to do that, or read DECW$EXAMPLES:DECW$CDPLAYER.C). It appears that as early as VMS V5.4-3 (maybe earlier?) you will not need to do this. Which means you can use it as a data drive (for bookreader or whatever), and switch to using it to listen to music without having to do a reboot! (many thanks to the kind souls who pointed that feature out to me). ========> [VAX92A.MOST]AAAREADME.TXT;1 <======== 1 June 1992 MOST(1) NAME most - browse or page through a text file SYNOPSIS most [-bstvw] [+lineno] [+c] [+d] [+/string] [filename...] DESCRIPTION MOST is a paging program that displays, one windowful at a time, the contents of a file on a vtxxx compatable terminal. It pauses after each windowful and prints on the window status line the screen the file name, current line number, and the percentage of the file so far displayed. Unlike other paging programs, most is capable of displaying an arbitrary number of windows as long as each window occupies at least two screen lines. Each window may contain the same file or a different file. In addition, each window has its own mode. For example, one window may display a file with its lines wrapped while another may be truncating the lines. Windows may be `locked' together in the sense that if one of the locked windows scrolls, all locked windows will scroll. most is also capable of ignoring lines that are indented beyond a user specified value. This is useful when viewing computer programs to pick out gross features of the code. See the `:o' command for a description of this feature. In addition to displaying ordinary text files, most can also display binary files as well as files with arbitrary ascii char- acters. When a file is read into a buffer, most examines the first 32 bytes of the file to determine if the file is a binary file and then switches to the appropriate mode. However, this feature may be disabled with the -k option. See the description of the -b, -k, -v, and -t options for further details. Text files may contain combinations of underscore and backspace characters causing a printer to underline or overstrike. When most recognizes this, it inserts the appropriate escape sequences to achieve these the desired effect on vtxxx compatable termi- nals. In addition, some files cause the printer to overstrike some characters by embedding carriage return characters in the middle of a line. When this occurs, most displays the overstruck character with a bold attribute. This feature facilitates the reading of UNIX man pages or a document produced by runoff. In particular, viewing this document with most should illustrate this behavior provided that the underline characters have not been stripped. This may be turned off with the -v option. By default, lines with more characters than the terminal width are not wrapped but are instead truncated. When truncation occurs, this is indicated by a `$' in the far right column of the terminal screen. The RIGHT and LEFT arrow keys may be used to view lines which extend past the margins of the screen. The -w option may be used to override this feature. When a window is Page 2 wrapped, the character `\' will appear at the right edge of the window. Commands are listed below. OPTIONS -b Binary mode. Use this switch when you want to view files containing 8 bit characters. most will display the file 16 bytes per line in hexidecimal notation. A typical line looks like: 01000000 40001575 9C23A020 4000168D ....@..u.#. @... When used with the -v option, the same line looks like: ^A^@^@^@ @^@^U u 9C #A0 @^@^V8D ....@..u.#. @... -k `Kanji' option. Ordinarily, most will go into binary mode if the file consists of non-ascii characters. Sometimes this feature is not desirable since some terminals have a special interpretation for eight bit characters. The -k option turns off the automatic sensing. -s Squeeze. Replace multiple blank lines with a single blank line. -v Display control characters as in `^A' for control A. Nor- mally most does not interpret control characters. -t Display tabs as `^I'. This option is meaningful only when used with the -v option. +lineno Start up at lineno. +c Make search case sensitive. By default, they are not. +d This switch should only be used if you want the option to delete a file while viewing it. This makes it easier to clean unwanted files out of a directory. The file is deleted with the interactive key sequence `:D' and then con- firming with `y'. +/string Start up at the line containing the first occurrence of string. COMMAND USAGE The commands take effect immediately; it is not necessary to type a carriage return. In the following commands, i is a numerical argument (1 by default). SPACE, CTRL-D, NEXT_SCREEN Page 3 Display another windowful, or jump i windowfuls if i is specified. RETURN, DOWN_ARROW, V, CTRL-N Display another line, or i more lines, if specified. UP_ARROW, ^, CTRL-P Display previous line, or i previous lines, if specified. T, ESCAPE< Move to top of buffer. B, ESCAPE> Move to bottom of buffer. RIGHT_ARROW, TAB, > Scroll window left 60i columns to view lines that are beyond the right margin of the window. LEFT_ARROW, CTRL-B, < Scroll window right 60i columns to view lines that are beyond the left margin of the window. U, CTRL-U, DELETE, PREV_SCREEN Skip back i windowfuls and then print a windowful. R, CTRL-R Redraw the window. J, G If i is not specified, then prompt for a line number then jump to that line otherwise just jump to line i. % If i is not specified, then prompt for a percent number then jump to that percent of the file otherwise just jump to i percent of the file. W, w If the current screen width is 80, make it 132 and vice- versa. For other values, this command is ignored. Q, CTRL-X CTRL-C, CTRL-K E Exit from most. On VMS, ^Z also exits. h, CTRL-H, HELP, Help. Give a description of all the most commands. The most environment variable MOST_HELP must be set for this to be meaningful. f, /, CTRL-F, FIND, GOLD PF3 Prompt for a string and search forward from the current line for ith distinct line containing the string. CTRL-G aborts. ? Prompt for a string and search backward for the ith distinct line containing the string. CTRL-G aborts. n Search for the next i lines containing an occurrence of the Page 4 last search string in the direction of the previous search. m, SELECT, CTRL-@, CTRL-K M, PERIOD Set a mark on the current line for later reference. INSERT_HERE, CTRL-X CTRL-X, COMMA, CTRL-K RETURN, GOLD PERIOD Set a mark on the current line but return to previous mark. This allows the user to toggle back and forth between two positions in the file. l, L Toggle locking for this window. The window is locked if there is a `*' at the left edge of the status line. Windows locked together, scroll together. CTRL-X 2, CTRL-W 2, GOLD X Split this window in half. CTRL-X o, CTRL-W o, o, Move to other window. CTRL-X 0, CTRL-W 0, GOLD V Delete this window. CTRL-X 1, CTRL-W 1, GOLD O Delete all other windows, leaving only one window. E, e Edit this file. This does not spawn an editor, rather most uses callable EDT and TPU routines to perform the editing task. In addition, most can attach to a kept editor. See the above discussion of the environment variable MOST_EDITOR. $, ESC $ This is system dependent. On VMS, this causes most to spawn a subprocess. When the user exits the process, most is resumed. On UNIX systems, most simply suspends itself. :n Skip to the next filename given in the command line. Use the arrow keys to scroll forward or backward through the file list. `Q' quits most and any other key selects the given file. :c Toggle case sensitive search. :D Delete current file. This command is only meaningful with the +d switch. :o, :O Toggle various options. With this key sequence, most displays a prompt asking the user to hit one of: bdtvw. The `b', `t', `v', and `w' options have the same meaning as the command line switches. For example, the `w' option will toggle wrapping on and off for the current window. The `d' option must be used with a prefix integer i. All Page 5 lines indented beyond i columns will not be displayed. For example, consider the fragment: int main(int argc, char **argv) { int i; for (i = 0; i < argc, i++) { fprintf(stdout,"%i: %s\n",i,argv[i]); } return 0; } The key sequence `1:od' will cause most to display the file ignoring all lines indented beyond the first column. So for the example above, most would display: int main(int argc, char **argv)... } where the `...' indicates lines follow are not displayed. HINTS CTRL-G aborts the commands requiring the user to type something in at a prompt. The backquote key has a special meaning here. It is used to quote certain characters. This is useful when search for the occurrence of a string with a control character or a string at the beginning of a line. In the latter case, to find the occurrence of `The' at the beginning of a line, enter `^JThe where ` quotes the CTRL-J. ENVIRONMENT most uses the following environment variables: MOST_SWITCHES This variable sets commonly used switches. For example, some people prefer to use most with the -s option so that excess blank lines are not displayed. On VMS this is nor- mally done done in the login.com through the line: $ define MOST_SWITCHES "-s" MOST_EDITOR (VMS only) Set this logical to one of three values: EDT, TPU, or EMACS. The default is EDT. most does not spawn an editor. Rather, it uses callable EDT and TPU to perform the editing task. Since VMS does not support callable EMACS, most will attempt to attach to a kept EMACS. For this case, most looks for the logical name EMACS_PID and attaches to the process with that pid. It then defines the logicals EMACS_FILE_NAME and EMACS_FILE_LINE which EMACS can check upon attaching to it. Page 6 MOST_HELP This variable must be setup to point to the most helpfile. Without this most will not be able to provide online help. However, this behavior may be changed at compile time. See the Makefile for more information. BUGS Almost all of the known bugs or limitations of most are due to a desire to read and interpret control characters in files. One problem concerns the use of backspace characters to underscore or overstrike other characters. MOST makes an attempt to use termi- nal escape sequences to simulate this behavior. One side effect is the one does not always get what one expects when scrolling right and left through a file. When in doubt, use the -v and -b options of most. String may not work properly with binary files. At this time, most only works well with terminals understanding vt100 escape sequences. most does not seem to have any problem with xterm. malloc(3) failures are not checked. most may crash if there is not enough room to hold the file. AUTHOR John E. Davis The Ohio State University Department of Physics davis@pacific.mps.ohio-state.edu ACKNOWLEDGEMENTS I would like to thank the users of most for valuable comments and criticisms. I would especially like to thank those individuals who have contributed code to most: Mats Akerberg, Henk D. Davids, Rex O. Livingston, and Mark Pizzo- lato I would also like to thank Shinichi Hama for his valuable criti- cisms of most. Thanks to David W. Sanderson (dws@cs.wisc.edu) for adapting the documentation to nroff man page source format. ========> [VAX92A.MUNIC_S92]AAAREADME.TXT;1 <======== This is the 1992 DECUS-Munic contribution to 92AVLT. collected by: Dr. Norbert Wiehl Institut fuer Kernchemie Universitaet Mainz P.O. Box 3980 6500 Mainz 1 Internet: WIEHL@VKCMZD.CHEMIE.UNI-MAINZ.DE Vaxmail: WIN PSI%45050364276::wiehl IXI PSI%02043623276::wiehl May 1992 ----------------------------------------------------------------------------- BREAK.DIR block a terminal, resume with users password VMS 5.4 CHARGE.DIR modify VMS accounting string in process data structure CLUSTER_MOUNT.DIR command procedure to mount any disk in a cluster CRON.DIR CRON for VMS - Queue handling (new version) EDX.DIR edit a remote (ftp) UNIX file from a VMS system FIX_QUEUE.DIR repair JOB CONTROLLER file GETLABEL.DIR get volume label (clusterwide) GET_TERM_CHAR_EXAMPLES.DIR example programs getting terminal characteristics INDENT.DIR format C sources with right indents INFMON.DIR Inforserver Monitor KOERBER.DIR transparent usage of a remote compiler KRAUSE.DIR;1 load VT200 keys / convert set host LOGfile KUP.DIR collection of DCL procedures (get image id, get sym...) LASER.DIR PostScript printsymbiont (for AppleLaserWriter) LICENSE.DIR a PAK manager RDB based LICENSE_2.DIR commandprocedure to reformat a LICENSE database MAIL_DIS.DIR;1 mail distributor MAILMAN.DIR;1 manage vmsmail_profile.data MOVE_LOGIN_BOX.DIR DECwindow - move login box on screen MWAIT.DIR print information about process in MWAIT state PFIS.DIR put field from ISAM file into DCL symbol PLOT_DPS.DIR Postscript C Language Grafics Library PRTREMQ.DIR Print file on a remote queue 'node::queue' PSDRAW.DIR;1 Display postscript graphics package PSI_COPY.DIR File Transfer over x.25 PSLOGO.DIR use any POSTSCRIPT file for a DECwindow LOGIN_BACKGROUND PROCESSORMODES.DIR time in deifferent processormode since last boot (V5) REMINDER.DIR notebook REMOVE_LICENSE.DIR remove a license .LDB database RMS_RRV.DIR show information about an INDEX file SCHEDULE.DIR job scheduler SCHINDLER.DIR modem/c-kermit utilities SEND_SCSI.DIR send any command to a SCSI Device SETDAY.DIR switch in SYSUAF moving holydays to Secondary Days Page 2 SET_TERM_INQ.DIR just a very intelligent SET TERM/INQ SMALL.DIR;1 collection of small programs and procedures SPACE.DIR dynamic diskquota management SPI.DIR System Performance Information (DECwindows) STOP_ID.DIR STOP Process - also those which STOP/IP doesn't stop TELL.DIR VMSTELL : MS-DOS - VMS communication TELL_A_MESSAGE.DIR send a massage to another user TEUTSCH.DIR SMP.COM helps changing MODPARAMS.DAT CLONE_ROOT make a clone root for a satellite Remote Shutdown of Satellites FREEMEM.MFTU reduce a workingset dynamically, MFTU kodiert FAILOVER.MFT (ab VMS5.4) MSCP Disk FAILOVER UNREAD.DIR show who did'nt read his mail's USER_SHUTDOWN.DIR User driven shutdown on a workstation VTEDIT.DIR;1 Multi Window EDIT based on TPU/LSE Directory VKCMZB$DUB1:[MUNIC_S92] Total of 45 files. ========> [VAX92A.NSWC]AAAREADME.TXT;1 <======== SPRING 1992 DECUS VAX SIG TAPE SUBMISSIONS FROM DAHLGREN VAX LUG Naval Surface Warfare Center Dahlgren, Virginia 22448 For each submission, all of the sources are present. The sources, and other files necessary to build the products from their sources, are compressed. See SOURCES.0README for more information. Most of the programs are written in Fortran, and require object library NXXXLIB (whose sources are also present) to link. Each product has a command procedure (named product.BUILD) to build the product from sources. Several of the programs require some site-specific configuring, often edit- ing a .CLD file. I believe everything should work without tinkering if you set your default directory to this directory, and define logical name HERE to be this directory. Submissions from Alan Zirkle, NSWC Code K55 (703) 663-8023 Dahlgren, VA 22448 DECUServe, DCS "ZIRKLE" CHECKMAIL and VLOG are new, everything else is a resubmission due to enhancements and/or bug fixes. CHECKMAIL -- Checks whether another user has read the mail messages you sent 'em. Uses callable MAIL and $GETUAI routines, thus should not be dependent on internal file formats. VLOG -- Allows you to efficently view the tail end of a batch log while the job is still going, and to monitor its further progress as the job writes more to the log. Note: After writing VLOG, I just learned of TAIL by D. Shepperd, Atari Games, Corp., which is similar. Each has features not present in the other. SD -- SET/SHOW DEFAULT -- This version of SD is related to Dale Coy's excellent version, in that they both descend from a common ancestor. This incorporates his features, plus several new ones. Read SD.0README and SD.HLP for further information. LET -- Related to SD. A shorthand DEFINE command for defining logical names. Read LET.HLP for more information. To use, first execute the command $ LET == "$dev:[dir]LET". MODIFY -- Performs string replacement in a wild-card group of files. Has many features not found in the version in the DECUS VMS Startup Set. Read MODIFY.HLP for more information. To use, first execute the command $ SET COMMAND MODIFY. Page 2 REFORMAT -- Copies a file, optionally performing many types of conver- sions in the process. Read REFORMAT.HLP for more info. To use, first execute the command $ SET COMMAND REFORMAT. USERS -- Continuously-updating cluster-wide display of information about all or selected processes (select by nodes, process types, and/or usernames). Read USERS.HLP for more infor- mation. VGRAPH -- A very, very simple viewgraph producer for PrintServer 20 and 40 printers. Uses PostScript. Read VGRAPH.HLP for more information. To use, first execute $ SET COMMAND VGRAPH. Two sample input files *.VIEW are included. Tailoring for your local print queues is now done in a companion command procedure. Many improvements since Spring 1991. ZMENU -- A utility to produce a menu display inside a command proced- ure. You provide a simple template file, and ZMENU displays it along with a pointer which it moves between your selections based on the user's arrow key input. See ZMENU.HLP for more information. Execute @ZMENU.TEST for a demonstration. NXXXLIB -- Subroutine library needed to link the above programs. Many of the routines may be useful to you in other applications. The library and its sources are in the compressed sources file; see SOURCES.0README for more information. ========> [VAX92A.PASSPOL]AAAREADME.TXT;5 <======== Note: This is an updated version that corrected a couple of minor bugs. It has been linked on a VMS 5.5 system. This a VMS Password Policy Module to screen passwords before they are set. This code will only work with VMS 5.4 or greater. This module does not allow the password to be the following: The username and variations on such The account name from the UAF and variations on such. Variations of the owner field from the UAF Any word in a data file supplemental to the VMS provided dictionary. To build and install this module, execute the command procedure BUILD_PASSWORD_POLICY.COM. Afterwards, make sure you add the following line: $ INSTALL ADD SYS$LIBRARY:VMS$PASSWORD_POLICY.EXE to you SYS$MANAGER:SYSTARTUP_V5.COM file. An auxilary program is ADD_DICTIONARY which will allow you to add words to the supplemental dictionary. It will add words that are not already in the VMS dictionary or the supplementary dictionary. If you have a large number of words you would like to add to the supplemental dictionary, put them into a flat data file, one word to a line, ASSIGN the file to SYS$INPUT: and then run the ADD_DICTIONARY program. It will read all the words from the file and add them, if needed to the supplemental dictionary. The ADD_DICTIONARY program can also be run interactively. (The supplement dictionary is used rather than adding words to the VMS provided dictionary to prevent those changes from being lost in future upgrades/updates of the operating system.) Ted Nieland nieland@ted.hcst.com Hassler Communication Systems Technology, Inc. Dayton, OH (513) 476-4639 ========> [VAX92A.PAVLIN]AAAREADME.TXT;2 <======== ETHERMON is a software implementation of an Ethernet line activity monitor. It uses any VAX/VMS DEC-compatible Ethernet interface to collect the data, and reports statistics in a form similar to the VMS MONITOR utility. It also can collect Ethernet data for post-processing by a user-supplied offline program (sample programs are supplied). ETHERMON can determine symbolic identifications of remote nodes automatically, or have them defined manually; these symbolic identifications are used in ETHERMON's displays and reports. ETHERMON can also recognize equipment other than DEC's on the Ethernet. ETHERMON.COM is the build file; the documentation is stored in the files ETHERMON.PS (PostScript), ETHERMON.LN0 (DEC LN03), ETHERMON.LPT ("dumb" line printer or plain-text), and ETHERMON.MSS (Scribe manuscript source). The on-line help library ETHERMON.HLB must be in the same directory as ETHERMON.EXE when executing the program in order for the built-in HELP command to work. ETHERMON's executable can be run either by a foreign command definition or a DCL RUN command. The unsupported utilities are to be invoked by RUN command only (they do not check the command line for their parameters). These files were compiled and linked using VAX FORTRAN V5.3 and VAX/VMS V5.5. The version of ETHERMON here is a beta version only. While it generally appears to work, be aware it is beta code and may have problems. A non beta version will be released later. ========> [VAX92A.PERL]AAAREADME.TXT;1 <======== This is a VMS port of Perl 3.018. Use UNZIP to extract the files. It came from info.rz.uni-ulm.de. PERL is a sort of super replacement for SED, AWK, and several other Unix utilities, i.e. a very powerful scripting and text manipulation tool. ========> [VAX92A.RCS]AAAREADME.TXT;1 <======== RCS This is an update to the VMS port of RCS 4.3 by Rick Gregory. RCS stands for Revision Control System, a text control package somewhat akin to CMS or SCCS on other systems, and compatible with RCS on Unix platforms. Extract the ZOO file contents with $ zoo e rcs and decompress the objects saveset with commands like $compress -d rcsobs.bck_8192 $file/type=fixed/record=8192/attr=noimpliedcc rcsobs.bck and you will now be able to use Backup to extract the objects from saveset rcsobs.bck_8192. For a 4.35 minute install for vms without reading any instructions, look at setup.com in the [.install] subdirectory. Then read this file and aaareadme.vms very fast but don't try and remember any of it. Rich Gregory 12-jun-1991 13-feb-92 Changes since the last tape.... 1. I took away the system calls to the rcs_rename_com_file and the rcs_copy_com_file and deletion of files. These are now done with the c rtl calls to rename() and kill() and the gross but simple fastcopy(). All these have been moved to vmsstuff.c. If you want the old stuff that sets acl's et alia, don't upgrade. POSIX is coming. I could do more with rcs, but I wait. Our company actually bought a license for CMS. I may actually get to do a real side by side comparison soon. I have logged over a year with this rcs. I have 150+ files under rcs. One 100K file has had 50+ revs. Don't forget to set up a system to purge old versions out of your reference directory..... 2. I have included ciwild.com and cowild.com. They are useful for ci and co with wildcards. This is only one way to do that. You could also take the code in cf_vms.c and add a while() loop around the main program in co.c and ci.c... 3. This set of programs is also available by ftp from /pub/vms on ftp.virginia.edu due to the kind and generous support of UVA's Academic Computing Center. OBJ's and EXE's are zoo'ed. enjoy .... rich gregory 13-feb-92 /* Copyright (C) 1982, 1988, 1989 Walter Tichy Distributed under license by the Free Software Foundation, Inc. Page 2 This file is part of RCS. RCS is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 1, or (at your option) any later version. RCS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with RCS; see the file "COPYRIGHT.NOTICE". If not, write to the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. Report VMS problems and direct all questions to: rtg2t@virginia.edu Rich Gregory 1615 Hardwood Ave Charlottesville VA 22901 w= 804-977-0000 */ This directory contains complete sources for RCS version 4.3, Sat Nov 18 13:34:16 EST 1989 This directory contains complete sources for version 4 of RCS. Version 3 was included in the 4.3 BSD distribution. Features include: 1) Version 4 supports the "branch" keyword. 2) Numerous bug fixes. In addition, RCS now runs on many more machine architectures, including Suns (3.x and 4.0), VAXen (4.2 and 4.3 BSD), and IBM PC-ATs (Xenix). 3) Version 4 is backward compatible with version 3. Version 4 RCS will handle files checked in under version 3 (but not vice versa). 4) This distribution is not supported in anyway. However, bugs and (especially) bug fixes may be reported to rcs-bugs@cs.purdue.edu. 5) Older versions of diff do not support options used by RCS. It is known that 4.3 BSD, and SunOS 3.2 (and later releases) support the needed options. If your version of diff does not support these options, obtain the GNU diff from the FSF. If you use the GNU diff, it is necessary to change the setting of MERGE in the Makefile in the src directory. 6) RCS is free software; you can redistribute it and/or modify it Page 3 under the terms of the GNU General Public License. If you find a bug, please send it to me and I will see if I recognize it. My work was done with the VMS C compiler, not the GNU VMS C compiler. The original unix code is available by ftp from purdue. I had no difficult technical problems with the port. All credit should go to purdue who did 99.99% of the work. rich gregory 7-dec-90 ========> [VAX92A.RICKSYS]AAAREADME.TXT;1 <======== TPUPlus This is a revised version of the TPUPlus package and is compatible with VMS V5.5. My code for rectangular cut/paste has been replaced with DEC's version. DEC's version has been modified; bold highlighting has been replaced with the TPUPlus method of box highlighting. DEC's CHANGE MODE routine has been altered to affect box cut/paste in addition to normal operation. An IMPORTANT note regarding rect.cut/paste; the previous TPUPlus version of rect.cut/paste required the cursor to be positioned on the EXACT lower right corner of the box. The current (DEC) version requires that the cursor be positioned 1 CHARACTER TO THE RIGHT of the lower right corner. An enhanced on-line help is available for TPUPlus. ** Please note: I have in the past received inquiries about using TPUPlus on previous versions of VMS and must state you do so at your own risk. NOTICE This software is being provided free of charge and should remain as such, free to all who request it. A nominal fee may be charged for reproduction costs only. Please feel free to modify, enhance, or fix any/all bugs found (ABSOLUTELY NO GUARANTEE OR WARRANTY is expressed or implied.) I would appreciate being notified of any problem encountered or enhancements made to any of the programs so all who use this software may be notified. Thank you. Any and all questions or problems concerning this software should be directed to: Rickey H. (Rick) Stacks Sr. Programmer Analyst Arkansas Dept. of Pollution Control & Ecology 8001 National Drive / P.O. Box 8913 Little Rock, Ar. 72219 (501) 570-2174 - voice (501) 562-4632 - fax rick_sys@adpce.lrk.ar.us - Internet ========> [VAX92A.RPI]AAAREADME.TXT;1 <======== DECUS VAX Systems SIG Tapecopy Submissions Rensselaer Polytechnic Institute Spring, 1992 submitted by: Matthew Madison Engineering Computing Services Rensselaer Polytechnic Institute Troy, New York 12180-3590 USA +1 518 276 2606 madison@vms.ecs.rpi.edu (Internet) MADISON@RPIECSVX (BITNET) This submission contains seven subdirectories with items of possible interest to VMS system managers and users. All entries include source code, object code, executables, and documentation. Updates to previously submitted entries are noted. All entries, unless otherwise noted, are written BLISS-32. All entries include the BLISS source code contained in a compressed BACKUP save set to save space. Use the LZDCMP program to decompress the save sets and BACKUP to unload them. Some of the entries also contain MACRO source code as generated by the BLISS compiler. All entries include an AAAREADME.DOC file; most also include further documentation. All entries require VMS V5.0 or later. 1. [.MDMLIB] MDMLIB is a set of utility routines called by some of the programs in this submission, and is required if rebuilding the programs from sources. [update of Fall 1991 submission] 2. [.MX] Mesage Exchange (MX) is an electronic mail routing and distribution facility, supporting local delivery via VMS MAIL, SMTP over TCP/IP (CMU-Tek, TGV MultiNet, or DEC VMS/ULTRIX Connection), SMTP over DECnet, BITNET mail over Jnet, and UUCP mail via DECUS UUCP. It also supports mailing lists and file distribution over E-mail. [V3.1B; update of the Fall 1991 submission] Page 2 3. [.NETLIB] NETLIB is a library of routines that provide access to TCP/IP services in a transport-independent fashion. Supports CMU-Tek TCP/IP, TGV MultiNet, DEC VMS/ULTRIX Connection, and Process Software's TCPware. [V1.5; update of Fall 1991 submission] 4. [.NEWSRDR] NEWSRDR is an NNTP client program for reading Usenet news. Can use NETLIB (above) or any TCP/IP package supporting a Berkeley socket interface as NNTP transport. [V3.0; update of Spring 1991 submission] 5. [.NSQUERY] NSQUERY is a utility that interrogates Internet domain name servers. Requires the NETLIB library, also provided in this submission. [V2.7; update of Fall 1991 submission] 6. [.UCX_FINGER] A simple FINGER utility and server for DEC VMS/ULTRIX Connection. Nothing fancy, but it works. [V1.2; update of Fall 1991 submission] 7. [.WATCHER] Idle terminal monitor -- disconnects or logs out interactive users who have been idle for a certain period of time. Very flexible in configuration. [V2.7; update of Spring 1991 submission] ========> [VAX92A.STOCKLEY]AAAREADME.TXT;1 <======== This directory contains two programs: BRUREAD - An updated version of BRUREAD from the VAX Sig [.RSX91A.BRUREAD] to read or list BRU backup sets under VMS. Changes made were related to problems with RSX11M Multi-Header Files (Extension Headers). Also fixed the ENDOFFILE check for '/Backup_set=*' option. To use this program, simply: $ DEFINE BRUDIR $ SET COMMAND BRUDIR:BRU Note: BRU Multivolume Backup_sets are NOT supported. BRULIST - A VMS Fortran version of BRUDIR from the RSX-86A Sig Tape, to produce directory listings of a BRU format tape. Multivolume Backup_sets ARE supported. To build: FOR BRULIST LINK BRULIST The directory contains the following files: AAAREADME.1ST This file, for more info see BRUREAD_HISTORY.LOG BRU.CLD Set Command BRU BRU.TXT Short documentation (BRU/HELP) BRUREAD.COM Recompile/relink BRUREAD. BRUREAD.PAS program source written in Pascal BRUREAD.OBJ Object file BRUREAD.EXE Executable build under VMS V5.4 BRUMSG.MSG Message/OBJ BRUMSG.OBJ Message object. BRUREAD_HISTORY.LOG BRULIST.FOR program source written in VAX Fortran BRULIST.OBJ Object file BRULIST.EXE Executable build under VMS V5.4 16-APR-92 C. H. Stockley / Dept: 8455 Sandia National Laboratories 7011 East Avenue / P.O.Box 969 Livermore CA 94551-0969 USA Phone: (510) 294-2143 ========> [VAX92A.SYSSUPPORT]AAAREADME.TXT;1 <======== This directory tree contains a large number of command files and utilities which deal with problems of supporting VAXclusters in terms of adding and removing users, backups, and setups of the system for machine specific installed files. All require heavy editing to customize to a particular site, as they are set up for the submitter's site nodenames and users. ========> [VAX92A.TERMLOCK]AAAREADME.TXT;1 <======== This is an update to the TERM_LOCK program. This version will only run on VMS 5.4 or later. This is an update to the work that Ted Nieland did a couple of years back to the original program. The major change is that the broadcast message scroll region now matches the page length defined for the terminal. In addition to adding the page length check and removing some dead-code (from CHKMSG), I've added a page width check and centered the "banners" accordingly, fixed a missing comma in the SMG$PUT_CHARS calls so that the "banners" are highlighted in BOLD type as was originally intended, and made the check for NT devices work with virtual terminals (VT devices). I've also added a check for LT devices since these can be as insecure as Telnet and DECnet sessions if they originate from a terminal server (or?). Dr. Kenneth H. Fairfield | Internet: Fairfield@Slacvx.Slac.Stanford.Edu SLAC, P.O.Box 4349, MS 98 | DECnet: 45537::FAIRFIELD (45537=SLACVX) Stanford, CA 94309 | BITNET Fairfield@Slacvx ========> [VAX92A.UUCP]AAAREADME.TXT;2 <======== The VMSnet Working Group (U.S. VAX Systems SIG) Submissions DECUS uucp, Version 2.0 This directory tree contains Version 2.0 of DECUS uucp (formerly "VMSnet software"), a package which allows VMS systems to exchange mail, files, and network news with other systems (including Unix systems, and VMS systems running this software) using the uucp "g" protocol. Geoff Huston's ANU News, Version 6.1 Alpha-4 is included, along with command procedures and programs for transferring news via uucp. Everything here has been compiled and linked under VMS V5.4-x or 5.5. All images are known to work under 5.4-x, and possibly earlier versions. Object files are present (in the "development" savesets) for aid in linking under earlier versions. For distribution via the VAX SIG Symposium tape, almost all of the files have been placed in compressed BACKUP savesets. (The exceptions are: the documentation; and the programs and files needed to decompress and restore the compressed savesets.) Full documentation is in [UUCP.DOC]USRGD20.MEM, and in other files described therein. Chapter 2, "Installing the Files", of USRGD20.MEM contains descriptions of the contents of each saveset (so you can decide which ones you need) plus instructions for restoring them. After decompression, the total space required for the [UUCP...] tree is about 57,000 blocks. However, at least half of this (source and object files) will not be needed by most sites; sites that don't need the uucp maps and aren't running news can run uucp in about 6,000 blocks (plus log files). Sites that are currently running older versions of DECUS uucp and/or NEWS will probably need only the RUN.BKP saveset and the "loose" files in this tree. After restoring them as described in "Installing the Files", see the appendix, "Upgrading from Previous Versions", in USRGD20.MEM. principal contributors: Jamie Hanrahan, Kernel Mode Consulting POB 16540, San Diego, CA 92176 +1 619 284 8492 jeh@cmkrnl.com Tom Allebrandi II Mark Pizzolato Inland Steel Research Labs 1558 Fernside Street East Chicago, IN Redwood City CA 94061 +1 219 399 6306 +1 415 369 9366 allebrandi@inland.com mark@infocomm.com .decwrl!simpact!inland!allebrandi ...!decwrl!infopiz!mark DECUS uucp version 2.0 Page 2 Release Notes Page 2 1 Restoring The Files -- [UUCP] Must Be A UFD The [UUCP] directory must be a UFD; that is, its parent directory must be [000000]. Placing UUCP.DIR under another directory on the disk will not work, even with a rooted logical. 2 Restoring The Files With An Existing [UUCP] Tree If you are already running a previous version of DECUS uucp, note that the restoration procedures described in "Installing the Files" in the document is intended to place the files from this distribution into your existing [UUCP...] directory tree, with the new files superseding the old (by use of the /NEW_VERSION qualifier on the BACKUP command). This is intentional! Do not attempt to defeat this mechanism (for example, do not try to place the 2.0 files in a tree of their own). The automatic upgrade mechanisms we have provided may not work properly unless the new files coexist in the [UUCP...] tree with the old ones. Again, read the Appendix, "Upgrading from Previous Versions", in USRGD20.MEM for details on upgrading. Your files in [UUCP.CFG] will not be superseded. The automatic upgrade procedures will preserve the definitions of all standard logical names defined in your existing UUCP_SYSTARTUP.COM and NEWS_SYSTARTUP.COM; these will be propagated to their new home in the CONTROL. file. Other changes which you have made to these procedure will of course not be propagated, but the previous file versions will not be purged, so you will be able to migrate your changes into the new files (if you desire). 3 Upgrade Instructions Due to a typo, the instructions for upgrading do not appear as a separate Appendix in the document. They appear at the end of the Appendix, "Security Issues". ========> [VAX92A.VAXPRO]AAAREADME.TXT;1 <======== HIK11B.VAX The Hitchhiker's Guide To VMS: Episode 11.2 This file features code previously published in the December 1991 issue of VAX Professional magazine. Written by Bruce Ellis as part of his series, "The Hitchhiker's Guide To VMS," the code here comes from Episode 11.2 and was originally printed on page 39 of the VAX Professional December 1991 issue. In Episide 11.2, we learn, "Does Billy manage to become another user? Does he learn how to write a system service? Does he figure out how to get his program to run while the operator is still in another program?" HIK11_1.VAX The Hitchhiker's Guide To VMS: Episode 11.1 This file features Episode 11.1 of Bruce Ellis' "The Hitchhiker's Guide To VMS." It was originally run in the October 1991 issue of VAX Professional magazine on page 38. In this episode we learn, "Where will Billy go for support now that the Doctor is out and Gwen has left? How will he operate again under the domain of Dennis Cutlery? Where will Billy go next into VMS?" The code published with episode 11.1 appears in this file. HIKE10.VAX The Hitchhiker's Guide To VMS: Episode 10 This file features Episode 10 of Bruce Ellis' famed "Hitchiker's Guide To VMS" series. Excerpted from the August 1991 VAX Professional article, "The Hitchhiker's Guide To VMS: Episode 10," by Bruce Ellis, the article can be found on page 36. In it we ask, "Will Billy continue to date the girl? Does the girl have a name? What progress will Billy make with the lottery? How long does it take to deinstall a page file?" TSTRMS.VAX Using The SDA To Examine A Process Do you ever want to know where a process is during processing? Are you interested in what record it's working on? Or the files it has open, or the keys in use during processing? That information is available to the VAX system manager through the SDA. The code here comes from John Claxton's article, "Using The SDA To Examine A Process," which was published in the August 1991 issue of VAX Professional on page 20. HETERO.VAX Computing In A Heterogeneous Environment This file contains code previously published on page 11 of the August 1991 VAX Professional. Originally written as part of E. Loren Buhle, Jr., Ph.D.'s article, "Computing In A Heterogeneous Environment," the code here presents FORTRAN examples of how to determine the type of machine your code is running on and how to make conversions when integers and floating point numbers are stored differently in machines from different vendors. GLOBAL.VAX Who Is Mapped To This Global Section? Several processes can be mapped to the same global section. When the data in the global sections starts becoming corrupted, how can you determine which process is responsible? In fact, how can you even determine which processes are currently mapped to the global section? This program gives that information, and the article, "Who Is Mapped To This Global Section?" by David Gordon, from the August 1991 issue of VAX Professional, page 15, explains how. Page 2 CODE.VAX MACRO Made Easy: The Introductions This file features code previously published in the August 1991 issue of VAX Professional magazine. Originally published as part of Hunter Goatley's article, "MACRO Made Easy: The Introductions," the code here represents a simple I/O program, dissected to show you step-by-step how to assemble MACRO code. The article can be found on page 25 of the August 1991 VAX Professional. ========> [VAX92A.VMSTPC]AAAREADME.TXT;1 <======== VMSTPC, by Brian Nelson VMSTPC copies tapes to disk resident container files or copies container files to tape, handling I/O so as to produce a format independent copy of a tape. VMSTPC uses AST driven, multibuffer I/O to keep the I/O subsystem busy (and keep tape streaming) so that it typically can copy tape far more quickly than any other technique. Many controls and options exist, so read vmstpc.hlp for more complete information. ========> [VAX92A.WYANT]AAAREADME.TXT;1 <======== This directory contains two papers to be presented at the Spring 1992 DECUS U.S. Symposium - Favorite RSX problems (DA012) RSX "@" for VMS users. Also included is a "Daylight savings time" command procedure, which contains subroutines for date manipulation in the "@" processor. The files contained in this directory are: 2UP.COM;1 Used to convert papers to "2-up". AAAREADME.1ST;1 This file. IND4VMS.MEM;1 2-up text of 'RSX "@" for VMS users.' IND4VMS.RNO;1 Runoff source for 'RSX "@" for VMS users.' IND4VMS.TXT;1 Cover sheet for 'RSX "@" for VMS users.' RSXPROB.MEM;1 2-up text of 'Favorite RSX Problems.' RSXPROB.RNO;1 Runoff source for 'Favorite RSX Problems.' RSXPROB.TXT;1 Cover sheet for 'Favorite RSX Problems.' TIMCHANGE.CMD;1 Time change/time manipulation procedure. From Tom Wyant