GOULD submissions Eric Richards Gould Ocean Systems Division 18901 Euclid Ave. Cleveland, OH 44117 216/486-8300 Ex. 3073 AUTH_ID This directory contains AUTH_ID, a program to allow a non-privileged user the restricted capability to grant and revoke identifiers to other users. This is useful for allowing a project team leader control who on his team can touch what files. Security conscious system managers will note that audit messages are sent to the security operators when anything "drastic" is done with AUTH_ID. AUTOMOUNT This is AUTOMOUNT, a program to emulate the non-existent DCL command, $ MOUNT/NOASSIST/SYSTEM/OVER=ID *. This is the first stage of an eventual system to allow disk compressions via BACKUP/IMAGE to run without operator intervention. Yes, I'm crazy. EYE This directory contains the programs DISKMON, POS, and LOGINWARN. DISKMON runs detached, and notifies of disk space becoming short. POS tells you the status of all Files-11 disks, mounted read/write. The information is: Number of blocks on the disk, the number free, the percentage free, and the totals for all disks on the system. LOGINWARN was never finished -- I think it works -- if you want to play with it, have fun. Its purpose is to warn the user about disk problems at login time. For example, put it in the SYLOGIN.COM file to notify a user as he logs in about the space problems. MISCSUBS This is a directory of quick and dirty subroutines that could make your life easier when you write your new software. They are all Macro source files. MISCUTIL This is a collection of miscellaneous utilities that you may (or may not) find useful. This collection includes: DEFAULT -- Default will set a terminal's temporary characteristics back to its permanent characteristics. Default needs to be installed with LOG_IO. DIRSET -- Dirset will set up logicals and symbols for each node in a directory tree. For example given the directory DISK$USER1:[FOO.BAR.TEST] A logical and a symbol will be created: "TEST" = "DISK$USER1:[FOO.BAR.TEST]" (LNM$PROCESS_TABLE) "TEST" = "SET DEFAULT DISK$USER1:[FOO.BAR.TEST]" One must be VERY careful on how this is used, since directorys with names like MAIL, HELP, PASCAL, etc will create all sorts of problems. FORCEX -- force another process to exit. useful for runaway programs that do control-y trapping, etc. Set up as a foreign command: FORC*EX :== $dev:[dir]FORCEX FORCEX process name FORCEX/ID=pid NOTIFY is a quick and easy way for a non-privileged user to send messages to himself from within a batch process. NOTIFY requires no privileges. Set up as a foreign command: NOTI*FY :== $dev:[dir]NOTIFY NOTIFY "Now proceeding to phase 3 at ''f$time()'" SCRUNCH and SCRUNCHD will remove debugger and traceback information from an image, turning it from a "LINKed" image to a "LINK/NOTRACEed" image. Very useful if you need to install something that you don't have source for (and if you are that brave). SCRUNCHD does some additional checking in the image header before it mungs it all up -- this is the recommended one to use unless you want to de-PCA images or if you use the LINK/DEBUG=filespec form to link in a debugger. SCRUNCHD correctly handles V4.4 shareable images. The command procedure GO.COM will compile and link the images. An object library UTILLIB.OLB is provided with the object files from the last compile of these utilities. GO.COM will use these object files if you do not have FORTRAN or BASIC compilers. SETTERM At our site, we have all of our terminal lines connected to the VAXen via a data switch. Almost all of the terminals connected with the switch are VT100 compatible, so, instead of setting all of the terminals one-at-a-time, we decided to set them via the SYSGEN parameters TTY_DEFCHAR, TTY_BUF, and TTY_DEFCHAR2. There is, however, one small problem with doing that: While all of the characteristics of the terminal lines are set, the TYPE field (i.e. VT100, LA36, etc.) cannot be set by SYSGEN. Because of that "feature," SETTYPE was born. SETTYPE sets all terminals at boottime to VT100 characteristics. It does this all in one shot in kernel mode. I would NOT recommend running it interactively. SETTYPE was fine and dandy until V4.4 came along, and the terminal driver decided that it knew better than SYSGEN when it came to the terminal characteristics. SETTERM was written to work around that particular deficiency -- it reads the SYSGEN parameters, then does $QIOs on each terminal line on the system to set the permanent characteristics. Like SETTYPE, SETTERM should not be run anytime other than at system boot.