+-+-+-+ Beginning of part 22 +-+-+-+ X40$:`009POPR`009#`094M`009`009`009; restore registers X X`009CVTLF`009R2,R2`009`009`009`009;Float the count X; 1 min. queue ave. X`009MULF3`009R2,F11,R0`009`009`009;La=OldLa*F+NewLa*(1-F) X`009MULF3`009Q1,F1,R1 X`009ADDF3`009R0,R1,Q1 X; 5 min. queue ave. X`009MULF3`009R2,F12,R0 X`009MULF3`009Q5,F2,R1 X`009ADDF3`009R0,R1,Q5 X; 15 min. queue ave. X`009MULF3`009R2,F13,R0 X`009MULF3`009Q15,F3,R1 X`009ADDF3`009R0,R1,Q15 X`009RSB`009`009`009`009`009;Return to clock dispatcher X X X`012 X`009.SBTTL`009END OF DRIVER X;+ --- X; X; END OF DRIVER X; X;- --- XLAV_END:`009`009`009`009`009;LET DPTAB KNOW THE DRIVER SIZE X; X`009.END $ GOSUB UNPACK_FILE $ FILE_IS = "LAVDRIVER.OPT" $ CHECKSUM_IS = 0 $ COPY SYS$INPUT VMS_SHARE_DUMMY.DUMMY X $ GOSUB UNPACK_FILE $ FILE_IS = "LOAD_AVERAGE.FOR" $ CHECKSUM_IS = 192695710 $ COPY SYS$INPUT VMS_SHARE_DUMMY.DUMMY X`009program`009`009load_average X X`009parameter`009loaddevice = 'LAV0:' X`009real`009`009load1,`009load5,`009load15 X`009character*32`009temp X X`009open(unit=10, X`0091`009file=loaddevice, X`0092`009type='NEW', X`0093`009recordsize=36, X`0094`009err=101) X`009read(10,103,err=101) load1, load5, load15 X`009close(unit=10) X`009write(temp,102) `009'Load: ' X`0091`009`009`009,load1 X`0092 `009`009`009,load5 X`0093 `009`009`009,load15 X`009type *,temp X101`009continue X102`009format(A,3F5.2) X103`009format(3A4) X`009end $ GOSUB UNPACK_FILE $ FILE_IS = "LOAD_LAV.COM" $ CHECKSUM_IS = 152374843 $ COPY SYS$INPUT VMS_SHARE_DUMMY.DUMMY X$ mcr sysgen XLOAD LAVDRIVER XCONNECT LAV0 /NOADA/DRIVER=LAVDRIVER Xexit X$exit $ GOSUB UNPACK_FILE $ FILE_IS = "MAINTCLD.CLD" $ CHECKSUM_IS = 827480040 $ COPY SYS$INPUT VMS_SHARE_DUMMY.DUMMY XModule SHR_CLD X `032 XDefine Verb HELP X Routine Shr_Help X Parameter P1, Label=HELP_LINE, Value(Type=$Rest_of_line) X `032 XDefine Verb CLEAR X Routine Shr_Clear X`009Qualifier USER, Value X`009Qualifier TERMINAL, Value X`009Qualifier HOST, Value X`009Qualifier ROUTER_HOST X`009Qualifier NETWORK, Value X`009Qualifier LOCAL_HOST X`009Qualifier ORGANIZATION X`009Qualifier ALL X `032 XDefine Verb ADD X`009Routine Shr_Add X`009Qualifier USER, Value X`009Qualifier UAF X`009Qualifier PERSONALNAME, Value(Required) X`009Qualifier TERMINAL, Value(Required) X`009Qualifier LOCATION, Value(Required) X`009Qualifier TTTYPE, Value(Required) X`009Qualifier HOST, Value(Required) X`009Qualifier ROUTER_HOST, Value(Required) X`009Qualifier NETWORK, Value(Required) X`009Qualifier TYPE, Value(Default=D), Default X`009Qualifier LINK, Value X`009Qualifier ROUTE, Value X`009Qualifier LOCAL_HOST, Value(Required) X`009Qualifier ORGANIZATION, Value(Required) X XDefine Verb SHOW X`009Routine Shr_Show X`009Qualifier USER, Value X`009Qualifier TERMINAL, Value X`009Qualifier HOST, Value X`009Qualifier ROUTER_HOST, Value X`009Qualifier NETWORK, Value X`009Qualifier LOCAL_HOST X`009Qualifier ORGANIZATION X`009Qualifier ALL X`009Qualifier STATISTICS X XDefine Verb EXIT X`009Routine Shr_Exit $ GOSUB UNPACK_FILE $ FILE_IS = "REGISTER.COM" $ CHECKSUM_IS = 153056923 $ COPY SYS$INPUT VMS_SHARE_DUMMY.DUMMY X$! REGISTER.COM - Register a personal name in the Finger database. X$! X$! Author: `009Rand Hall X$! Date:`00922-Jul-87 X$! X$!Abstract - X$! X$! Register adds a username/personal name pair to the Finger Common X$! Database. The FCD _will_ store a pair more than once but will only X$! find the first when it goes looking for it to display /PERSONAL. X$! Here we prevent people from adding their username twice. The file X$! add_users_to_db.com can be executed to rebuild the database it it should X$! need to be. The FCD has a username limit, it can be changed in X$! Fingercom.for. X$! X$! Possible mods: have an UNREGISTER procedure search add_users_to_db.com, X$! delete the user's record, and execute the add_users_to_Db.com file. X$! X$ set noon X$ type sys$input X XRegister V1.0b X XRegister allows you to register a 'personal name' for your Xusername into the Finger system. It can only be run once X$ inquire/nopunct yes "per username. Would you like to continue [y/n] ? " X$ if .not.yes then exit X$ username:='f$getjpi("0","USERNAME") X$ assign/nolog/user nl: sys$output X$ assign/nolog/user nl: sys$error X$ search/out=nl: sys$utilroot:[finger]add_users_to_db.com 'username'`032 X$ if $STATUS .nes. "%X08D78053" then goto sorry_chum`009!search found it X$ yes:="" X$ on error then goto cleanup X$ on control_y then goto cleanup X$ write sys$output "What would you like your Finger Personal Name" X$ inquire/nopunct personal_name "to be [<20 characters] ? " X$ inquire/nopunct yes "Are you sure you want ''personal_name' [y/n] ? " X$ if .not.yes then exit X$ open/write tmp sys$scratch:register_tmp.com X$ write tmp "$assign/nolog sys$utilroot:[finger] finger$directory" X$ write tmp "$Run`009Finger$Directory:FingMaint" X$ write tmp "add/user=''username'/person=""''personal_name'""" X$ write tmp "exit" X$ close tmp X$ @sys$scratch:register_tmp X$ deletex/nolog sys$scratch:register_tmp.com.* X$ open/append tmp finger$directory:add_users_to_db.com X$ write tmp "add/user=''username'/person=""''personal_name'""" X$ close tmp X$ write sys$output "%REGISTER-S-ADDED, ''username' is now registered" X$ exit X$ cleanup: X$ close tmp X$ write sys$output "%REGISTER-F-ABORT, aborted with error or `094Y" X$ exit X$ sorry_chum: V$ write sys$output "%REGISTER-I-ALREADY, ''username' is already registered"`0 X32 X$ exit $ GOSUB UNPACK_FILE $ FILE_IS = "START_FINGER.COM" $ CHECKSUM_IS = 661524370 $ COPY SYS$INPUT VMS_SHARE_DUMMY.DUMMY X$!..StartFing.Com`009`009`009Start finger stuff at BOOT time X$!..`009`009`009`009`009R. Garland / C.U.Chemistry / 28-Mar-1983 X$!.. VMS V5.1 version V$ Write Sys$Output`009"Edit this file before using `007`007`007"`009!<-- dele Xte X$ Exit`009`009`009`009`009`009`009`009!<-- delete X$ !`009Check every line with "<-- Edit" on it X$ Write`009Sys$Output`009"[Installing Finger]" X$! X$! Note: you must edit this file - Change the logical name following to X$!`009point to the place where you keep programs like this. Change X$!`009the terminal locations, and host routing appropriately. X$ Define`009 Finger$Directory`009*** somewhere ***`009!<-- edit X$! X$! X$!`009PARAMETERS: X$!`009`009P1`009:= "REBUILD" `009reconstruct FINGERSHR database X$! X$! Note: Finger needs SYSPRV (so it can read SYSUAF.DAT and users' X$!`009MAIL.MAI files), WORLD (so it can do GETJPI on all processes), X$!`009CMKRNL (so it can get the terminal idle times), and OPER (so X$!`009it can access TSM). X$! X$!`009FINGERSHR is the shared databse for usernames, terminal locations X$!`009and remote host routing. X$! X$!`009NOTE: (this one is wierd) FINGERSHR must first be unprotected X$!`009(WORLD is given write privilege) then installed`009to work properly!! X$! X$ If`009F$Process().eqs."STARTUP"`009Then Goto Skp0 X$ ! Run`009Finger$Directory:Idle-Mon`009`009`009`009!<-- edit X$ Goto`009Skp1 X$ Skp0: X$ Run`009Sys$System:Install XFinger$Directory:Finger`009/Delete XFinger$Directory:FingerShr /Delete X$ Skp1: X$ Set`009Prot=(W:RWE)`009Finger$Directory:FingerShr.Exe X$ Run`009Sys$System:Install VFinger$Directory:Finger`009/Open /Shared /Header /Priv=(Sysprv,World,Cmkrnl,O Xper) XFinger$Directory:FingerShr /Open /Shared /Header /Write /Priv=(Sysprv,Sysgbl) X$! Set`009Prot=(W:RE)`009Finger$Directory:FingerShr.Exe X$! X$! Note: FINGERSHR must be defined so the image activator can find X$!`009the shared section containing the finger database. X$! X$ Define/System/Exec`009FingerShr`009'F$Log("Finger$Directory")'FingerShr X$! X$! Note: the finger database does not need to be rebuilt each time you Boot. X$!`009However, since you may have added names to the UAF and forgotten X$!`009to add them to the finger database, you may want to rebuild. X$! X$! Format of entries: X$!`009Users: ADD /USER=BLOW /PERSONALNAME="Blow, Joe" X$!`009`009or X$!`009`009ADD /USER /UAF X$!`009Hosts:`009ADD /HOST=FRODO /TYPE=D X$!`009`009TYPES: `009L=local X$!`009`009`009D=DECnet X$!`009`009`009J=JNET (VMS or Unix host) X$!`009`009`009I=JNET (IBM host) X$!`009`009`009T=TCP/IP (TWG) X$!`009`009`009X=LAT (DECservers via TSM) X$!`009`009/LINK is used for the actual host name when /HOST X$!`009`009is a pseudonym. /ROUTE is for poor-man's-routing or X$!`009`009internet gateway-ing. X$!`009Other: X$!`009`009/Network - gives "proper" names to network i.e. BITnet, ARPAnet X$!`009`009/Local_Host - your node name. If not given, DECnet name is used X$!`009`009/Oganization - text string (for header) (optional). X$!`009`009/Router - Host name and net type to send requests for unknown X$!`009`009`009hosts (optional). X$!`009 Note: you do not need to make an entry for DECnet hosts X$!`009`009with no pseudonyms as these ar found by default. X$! X$ If`009P1`009.eqs. ""`009Then GoTo NoRebuild X$ If`009P1`009.nes.`009"REBUILD" Then GoTo NoRebuild X$ Run`009Finger$Directory:FingMaint XClear`009/All XAdd`009/Local_Host="your host name"`009`009`009!<-- Edit XAdd`009/Organization="your organization"`009`009!<-- Edit XAdd`009/Network="FOOnet"`009/Type=D`009`009`009!<-- Edit XAdd`009/Network="BITnet"`009/Type=J`009`009`009!<-- Edit XAdd`009/Router_Host=FRODO`009/Type=D`009`009`009!<-- Edit XAdd`009/User`009/UAF`009! Get names from the authorization file XAdd`009/Term=OPA0: /Location="VAX room"`009/TTType="LA120"`009!<-- Edit XAdd`009/Term=TTA0: /Location="Joe's office"`009/TTType="VT100"`009!<-- Edit XAdd`009/Term=TTA1:`009`009`009`009`009`009!<-- Edit XAdd`009/Term=TTA2:`009`009`009`009`009`009!<-- Edit XAdd`009/Term=TTA3:`009`009`009`009`009`009!<-- Edit X`009`009etc.`009`009`009`009`009`009!<-- Edit X X`009`009more terminal lines`009`009`009`009!<-- Edit X XAdd`009/Host=name`009/Type=L`009`009`009! Local Host`009!<-- Edit XAdd`009/Host=Name1`009/Type=D`009`009`009`009`009!<-- Edit XAdd`009/Host=name2`009/Type=J`009`009`009`009`009!<-- Edit X`009`009etc.`009`009`009`009`009`009!<-- Edit X X`009`009more host names`009`009`009`009`009!<-- Edit X XExit X$ NoRebuild: X$! $ GOSUB UNPACK_FILE $ FILE_IS = "START_FINGER_SAMPLE.COM" $ CHECKSUM_IS = 1295472916 $ COPY SYS$INPUT VMS_SHARE_DUMMY.DUMMY X$!..StartFing.Com`009`009`009Start finger stuff at BOOT time X$!..`009`009`009`009`009R. Garland / C.U.Chemistry / 28-Mar-1983 X$!.. VMS V5.1 version X$ Write`009Sys$Output`009"[Installing Finger]" X$! X$ Define`009 Finger$Directory`009sys$tools X$! X$! X$!`009PARAMETERS: X$!`009`009P1`009:= "REBUILD" `009reconstruct FINGERSHR database X$! X$! Note: Finger needs SYSPRV (so it can read SYSUAF.DAT and users' X$!`009MAIL.MAI files), WORLD (so it can do GETJPI on all processes), X$!`009CMKRNL (so it can get the terminal idle times), and OPER (so X$!`009it can access TSM). X$! X$!`009FINGERSHR is the shared databse for usernames, terminal locations X$!`009and remote host routing. X$! X$!`009NOTE: (this one is wierd) FINGERSHR must first be unprotected X$!`009(WORLD is given write privilege) then installed`009to work properly!! X$! X$ If`009F$Process().nes."STARTUP"`009Then Goto Skp0 X$ Run`009Finger$Directory:Idle-Mon X$ Goto`009Skp1 X$ Skp0: X$ Run`009Sys$System:Install XFinger$Directory:Finger`009/Delete XFinger$Directory:FingerShr /Delete X$ Skp1: X$ Set`009Prot=(W:RWE)`009Finger$Directory:FingerShr.Exe X$ Run`009Sys$System:Install VFinger$Directory:Finger`009/Open /Shared /Header /Priv=(Sysprv,World,Cmkrnl,O Xper) XFinger$Directory:FingerShr /Open /Shared /Header /Write /Priv=(Sysprv,Sysgbl) X$! Set`009Prot=(W:RE)`009Finger$Directory:FingerShr.Exe X$! X$! Note: FINGERSHR must be defined so the image activator can find X$!`009the shared section containing the finger database. X$! X$ Define/System/Exec`009FingerShr`009$1$dua0:[systools]FingerShr X$! X$! Note: the finger database does not need to be rebuilt each time you Boot. X$!`009However, since you may have added names to the UAF and forgotten X$!`009to add them to the finger database, you may want to rebuild. X$! X$! Format of entries: X$!`009Users: ADD /USER=BLOW /PERSONALNAME="Blow, Joe" X$!`009`009or X$!`009`009ADD /USER /UAF X$!`009Hosts:`009ADD /HOST=FRODO /TYPE=D X$!`009`009TYPES: `009L=local X$!`009`009`009D=DECnet X$!`009`009`009J=JNET (VMS or Unix host) X$!`009`009`009I=JNET (IBM host) X$!`009`009`009T=TCP/IP (TWG) X$!`009`009`009X=LAT (DECservers via TSM) X$!`009`009/LINK is used for the actual host name when /HOST X$!`009`009is a pseudonym. /ROUTE is for poor-man's-routing or X$!`009`009internet gateway-ing. X$!`009Other: X$!`009`009/Network - gives "proper" names to network i.e. BITnet, ARPAnet X$!`009`009/Local_Host - your node name. If not given, DECnet name is used X$!`009`009/Oganization - text string (for header) (optional). X$!`009`009/Router - Host name and net type to send requests for unknown X$!`009`009`009hosts (optional). X$!`009 Note: you do not need to make an entry for DECnet hosts X$!`009`009with no pseudonyms as these are found by default. X$! X$ If`009P1`009.eqs. ""`009Then GoTo NoRebuild X$ If`009P1`009.nes.`009"REBUILD" Then GoTo NoRebuild X$ Run`009Finger$Directory:FingMaint XClear`009/All XAdd`009/Organization="St. Peter's College - Academic Computer Center" XAdd`009/Network="BITNET"`009/Type=J XAdd`009/Router_host=SPCVXA XAdd`009/User`009/UAF`009! Get names from the authorization file XAdd`009/User=HELP /Personal="Please use /HELP for help" XAdd`009/User=MBA_MIS /Personal="MBA/MIS Program" XAdd`009/Term=OPA0: /Location="Machine room"`009`009/TTType="LA120" XAdd`009/Term=TXA0: /Location="Unused port 00"`009/TTType="Unknown" XAdd`009/Term=TXA1: /Location="Unused port 01"`009/TTType="Unknown" XAdd`009/Term=TXA2: /Location="Unused port 02"`009/TTType="Unknown" XAdd`009/Term=TXA3: /Location="Unused port 03"`009/TTType="Unknown" XAdd`009/Term=TXA4: /Location="Unused port 04"`009/TTType="Unknown" XAdd`009/Term=TXA5: /Location="Unused port 05"`009/TTType="Unknown" XAdd`009/Term=TXA6: /Location="Unused port 06"`009/TTType="Unknown" XAdd`009/Term=TXA7: /Location="Unused port 07"`009/TTType="Unknown" XAdd`009/Term=TXB0: /Location="Unused port 08"`009/TTType="Unknown" XAdd`009/Term=TXB1: /Location="Unused port 09"`009/TTType="Unknown" XAdd`009/Term=TXB2: /Location="Unused port 10"`009/TTType="Unknown" XAdd`009/Term=TXB3: /Location="Unused port 11"`009/TTType="Unknown" XAdd`009/Term=TXB4: /Location="Unused port 12"`009/TTType="Unknown" XAdd`009/Term=TXB5: /Location="Unused port 13"`009/TTType="Unknown" XAdd`009/Term=TXB6: /Location="Unused port 14"`009/TTType="Unknown" XAdd`009/Term=TXB7: /Location="Unused port 15"`009/TTType="Unknown" XAdd`009/Term=TXC0: /Location="Unused port 16"`009/TTType="Unknown" XAdd`009/Term=TXC1: /Location="Unused port 17"`009/TTType="Unknown" XAdd`009/Term=TXC2: /Location="Unused port 18"`009/TTType="Unknown" XAdd`009/Term=TXC3: /Location="Unused port 19"`009/TTType="Unknown" XAdd`009/Term=TXC4: /Location="Unused port 20"`009/TTType="Unknown" XAdd`009/Term=TXC5: /Location="Unused port 21"`009/TTType="Unknown" XAdd`009/Term=TXC6: /Location="Unused port 22"`009/TTType="Unknown" XAdd`009/Term=TXC7: /Location="Unused port 23"`009/TTType="Unknown" XAdd`009/Host=SPC11B`009/Type=D XAdd`009/Host=SPC11C`009/Type=D XAdd`009/Host=SPC11D`009/Type=D XAdd`009/Host=SPC11E`009/Type=D XAdd`009/Host=SPC11Y`009/Type=D XAdd`009/Host=SPC11Z`009/Type=D XAdd`009/Host=SPCVXA`009/Type=D XAdd`009/Host=SPCVXB`009/Type=D XAdd`009/Host=SPCVXC`009/Type=D XAdd`009/Host=SPCVXD`009/Type=D XAdd`009/Host=LT2001`009/Type=X XAdd`009/Host=LT2002`009/Type=X XAdd`009/Host=LT2003`009/Type=X XAdd`009/Host=LT2004`009/Type=X XAdd`009/Host=LT2005`009/Type=X -+-+-+-+-+ End of part 22 +-+-+-+-+-