ROCHESTER INSTITUTE OF TECHNOLOGY INFORMATION SYSTEMS AND COMPUTING TECHNICAL SUPPORT Descriptive Title: A Secure method to copy files over DECnet Usage Restrictions: None. Calling Name: NETCOPY Project Number: Author and Affiliation: Andrew W. Potter Rochester Institute of Technology Installed at RIT by: Andrew W. Potter Language: VAX/VMS Extended FORTRAN-77 Computer: Digital VAX/VMS Program Availability: This Utility is available on VAXA, VAXB, VAXC, VAXD, and VAXV. Contact: Internal: User Computing Center, Rochester Institute of Technology External: Academic Computing Infor- mation Systems and Computing, Rochester Institute of Technology. One Lomb Memorial Drive Rochester NY 14623 Date 15 December, 1983 Page 2 FUNCTIONAL ABSTRACT NETCOPY: A secure method of moving files over DECnet NETCOPY is a new copy utility that allows users to perform DEC- net file access without having to include the password in the network access string. NETCOPY is designed to use a syntax similar to COPY. DECnet nodes are specified by one of the following forms: NODE:: { access string is built from the local } { (current) username and prompted password. } NODE"username":: { Access string is built from supplied } { username and prompted password. } NETCOPY will prompt for the required passwords in the format shown below: NODE:: Password: At RIT, "NODE" can be one of: VAXA, VAXB, VAXC, VAXD, or VAXV. The password will not be shown on the screen to ensure account security. (NOECHO input mode) Example: $ NETCOPY VAXB"abc1234"::ABOUT.RIT LOCALFILE.RIT NETCOPY VAXB"abc1234"::ABOUT.RIT LOCALFILE.RIT VAXB:: Password: { user enters password for account } { abc1234 on node VAXB:: } For more information on NETCOPY type HELP NETCOPY. COPY is fully explained in the Digital Command Language Users Guide. Page 3 USER INSTRUCTIONS NETCOPY commands take one of the following forms: Brackets "[]" indicate optional fields. $ NETCOPY [/SUB] NODE["username"]::FILE[,FILE...] LOCALFILE $ NETCOPY [/SUB] FILE[,FILE...] NODE["username"]::FILE $ NETCOPY [/SUB] NODE1["username"]::FILE1 NODE2["username"]::FILE2 NETCOPY will prompt for the required passwords. To maintain password security the passwords will not print (echo) on the terminal as the user enters them. The quoted username is optional. If omitted, NETCOPY will insert the username of the users account on the local system. A list of filenames may be specified for the input file spec, however only the first file specification may contain a node specification. OPTIONAL QUALIFIERS: Copy qualifiers: NETCOPY allows file wildcarding as well as the following COPY qualifiers: /VOLUME, /CONTIGUOUS, /REPLACE, /PROTECTION, /LOG, /TRUNCATE, and /OVERLAY. These qualifiers will be applied to the output file specification regardless of where they appear in the NETCOPY command line. See HELP COPY or the Digital Command Language Users Guide for further information on COPY. The "/SUBPROCESS" qualifier: This qualifier will cause the network copy operation to be performed as a spawned (background) process. This is useful for lengthy copy operations. NETCOPY will return the process identification number of the spawned process and return the user to DCL. NOTE The user should be aware that the copy operation will be happening concurrently with the command session and that logging off before the network copy is complete will abort the subprocess. (The DCL command SHOW PROCESS/SUB will show if the copying subprocess is still active.) Page 4 EXAMPLES OF NETCOPY USE The examples below demonstrate a user running NETCOPY from an account with a username of ABC1234 on DECnet node VAXA::. $ NETCOPY/SUB VAXB::FILE.DAT MYFILE.DAT NETCOPY/SUB VAXB::FILE.DAT MYFILE.DAT Password : {password entered for the VAXB:: ABC1234] The command above is the same as: $ COPY VAXB"ABC1234 secret"::FILE.DAT MYFILE.DAT $ NETCOPY/SUB VAXB"CDE5679"::HISFILE.DAT VAXC::[.SUBDIR]MYFILE.DAT NETCOPY/SUB VAXB"CDE5679"::HISFILE.DAT VAXC::[.SUBDIR]MYFILE.DAT VAXB:: password : {user enters the password for VAXB:: CDE5678} VAXC:: password : {user enters the password for VAXC:: ABC1234} [0041003B] {NETCOPY returns process identification. The qualifier "/SUB" directs NETCOPY to spawn the copy operation into the background. $ NETCOPY VAXC::*.* */LOG/PROTECTION=(W:RE) NETCOPY VAXC::*.* */LOG/PROTECTION=(W:RE) VAXC:: Password : {user enters password for VAXC:: ABC1234} %COPY-S-COPIED, _VAXC"ABC1234 password"::USER:[ABC1234]LOGIN.COM;2 copied to USER:[ABC1234]LOGIN.COM;1 (45 records) %COPY-S-COPIED, _VAXC"ABC1234 password"::USER:[ABC1234]LAB1.FOR;1 copied to USER:[ABC1234]LAB1.FOR;1 (105 records) %COPY-S-COPIED, _VAXC"ABC1234 password"::USER:[ABC1234]LAB1.DAT;1 copied to USER:[ABC1234]LAB1.DAT;1 (14 records) This example copies all the files in VAXC::[ABC1234] to [ABC1234] on the current system logging each file as it is copied and giving them a protection allowing WORLD read and execute access.