TCPware FAQ: FTP

 

When a Unix client uses FTP to put files to my system the file names get changed, some have $’s added to them, why?

The $ is need to differentiate filename from Filename. You can disable Unix mode by defining the logical TCPWARE_FTP_UNIX_STYLE_CASE_INSENSITIVE to be true. You can do this in a user’s login command procedure to disable it for that one user or you can define the logical /SYSTEM to change the behavior for all users. You can also define the logical TCPWARE_FTP_UNIX_STYLE_CASE_INSENSITIVE to accept Unix directory and file specifications but ignore the case of a file.


What can I do to restrict access to my FTP server?

Restricting access to the FTP server requires using a packet filter. The example below is of a filter file that you can use as a template to help set up one that matches your needs. The comments in it describe what each line does. The filter file should be named TCPWARE:FILTER-line-ID.DAT, replacing line-ID with the TCPware line-ID in use on your system. For example: TCPWARE:FILTER-EWA-0.DAT.

The command NETCU SHOW NETWORK lists the lines configured on your system. TCPWARE:STARTNET.COM adds the filter automatically during startup if the filter file has a proper name. You can add the filter manually using the NETCU ADD FILTER command. For example:

$ NETCU SET FILTER EWA-0 TCPWARE:FILTER-EWA-0.DAT

! begin filter-LINEID.dat
!
! permit only IP address on the 192.1.1.0/24 network to FTP to this system
!
! Action proto saddr smask daddr dmask dport
!
permit tcp 192.1.1.0 255.255.255.0 0 0 eq 21
!
! Permit IP address 196.22.19.2 to FTP to this system
!
permit tcp 196.22.19.2 255.255.255.255 0 0 eq 21
!
! permit outgoing (established) FTP connections
!
permit tcp 0 0 0 0 eq 21 established
!
! Deny all other FTP connections
!
deny tcp 0 0 0 0 eq 21
!
! Let all other IP traffic go through
!
permit ip 0 0 0 0
!
! End filter-LINEID

Are there any examples of how to use FTP from a command procedure?

Following is an example of how to use FTP from a command procedure:

$ ! FTP files from this host to the ftp.univ.edu
$ ! anonymous ftp server.
$ !
$ ftp 
  open ftp.univ.edu anonymous users@host.com
  cd "/download"
  put sendfile.txt 
  quit
$ exit

I downloaded a patch from your FTP site and installed it. I get the message "invalid block size" error. What does this mean? How do I install the patch?

The problem was probably caused by the wrong format and attributes being applied to the patch when you unzipped it. Chances are that many, if not most, of the files can produce this error

To determine if this is the problem, verify the format of the saveset file by entering:

$ BACKUP/LIST kitname.A/SAVE

kitname is the name of the patch kit with the .A extension that you extracted.

All the patch kits for TCPware are VMS backup savesets in ZIP format. This is so you can download a patch to any platform (VMS, Windows, UNIX, etc.) and later transfer it to your VMS system.

The zip files are the same zip format as the PC, and although unzipping them using a PC-based program separates the files correctly, the program applies the wrong format and attributes to the files. Only VMS can apply these correctly to a backup saveset file.

You can use either of two methods to correctly download and unzip patch kit files. The first is the recommended method:

  1. FTP the VMS unzip utility from the Process FTP server at ftp://ftp.multinet.process.com/patches/
  2. Set your FTP client to BINARY or IMAGE, then download UNZIP.EXE (for VAX/VMS) or UNZIP_ALPHA.EXE (for Alpha/VMS) to the SYS$COMMON:[SYSEXE] directory.

Then enter the command: MCR UNZIP patchkit.ZIP on a VAX or MCR UNZIP_ALPHA patchkit.ZIP on an Alpha system.

You could change the VMS attributes by entering the following VMS command:

SET FILE/ATTRIBUTES=(LRL=32256,RAT=NONE,RFM=FIX) kitname.A

When a user copies a file to our system with FTP using the anonymous account how can TCPware be configured so the protection on the file is set to world:re?

TCPware's FTP server uses the OpenVMS default protection when creating a file. When an FTP client sends a valid username and password, the FTP server creates a process running under that username to then services the connection. This happens through the normal OpenVMS login process and executes the system-wide login command procedure (defined by the SYS$SYLOGIN logical) and the login command procedure for that user (determined by the LGICMD setting in the system authorization file). You can use the OpenVMS SET PROTECTION/DEFAULT command in the login command procedures to determine what protections are used for newly created files.

For example, if the following command was added to the login command file for the anonymous account any new files created by the anonymous account would have a file protection that enabled world read and execute access:

$ SET FILE/PROT=W:RE/DEFAULT

How do you disable the GUI FTP time-out function?

TCPware does check for inactive FTP control connections and by default will close them after 10 minutes of inactivity. Use the logical TCPWARE_FTP_IDLE_TIMEOUT to change this behavior. The logical can be set to a delta time to change how long the server waits before timing-out a connection, or if set to 0, the idle time-out is disabled. See the Managing FTP section of the TCPware Management Guide for more information on the TCPWARE_FTP_IDLE_TIMEOUT logical.


Why does the TCPware FTP client not accept my password for my UNIX server?

Put the password in quotes if it is upper or mixed case. TCPware’s FTP client will lowercase all usernames and passwords unless put in double quotes.