Sunteți pe pagina 1din 120

WS_FTP Pro

User’s Guide
Software Version 8.0

Ipswitch, Inc.
Ipswitch, Inc. Phone: 781-676-5700
10 Maguire Road Suite 220 Fax: 781-676-5710
Lexington, MA 02421-3127 Web: http://www.ipswitch.com

The information in this document is subject to change without notice and should not be construed as a
commitment by Ipswitch, Inc. While every effort has been made to assure the accuracy of the informa-
tion contained herein, Ipswitch, Inc. assumes no responsibility for errors or omissions.

Ipswitch, Inc. assumes no liability for damages resulting from the use of the information contained in
this document.

The software described in this document is furnished under a license and may be used or copied only in
accordance with the terms of that license.

Copyright © 2003 by Ipswitch, Inc. All rights reserved. WS_FTP, the WS_FTP logos, Ipswitch, and
the Ipswitch logo are trademarks of Ipswitch, Inc. Other products or company names are or may be
trademarks or registered trademarks and are the property of their respective companies.

No part of this publication may be reproduced, photocopied, stored on a retrieval system, or transferred
without the expressed prior written consent of Ipswitch, Inc.

Printing History
May 1996 First Edition
December 1996 Second Edition
July 1997 Third Edition
February 1998 Fourth Edition
October 1998 Fifth Edition
May 2000 Sixth Edition
June 2001 Seventh Edition
March 2002 Eighth Edition
August 2002 Ninth Edition
May 2003 Tenth Edition
Table of Contents
Chapter 1: Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Why FTP? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
How FTP/SFTP Works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
FTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
SFTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
New in WS_FTP Version 8.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
System Requirements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Installing WS_FTP Pro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Logging Onto an FTP Site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Interfaces for Windows 98, 2000, ME, XP
and NT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
The Classic Interface of WS_FTP Pro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
The Explorer Interface of WS_FTP Pro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Browser Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Other Ipswitch WS_FTP Products . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
WS_FTP Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
WS_FTP Pro Development Kit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Getting Updates and Giving Feedback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Accessibility. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

Chapter 2: Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11


Making your First Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Transferring a File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
WS_FTP Pro Toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Anonymous Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Assistance Center . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Using the Help System. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

Chapter 3: Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Using Site Profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Connect to Remote Host Dialog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Host Info Dialog of Site Options. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Organizing Sites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Automatic Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Connect to Default Site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Open with last local and remote folders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Alternate Connecting Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Sites Menu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Recent Sites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Quick Connect. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Address Bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

Contents iii
WS_FTP Pro
Internet Connection Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Passive Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

Chapter 4: Transferring Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25


Ways to Transfer Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Using the Transfer Arrows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Drag and Drop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Copy and Paste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Batch Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Using the Transfer Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Upload Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Hotdrop Folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Transfer Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Automatic Retry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Resuming a Failed Transfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Multipart Transfers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

Chapter 5: Managing Files and Folders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31


Viewing and Navigating . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Thumbnails View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Working with Files and Folders. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Click and Drag for Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Active Edit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Changing the File Permissions for UNIX Sites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Background Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

Chapter 6: Explorer Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39


Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Using the Explorer Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Configuring a Site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Making a Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Transferring Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

Chapter 7: WS_FTP Transfer Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41


What is the Transfer Manager? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Transfer Manager Dialogs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Transfer Manager Transfers Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Transfer Manager History Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Request Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Log Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Operation After Transfers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

Chapter 8: Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
SSL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

iv Contents
WS_FTP Pro
How to make an SSL connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Client Certificate Verification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Generating a Certificate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Importing a Certificate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Selecting a Certificate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Trusted Authorities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Adding a Certificate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Exporting a Certificate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Removing a Certificate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Non-Trusted Certificate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
SSH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
How to make an SSH connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
SSL vs. SSH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Using a NAT Firewall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
To configure SSL through a NAT Firewall: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

Chapter 9: Synchronizing Files and Folders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55


Using the Synchronize Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Synchronize Dialog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Using a Control File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Exclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Exclusion Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Using the Synchronize Utility from the Command Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

Chapter 10: The Find Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63


Using the Find Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Using the Search Results. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Finding a File When You Are Not Sure of Its Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Finding a File Modified During a Specific Time Period . . . . . . . . . . . . . . . . . . . . . . . . . 66
Finding a File in a Particular Folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Finding a File Smaller Than a Certain Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

Chapter 11: Scripting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69


Using Scripting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Writing and Debugging Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Executing Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Executing a Script from the Command Prompt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Running a Script from the Scripting Utility. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

Chapter 12: Scheduler. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73


Using the Scheduler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

Contents v
WS_FTP Pro
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Adding a Script to the Scheduler. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Updating a Web Site on a Nightly Basis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

Chapter 13: Using Firewalls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77


Multiple Firewalls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Firewall Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Configuring a Firewall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Using a Configured Firewall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

Chapter 14: Using the Command Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81


Basic Command Line Syntax. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Site Information. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Transfer Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Transfer Destination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
File Transfer Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Uploading Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Downloading Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Renaming Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Transferring multiple files from the same location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Converting File Names to Lower Case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
File Transfer Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Transferring Files and Folders with Spaces in the Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Enclosing the Command Line in Quotes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Using the MS-DOS Name. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Using a Batch File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Multiple Folders or Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Pre-scheduled Transfers (“Automated Transfers”) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Extras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

Appendix A: FireScript Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89


What is a FireScript? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
FireScript Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
The fwsc Section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
The Comment Section. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
The Script Section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
The Connection Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
The FireScript Language . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
FireScript Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
String Expansion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Function Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
FireScript Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Switch Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

vi Contents
WS_FTP Pro
Case Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
Examples of Case Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Continue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Jumps and Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Return. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Autodetect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
SSL Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
FireScript Key Words . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
FireScript reserved words . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
FireScript statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
FireScript intrinsic functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
FireScript intrinsic variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

Appendix B: Textual Error Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105


“Blocking call canceled” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
“Connection refused” or “Connection closed by remote” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
“Disk quota exceeded”. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
“File too large to download” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
“Logon failure; Quitting.” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
“MDTM” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
“User access denied” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107

Contents vii
WS_FTP Pro
viii Contents
WS_FTP Pro
Chapter 1: Introduction
This chapter offers an introduction to WS_FTP Pro, a brief
description of File Transfer Protocols, system requirements, the
installation procedure, information about software updates, and
instructions for giving feedback to Ipswitch, Inc.

Why FTP?
A vast store of software applications, games, images, and other types
Using This Book
of files are available on FTP and SFTP sites all over the world. A site
The WS_FTP User’s Guide
is a resource you should is a computer system (“host”) that uses an Internet protocol called
use to familiarize yourself
with the different features
FTP (File Transfer Protocol) or SFTP (Secure File Transfer Protocol.)
of WS_FTP Version 8.0. FTP and SFTP offers fast and accurate transfers of large files or
collections of files between computers on the Internet.
Many Web sites on the World Wide Web (which is based on another
Internet protocol called HTTP) also provide links to files you can
download -- that is, copy to your PC. Especially for large files,
WS_FTP Pro will speed up the time it takes to copy such files to your
PC. For more information, see “Browser Integration” on page 6.
WS_FTP Pro also allows you to upload files -- that is, copy files from
your PC to other computers. For example, you would upload files if
you need to place your Web pages on a computer system designated
by your ISP (Internet Service Provider), or if you want to store a
picture of something you want to sell through an online auction site.

How FTP/SFTP Works


FTP/SFTP uses the client–server model: one computer (the FTP/SFTP
Host) runs a server program “serving up” information to other
computers. The other computers run client programs requesting
information and receiving replies from the server.

Introduction 1
WS_FTP Pro
FTP
WS_FTP Pro turns your PC into a client, allowing it to communicate
with virtually all types of FTP sites. When your PC is connected to the
Internet (via a modem or local area network), WS_FTP Pro can
connect to any system that has a valid Internet Address and is running
an FTP server program. Once connected to an FTP site, you can copy
files to and from your local PC or another FTP site.
SFTP
SFTP
You can find more SFTP is a file transfer protocol that runs over a secure SSH (Secure
information about SFTP in
“Chapter 8: Security” on
Shell) client like WS_FTP Pro. It works a lot like FTP, except that all
page 45 communications and transfers between the client and server are done
over a single secure connection.

New in WS_FTP Version 8.0


• Thumbnails browsing option.
• Active Edit system.
• Use of both implicit and explicit SSL.
• Auto-connect to remote sites on application start-up
• Hotdrop shortcuts to remote directories.
• SSL/NAT feature for specifying external IP address and port
range for PORT commands.
• Support for ASCII transfers via SFTP.
• SOCKS4 and SOCKS5 Proxy support.

System Requirements
WS_FTP Pro requires the following system resources:
• An Intel Pentium processor
• Windows 98, 2000, ME, NT or XP
• Internet Explorer 4.02 or newer (does not have to be your default
browser)

2 User’s Guide
WS_FTP Pro
Installing WS_FTP Pro
The installation of WS_FTP Pro is the same for new users, those who
If you are upgrading from a
previous version of are upgrading from a previous version of WS_FTP Pro, and those who
WS_FTP Pro, or replacing are replacing an evaluation version with a purchased version.
an evaluation version, be
sure to install the
purchased version in the
To install WS_FTP Pro from a downloaded file:
same location as your
previous or evaluation 1 Double-click the file you downloaded. (wsftppec.exe)
version.
2 Follow the directions on your screen.
To install WS_FTP Pro from a CD-ROM:
You can install both the 1 If you already have a previous version of WS_FTP Pro on your
Classic and Explorer
interfaces and use them system, make sure you are not running the application (either
interchangeably. Classic or Explorer).
The two interfaces share
the FTP site 2 Insert the WS_FTP Pro CD-ROM into a CD-ROM drive.
configurations you create
in either interface.
3 If the CD-ROM does not automatically display a “Welcome”
screen, click the Start button and select Run.
4 Enter the CD-ROM drive letter followed by autorun. For
example: d:autorun
5 Follow the instructions on your screen.
Please refer to the file named whatsnew.txt or relnotes.txt for
information regarding enhancements or changes that may have been
made to the software since this manual was printed.

Logging Onto an FTP Site


The FTP process begins when a connection is made between an FTP
client and an FTP site. After establishing communication, the client
“logs on” with a user ID and password. The user ID and password
identify you to the site.

Introduction 3
WS_FTP Pro
Most public FTP sites are set up with an “Anonymous” account: when
you connect to one of these FTP sites, you need only identify yourself
as “Anonymous” and use an e–mail address as a password. Normally,
when you log on anonymously, you see a public folder (usually
named something like /pub or /apps) containing the information and
software that can be downloaded to your PC. (Access to other folders
on the site is usually restricted.)

On anonymous FTP sites, look for files called readme, readme.txt,


index, or 00index. Many sites use a file like this to provide a catalog of
the information available on the site as well as other information
about the site, such as a mission statement or operating hours.
In addition, an FTP site administrator can give certain users
“accounts” with special permissions. For example, a user with an
account may be able to upload, download, delete, and edit files: while
an “anonymous” user can usually only download files. To log on to a
site on which you have an account, you will need to enter the Host
Name, User ID, and Password that the site administrator has assigned
to your account.

Interfaces for Windows 98, 2000, ME, XP


and NT
WS_FTP Pro provides two user interfaces: the Classic user interface,
which runs as a standard Windows application, and the Explorer
interface, which has the same look and feel as Windows Explorer.

4 User’s Guide
WS_FTP Pro
The Classic Interface of WS_FTP Pro
The Classic interface is a standard Windows application that looks
similar to a two-paned window. When your PC (the “Local System”)
connects to an FTP server (the “Remote System”), the WS_FTP Pro
Classic interface displays a window with your PC’s files and folders
on the left and the FTP site’s files and folders on the right. With the
contents of both systems displayed, you can easily locate files on one
system and transfer them to a specific folder on the other system.
The Classic interface looks similar to this:
The current folder The current folder
on the FTP site is
on your PC is in
shown in this pane.
this pane.

This list box


shows the files
This list box
and folders in the
shows the files
current folder on
and folders in
the FTP site.
the current local
folder.
Status bars show a
total or selected
number of files and
their combined size.

The buttons to the right of each list box provide file and folder
operations for that list box.
The Explorer Interface of WS_FTP Pro
The second interface of WS_FTP Pro is the Explorer interface. The
Explorer interface uses the same software engine as the Classic
interface, but it lets you copy and move files within a system that has
the same look and feel as Windows Explorer.

Introduction 5
WS_FTP Pro
The WS_FTP Pro Explorer interface looks similar to one of the
following:
The appearance of the Explorer
window is determined by your View
menu options.

Explorer interface

Files and
folders in the
current folder

Browser Integration
You can set up WS_FTP Pro so that it automatically handles FTP
Browser Integration is
NOT compatible with URLs when you click them in your browser or in an e-mail message.
Netscape 6. (A URL, Uniform Resource Locator, is an Internet address describing
an Internet resource. For example, the Web URL for the Ipswitch web
site is http://www.ipswitch.com/; the FTP URL for the FTP site of
WS_FTP Pro Patches is ftp://ftp.ipswitch.com.)
WS_FTP Pro handles FTP URLs as follows:
• If the URL is the name of an FTP server, such as
ftp.ipswitch.com, WS_FTP Pro “handles” the URL by starting
the Classic interface of WS_FTP Pro and connecting to the site.

6 User’s Guide
WS_FTP Pro
• If the URL includes the path and name of a file, such as
ftp.ipswitch.com/French/ftp605F.txt, WS_FTP Pro attempts to
download the file to your PC, and prompts you for a location to
save or execute the file.
• If the URL includes the path and name of a folder (and not a file),
such as ftp.ipswitch.com/French, WS_FTP Pro “handles” the
URL by starting the Classic interface, connecting to the site, and
navigating to the folder.
To turn on Browser Integration:
1 Select Browser Integration from the Program Options dialog.

2 If you use Netscape Navigator and want WS_FTP Pro to handle


FTP URLs, select the first check box.
3 If you use Microsoft Internet Explorer and want WS_FTP Pro to
handle FTP URLs, select the second check box.
4 If you want to be prompted each time you click an FTP URL so
you can choose whether or not to use WS_FTP Pro, select Ask
before using WS_FTP.

Other Ipswitch WS_FTP Products


WS_FTP Server and the WS_FTP Pro Development Kit can be
purchased separately at www.ipswitch.com.
WS_FTP Server
The WS_FTP Server is a full-featured, secure (using SSL) FTP server
for Windows NT/2000/XP systems. WS_FTP server lets you create an
FTP site that makes files and folders on your PC available to other
users. WS_FTP Server offers many features not found in most
commercial servers today, including automatic resumption of
interrupted transfers.

Introduction 7
WS_FTP Pro
WS_FTP Pro Development Kit
You can develop custom applications using the WS_FTP Pro
Development Kit. It lets you create programs to work with WS_FTP
Pro for transferring files to or from FTP sites or between FTP sites.
The Development Kit lets you create an FTP application without
being concerned with the intricacies of network programming.

Getting Updates and Giving Feedback


Ipswitch frequently makes patches and upgrades available on
our Web site. For the latest version information, please visit
www.ipswitch.com.
To access upgrades on the Ipswitch FTP site (using the Classic
interface):
1 In the WS_FTP Pro window, click the Connect button.
2 In the Connect to Remote Host dialog, open the Predefined Sites
and Ipswitch folder and select the site named WS_FTP Pro
Patches.
3 Click Connect. WS_FTP Pro connects to the WS_FTP Pro
folder.
4 Select the desired patch file; the last three digits of the file name
indicate the version number. For example, wsftp606.exe is the
patch file to update earlier versions to WS_FTP Pro 6.06. Read
the accompanying text file (for example, wsftp606.txt) to verify
that you have located the correct file.
5 Transfer the patch file and place it in a folder other than your
WS_FTP Pro folder or your Windows Temp folder. To update the
software, double-click the patch file and follow the instructions.
To access patches on the Ipswitch Web site:
1 In your Web browser, go to: http://www.ipswitch.com
2 Click the Downloads link.
3 Click Software Updates, and then click the link for the product.
4 Save the patch file in a folder other than your WS_FTP Pro
folder or your Windows Temp folder.
5 Run the patch file to update the software.

8 User’s Guide
WS_FTP Pro
We welcome your feedback on WS_FTP Pro. Please e–mail any
comments and suggestions to feedback@ipswitch.com.

Accessibility
WS_FTP Pro is designed for use by all computer users, including
those with certain disabilities that make using a mouse impossible.
Every operation and feature included in WS_FTP Pro has a shortcut
key, or series of keystrokes that allow the user to use their keyboard to
execute the command.
The image below shows the WS_FTP Button bar:

Notice that each of the button labels have a letter that is underlined.
To access the command performed by the button, hold the Alt key on
your keyboard and press the underlined letter on the button you want
to use. For example, Alt + C will disconnect you from the current FTP
site, and Alt +X will close the program.

Introduction 9
WS_FTP Pro
10 User’s Guide
WS_FTP Pro
Chapter 2: Getting Started
This chapter describes how to get started using WS_FTP Pro. The two
main windows of the Classic Interface are described for you, and in
the sidebar are step-by-step instructions on the basic functions of
WS_FTP Pro.

How to... Making your First Connection


Make your first
connection: The first time WS_FTP Pro is run, the Classic Interface opens with the
Before you make your first Connect to Remote Host dialog displayed.
connection, you need to create a
site profile for that FTP server.
1. From the Connect to Remote
Host dialog, click the Create
Site button.
2. In the Name box enter what
you want to call the site.
3. In the Create In box, select the
folder you want to create the
site in.
4. Click Next.
5. In the Host Name or IP
address box, enter the internet
address for the FTP site you
want to connect to.
6. Click Next.
7. Enter the UserID and
Password for that site.
8. Click Finish, or click Next to
enter optional information
about the site (described later in
the User’s Guide and in the
Online help.)
Your new site profile will now Some sites are set up for When you select a configured site, the
appear in the folder you selected. you when you install host information for that site is
9. Click Connect. WS_FTP Pro. You can displayed in the Host Info tab of the
connect to one of these or Site Options dialog.
When you click connect, the
configure your own.
Connection Dialog box disappears Access this dialog by selecting a site
and the WS_FTP Pro Classic and clicking the Edit button.
Interface attempts to make the
connection.

WS_FTP Pro uses Site Profiles to store information it needs to make


a connection to an FTP site. This information includes:

Getting Started 11
WS_FTP Pro
• Hostname/IP Address. Every system (computer) on the Internet
has an official host name or an Internet (IP) address. In order to
connect to an FTP site, you must find out the official name or
address of the site. For example, a system might have a host name
of superserv.ipswitch.com and an IP address of 123.124.125.126.
In WS_FTP Pro, you can use either the host name or the IP
address to specify a particular FTP site.
• User ID. The User ID or user name is given to you by the FTP
site administrator or owner when an account is created. For
information on how to connect without a User ID, see
“Anonymous Connections” on page 15.
• Password. When an account is created, a password is chosen or
issued to you. When used with the User ID, it allows you to
connect to your FTP account.
• Site Options. There are many options you can set in a Site Profile
that controls how WS_FTP Pro makes and maintains connections
to an FTP Site. These options are set through the Site Options
dialog that can be found by selecting a site and clicking the Edit
button on the Connect to Remote Host dialog.
To get started using WS_FTP Pro, you have two choices. You can
either connect to one of the sites we have included in the application,
or you can create you own Site Profile and use that to connect to the
FTP site you identify in the profile.
To connect to a pre-configured site, simply select the site from the
Sites list on the Connect to Remote Host dialog and click the
Connect button.
To configure your own site, click the Create Site button and follow
the directions on the New Site wizard. Once you finish the wizard,
you will be able to select your site and click Connect. From then on,
your site profile will be there for you to use.

Transferring a File
After making your connection, WS_FTP closes the Connection
dialog, leaving the WS_FTP Pro window. The image below shows
how the WS_FTP Pro window looks once you have connected to a
site.

12 User’s Guide
WS_FTP Pro
The following are boxes and window structures that are important in
learning how to make an FTP transfer:
Local System. The left pane shows the directory set as your default
local directory, and all of the files and folders in it. You can change
directories by selecting it from the list, by clicking the Browse (...)
button next to the Local System box, or by typing the folder path in
the box.
Remote System. The right plane displays the default directory for the
FTP site you connect to. You can change directories by selecting it
from the list, by clicking the Browse (...) button next to the Remote
System box, or by typing the folder path in the box.
Address. The Address bar displays the complete path of the FTP Site
you are connected to. If you type this address in manually, the
Address bar will record the last ten sites and folders you have
connected to.
Transfer Arrows. Click these icons to transfer a file:

Upload Arrow

Download Arrow

Getting Started 13
WS_FTP Pro
WS_FTP Pro Toolbar
How to...
Connect. Click this icon to select or configure a site to connect to,
Transfer a file: using the Connection Dialog box.
Once you have connected to a site,
you are ready to transfer a file. Disconnect. Click this icon to disconnect from a site.
Downloading a File
1. Select the directory you want to
download the file to in the
Transfer Manager. Click this icon to display the Transfer Manager.
Local System list.
For more information, see “Chapter 7: WS_FTP Transfer Manager”
2. In the Remote System list, find
the file by clicking on the on page 41.
folder it is stored in (unless the Edit Manager. Click this button to display the Edit Manager for the
file is in the directory you
connected to.) Active Edit function. For more information, see “Active Edit” on
page 34
3. Select the file you want to
download. Batch Mode. Click this icon to place WS_FTP in Batch Mode. In
4. Click the download transfer this mode, selected files will be added to the Transfer Manager to
arrow. It is the one that looks be transferred later.
similar to: <--
5. When the file is downloaded, it Multipart Mode. Click this icon to put WS_FTP in multipart mode.
will appear in the Local This is used to split large files into smaller more manageable
System list. downloads. For more information, see “Multipart Transfers” on
page 29.
Uploading a File
Options. Click this icon to access WS_FTP Program Options.
1. Select the directory you want to
upload the file to in the Remote
System list.
Views. Click this icon to select a view type from the menu. The
2. In the Local System list, select
the file you want to upload. following is a list of these view types.
3. Click the upload transfer arrow.
It is the one that looks similar Large Icons. Click this icon to change the layout of the list pane to
to: --> show file names along with large icons associated with the file
4. When the file is uploaded, it type.
will appear in the Remote
System list. Small Icons. Click this icon to change the layout of the list pane to
show file names along with small icons associated with the file
type.
List. Click this icon to change the layout of the list pane to show an
ordered list of files in a selected directory.
Details. Click this icon to change the layout of the list pane to show
an ordered list of files with the name, size, type, time of last
modification, and attributes listed.
Thumbnails. Changes the layout of the list pane to show
thumbnails of graphic files and icons of others.

Customizing the Toolbar


You can modify the appearance of the toolbar by selecting the
Toolbar dialog from the Program Options.

14 User’s Guide
WS_FTP Pro
Anonymous Connections
To log on to any FTP site, you must identify yourself with a user ID
and password. For many FTP sites, you can use the word anonymous
as a User ID, and your E-mail address as your password; this is known
as an "anonymous login." (All of the Ipswitch preconfigured FTP sites
are set up as anonymous logins.)
FTP sites that allow anonymous logins usually exist to provide files
that can be downloaded by the general public; anyone on the Internet
can log onto the site anonymously and copy files to their PC. This is
similar to logging on to a file server as a "guest."
Anonymous logins have access to a vast store of software, games,
music, and numerous other resources. However, if you log in
anonymously, you usually are not allowed to do more than view
public folders and download files. (You are usually unable to view
private folders or to upload files.)

Assistance Center
The WS_FTP Pro Assistance Center has been created to help new
users get up and running with WS_FTP Pro as quickly as possible,
and to give more experienced users quick access to our online support.
The Assistance Center includes:
• Tutorials. Our interactive tutorials are available to anyone
with a connection to the internet. The two lessons walk users
through how to get connected to an FTP site and how to
successfully transfer files.
• Getting Started Guide. This guide offers information on
how to get started using WS_FTP Pro, and a tour of the
product that points out various functions.
• Common Terms and Definitions. Look here for a list of
common terms and phrases used in our documentation.
• Link to our Knowledge Base. You can also directly access
the Knowledge Base articles through this link.

Getting Started 15
WS_FTP Pro
Using the Help System
Our Online Help system contains detailed descriptions and directions
on how to use each and every function available in WS_FTP Pro. It
should be the first place you look if you have any question using the
product.

Use the Index tab to


look up keywords,
and use the Search
tab to search for
words in the body of The body of
the topics. the help topic
appears in this
pane.
Individual topics are
organized into books
that relate to a spe-
cific function.
Some books have Click on blue
other books listed in- words to ‘jump’
side. to another topic.
Click green to
access a ‘drop
down’ list.

16 User’s Guide
WS_FTP Pro
Chapter 3: Connections
This chapter details the different ways users can make FTP
connections using WS_FTP Pro.

Using Site Profiles


For most FTP connections, WS_FTP Pro uses site profiles to store
information it needs to establish the connection with the Server. These
profiles control how WS_FTP Pro connects to the remote server, and
Look for more information
in the Connecting to an
how it performs once the connection is made. Site profiles are created
FTP Site section of the and maintained on the Connect to Remote Host dialog.
Online help.
Connect to Remote Host Dialog
The Connect to Remote Host Dialog is your main starting point in
using WS_FTP Pro. From there, you can create and edit site profiles,
organize your profiles, and use those profiles to connect to your FTP
sites.

The following are descriptions of all of the features on the Connect to


Remote Host dialog.
• Assistance Center. When this button is clicked, the Assistance
Center window appears. For more information, see “Assistance
Center” on page 15.
• Connect. Click this button to connect to the selected site.

Connections 17
WS_FTP Pro
• Create Site. Click this button to access the Site Profile wizard.
Use this wizard to create a new site profile.
• Create Folder. Click this button to access the New Folder
wizard.
• Edit. Click this button to edit the selected site profile.
• Delete. This button deletes a selected site or folder.
• Close. Click this button to close the Connect to Remote Host
dialog box.
• Help. Click this button to access the WS_FTP Pro Online Help
system.
• Configured Sites. This box lists all of your configured sites.

When a folder has a + next to it, it means that


there may be folders or sites within this folder.

Select a site to connect to that site or to view


the host information for that site. To rename a
site, right click on the site name, select rename,
and type the new name.

Host Info Dialog of Site Options


After creating a Site Profile through the Site Profile Wizard, you can
edit the profile by selecting it and clicking the Edit button. The
following is a description of the Host Info dialog of the Site Options
dialog. For detailed information on the other dialogs in the Site
Options, click the Help button on those dialogs.
• Host Name. Every system (computer) on the Internet has an
official host name or an Internet (IP) address. In order to connect
to an FTP site, you must know the official name or address of the
site. For example, a system might have a host name of
superserv.ipswitch.com and an IP address of 123.124.125.126. In
WS_FTP Pro, you can use either the host name or the IP address
to specify a particular FTP site.
• UserID. If you have an account on the FTP server you are
connecting to, enter your user identification name here. For
information on connecting to sites you do not have an account on,
see“Anonymous Connections” on page 15

18 User’s Guide
WS_FTP Pro
• Password. Enter your password for the site you are connecting
to.
• Account. Some FTP sites, notably VM/CMS hosts, require an
account in order to authenticate the client and provide access to a
default directory for the user. For most sites, however, no account
is required.
• Anonymous. Select this option if you are making an anonymous
connection to the selected site. For information on anonymous
connections, see “Anonymous Connections” on page 15.
• Save Password. When you select this option, the password will
be saved with the site information. It is recommended that you do
not select this option if other people have access to your
computer.
• Save Account. Select this option to save the account information
entered in the Account box with the site information.
• Comment. Enter any comment you would like to make about the
site.
Organizing Sites
With the Organize Sites dialog, you can create, organize, and modify
site profiles while connected to an FTP site (you have to disconnect
before you can access the Connect to Remote Host dialog).
To access this dialog, select Organize Sites from the Sites menu.

Notice that the buttons here also appear on the Connect to Remote
Host dialog.

Connections 19
WS_FTP Pro
Automatic Connections
If you have a single site that you connect to over and over again, you
can have WS_FTP Pro attempt to make a connection as soon as you
Setting a default site start the application. This can be done in one of two ways, using the
To set a default site, right- Auto reconnect option on the General dialog of Program Options.
click on the site profile and
select Default Site from Connect to Default Site
the menu.
By setting this option, and choosing a default site profile on the
Connect to Remote Host or Organize Sites dialog, you can have
WS_FTP Pro connect to that site as soon as you open the application.
Open with last local and remote folders
If you do not want to set up a default site to use every time you open
the application, you can select this option to have WS_FTP Pro open
the last remote connection to the last remote folder you were in when
you exit the application. It will also display the last local folder you
were in as well.
If you do not have a remote connection when you close the
application, it will not auto reconnect to any site.

Alternate Connecting Methods


WS_FTP Pro offers several ways of connecting to a remote site where
you don’t have to use a site profile, or you don’t have to use the
Connect to Remote Host dialog. In time, a user may find that they like
using these methods better than going through the Connect to
Remote Host dialog. Below are descriptions of each of these
methods.
Sites Menu
You can connect to your configured sites by selecting the site from the
Sites Menu. This menu is available in both the Classic and the
Explorer interface.

20 User’s Guide
WS_FTP Pro
To change the folders or layout of this list, select Organize Sites and
use the Organize Sites dialog.
Recent Sites
On the File menu, you will find the Recent sites submenu. This menu
shows the last ten FTP sites you successfully connected to. You can
establish a connection by selecting one of the sites from the menu.

Quick Connect
Quick Connect provides a means for you to connect to an FTP site
with minimal effort and time; for example, you might use Quick
Connect to connect to a site that you want to visit just once.
To use this feature, select Quick Connect from the File menu.

Note
Quick Connect does not work for SSL or SSH connections.

Connections 21
WS_FTP Pro
Address Bar
The Address bar of the WS_FTP Pro Classic interface can be used in
three ways to connect to an FTP server:
Type the address directly into the Address bar
If you type the address alone, WS_FTP Pro will prompt for a
username and password. You can also type the username and
password in front of the site address in this format:
username:password@ftp.ipswitch.com:port/path. Example:
robert:armstrong@ftp.ipswitch.com:21/pub/
You can also enter the username and password in the boxes below the
address bar, after entering the ftp address in the address box.

Note
You can make an SSL or SSH connection by selecting the type of
secure connection from the lock icon next to the address box on the
address bar. For more information, see “Chapter 8: Security” on
page 45

Use the listbox to select a recently visited site


When you connect to a site, a record of that connection will be stored
in the listbox. You can connect to that site by selecting the entry.
WS_FTP Pro will attempt to make a connection using the same
options defined when the site was last visited.

Internet Connection Settings


The following settings can be configured on the Internet Connection
dialog of the Program Options (click the Options button on
WS_FTP Pro) to have WS_FTP Pro automatically connect to and/or
disconnect from the internet when scheduled items are run, or when
time consuming tasks are being performed.
• Connect to Local Area Network (LAN). If you connect to the
internet via a LAN (or cable modem, DSL, T1, etc.), WS_FTP
Pro will automatically set this option and disable all others.

22 User’s Guide
WS_FTP Pro
• Connect using a dial-up connection. Select this option to have
WS_FTP Pro connect to the internet using a dial-up connection.
This is a connection made by your computer using a modem and
your telephone lines.
• Select a dial-up connection. If you have multiple dial-up
connections configured in your Windows Dial-Up Networking,
select the configuration you want WS_FTP Pro to use here.
• Disconnect when application exits. Select this option to have
WS_FTP Pro end your connection to the internet when the
application is closed. This will end any connection you have
made through any means.
• Disconnect only when application establishes connection.
Select this option to have WS_FTP Pro end your connection to
the internet when the application is closed, only when WS_FTP
Pro made the internet connection in the first place.

Passive Mode
Normally, when you connect to an FTP site, the site establishes the
data connection to your PC. However, some FTP sites allow passive
transfers. This means that your PC establishes the data connection.
By default, passive mode is turned on in WS_FTP Pro; we
recommend that you use it for transfers to and from FTP sites that
support it. Note that passive mode may be required in the following
instances:
• For users on networks behind some types of router-based
firewalls
• Users on networks behind a gateway requiring passive
transfers
• If transfers are erratic
• If you keep getting failed data channel or blocking call
cancelled errors.

Connections 23
WS_FTP Pro
24 User’s Guide
WS_FTP Pro
Chapter 4: Transferring Files
Transferring means moving or copying files or folders between
computers. If you transfer a file from your computer (local system) to
an FTP Site (remote system) it is called an upload. If you transfer a
file from a remote system to your local system, it is called a
download. If you transfer between two remote sites, it is called a site
to site transfer.

Ways to Transfer Files


WS_FTP Pro allows you several ways to transfer a file.
Using the Transfer Arrows
Select a file or folder and click the Upload or Download Arrow to
transfer it. You can select multiple files by holding down the Ctrl
button while selecting.

Upload Arrow

Look for more information


in the Transferring Files Download Arrow
section of the Online help.

Drag and Drop


With a file or folder selected, click and hold your left-mouse button
Restarting Transfers! and drag the file to where you want it transferred to. You can select
Some FTP Servers allow
clients to restart transfers multiple files by holding down the Ctrl or Shift button while
that have failed or been selecting. As you drag the file, your cursor changes.
interrupted due to a lost
connection, cancellation, or
other reason.
For specific directions on
this process, see the
Transferring Files section
of the Online help.

When your cursor looks like this, When your cursor looks like this,
you are at a place where you you cannot drop a dragged file
can transfer a file. there.

When you release the mouse button, WS_FTP Pro attempts to transfer
the file to that location.

Transferring Files 25
WS_FTP Pro
Copy and Paste
Right-mouse click a file, then select Copy from the pop-up menu.
Confirming Overwrites
Right-click where you want to transfer the file to, and from the right-
Most sites allow you to
overwrite or replace a file mouse menu select Paste. WS_FTP Pro then attempts to make the
without giving you any
kind of visual warning. transfer.
Through WS_FTP Pro, you
can set it up so that a dialog Batch Mode
box is displayed to warn
you that you are about to If you want to transfer multiple files from different sites, you can put
overwrite a file.
For specific directions on
WS_FTP Pro in Batch Mode.
this feature, see the
Transferring Files section While in batch mode, WS_FTP Pro will add a request to the Transfer
of the Online help.
Manager, to be performed when you choose. If you want to make an
immediate transfer while in Batch Mode, without having it go through
the queue, select the file and drag it to the destination folder.
Using the Transfer Manager
The WS_FTP Pro Transfer Manager is used to view the progress of
transfers, to schedule the transfer of multiple files, and to view logs
for individual transfers. For more information, see “Chapter 7:
WS_FTP Transfer Manager” on page 41.

Upload Wizard
The Upload Wizard is a utility that allows you to transfer files from
your local system to a remote FTP site without using the WS_FTP Pro
interface. There are two ways to access the Upload Wizard:
• In Windows Explorer, select the files or folders you want to
upload, then right-mouse click on the list. In that list you will see
'Upload using WS_FTP Upload Wizard.' After selecting that
option, the Upload Wizard appears with the files already added to
the upload list.

26 User’s Guide
WS_FTP Pro
• Select WS_FTP Upload Wizard from your Windows Start menu.
This will open the Wizard ready for you to add the files you want
to upload.
After the files are added to the Upload wizard, you will be asked to
select a remote folder or enter a remote URL. This is where the files
are uploaded to.

Hotdrop Folder
Hotdrops are shortcuts to remote directories that you can create
anywhere on your local system. They appear as files with the
Using Hotdrops extension .fhf.
Hotdrops are excellent
ways for you to quickly If you click on the file, WS_FTP Pro launches and automatically
upload files without having connects to the site and navigates to the local and remote folders that
to launch WS_FTP Pro. If
you are updating a web you identify when you set up the hotdrop.
site, think about placing a
Hotdrop in your production You can also drag files and folders to the icon and drop them. The
folder. When you update a
file, just drag it on the files and folders will then be automatically uploaded to that site. The
Hotdrop icon and it will be
transferred to your site.
Transfer Manager appears to show the progress of the transfers.

Transferring Files 27
WS_FTP Pro
Transfer Modes
There are three modes that WS_FTP Pro uses to transfer a file.
Depending on the type of file, you may have to select this mode
before you attempt to transfer a file.

Transfer Mode

These modes are called ASCII, Binary, or Auto. The following chart
shows the icon that should be chosen for the described type of file.

A file that is text, HTML, postscript, other ASCII


format (.txt, .html, .htm, .cgi), or EBCDIC should be
transferred in ASCII mode. If you transfer a binary file
in ASCII mode, you will not get the entire file.
Ascii Mode
A file that is a bitmap, an executable, or compressed
(.bmp, .jpg, .exe, .zip) should be transferred in binary
mode. (Binary mode should also be used if there is no
file extension or the file extension is not registered.)
Binary Mode
This is the default mode.
If you turn on Auto mode, WS_FTP Pro checks to see if
the file has an extension that is listed on the Extensions
tab of the Options dialog. If so, ASCII mode is used; if
not, binary mode is used.
Auto Mode

28 User’s Guide
WS_FTP Pro
Automatic Retry
If the initial attempt to transfer a file fails, WS_FTP Pro can
automatically retry the attempt a set number of times.
To set the Automatic retry:
1 From WS_FTP Pro, click the Options button.
2 Select the Transfers dialog.
3 In the Number of retries for failed transfers box, enter the
number of times you want WS_FTP Pro to retry the transfer (0-
99.)

Resuming a Failed Transfer


WS_FTP Pro can automatically resume interrupted transfers or
transfer attempts when the application is started, if the WS_FTP Pro
application is terminated while:
It is in the process of transferring a file or if it is still on the Transfer
list (on the Transfer Manager) as a failed transfer.
To set this option:
1 From WS_FTP Pro, click the Options button.
2 Select the Transfers dialog.
3 Select the Automatically resume transfers when application
starts option.
4 Click OK.

Multipart Transfers
When in Multipart mode, WS_FTP Pro will split large files into
smaller and download all sections with different, yet concurrent,
connections. This will decrease the amount of time it takes to
download large individual files.

Transferring Files 29
WS_FTP Pro
The number of connections made is determined by the number of
additional connections specified in the Site Profile, as well as the
number of connections allowed by the server and the Number of
parts used on multi-part transfers option on the Transfers dialog
of Program Options.
The Transfer Manager will display the file, the number of segments
that the file has been divided into, and the status of the transfer of each
of the segments. When each of the segments are complete, the
Transfer Manager will show the status of the re-combining of the
files, if that process takes longer than 2 seconds.
If there are no segments listed under the file being transferred, than
the file is not large enough to be divided.
Note: Multipart does not work with SSH connections or with uploads.
To use Multipart mode, click the Multipart mode button on the
WS_FTP Pro toolbar.

30 User’s Guide
WS_FTP Pro
Chapter 5: Managing Files and Folders
This chapter deals with using WS_FTP Pro to manage files and
folders on both local and remote systems. Managing files and folders
includes:
• Viewing and navigating
• Working with files and folders

Viewing and Navigating


WS_FTP provides many tools and techniques for viewing and
Look for more information
in the Viewing and navigating files and folders.
Navigating section of the
Online help. This section points out various structures on the WS_FTP Pro window
that allow you to view files and folders, and to navigate both local and
remote systems.

Display Icon Address Bar

Local System Remote System

Up one Level

Local Directory Remote


Directory

Change Directory Button


Refresh Buttons

The Address bar displays the complete path to the FTP site directory
you are currently connected to.
The left side of the WS_FTP Pro window shows your local system,
and where on that system you are. The Local Directory listing
displays everything that is visible in the folder identified in the Local
System box.

Managing Files and Folders 31


WS_FTP Pro
Click the folder next to the local system box to select a new folder on
your local system.
The right side of the WS_FTP Pro window shows the Remote System
(FTP site) you are connected to. The Remote Directory listing
displays everything that is visible in the folder identified in the
Remote System box.
The way these listings look can be changed by the Display Icons, and
can be refreshed (to make sure you are looking at the most up-to-date
list of files and folders) by clicking the Refresh button next to the
directory list box.
Click the ChgDir (Change Directory) button to type in a folder or
local drive you want to navigate to.
Thumbnails View
The thumbnails view lets you navigate remote folders with graphics
displayed in smaller images called thumbnails. With this, you can see
what is on the remote folder without having to remember the
filename.
To use this view, select Thumbnails from the View menu.
There are two options on the Program Options: Display dialog that
are important to this feature:
• Download images from remote server to create thumbnails.
Select this option to have WS_FTP Pro download all images to
create a thumbnails database for the remote server. If this option
is cleared, WS_FTP Pro will only obtain thumbnails if the remote
server already has a database.
• Synchronize remote thumbnails databases. Select this option
to have WS_FTP Pro upload the thumbnails database to the
server once it has been created locally. Any further changes to the
image list will be updated in both the local and remote thumbnail
databases.

Working with Files and Folders


WS_FTP Pro gives you a variety of features that make it quick and
Look for more information
in the Working with files easy to organize, manipulate, and delete files and folders.
and folders section of the
Online help.

32 User’s Guide
WS_FTP Pro
The graphic below points out key features used during these tasks.

Command
buttons (Command
Bars)

Files

The Command buttons are very important to managing your files.


You can change the order of the buttons, and which buttons appear
using the Program Options: Command Bar dialog. The following is
a description of the buttons that pertain to this section:
ChDir - Change Directory. The ChDir command offers one way
for you to change to a directory on the current system.
MkDir - Make Directory. The Make Directory command
allows you to create a folder/directory on your PC or on the FTP
site if possible. (Not all FTP sites allow you to create folders; you
must have an account on the site and "create" permissions.) When
you select this command, you are prompted for a folder name that
is valid for the current system.
View. The View command allows you to view a file. If you select
a filename on an FTP site and then click View, the file is
transferred to a temporary folder and is opened in the default text
viewer.
Edit. The Edit feature allows you to edit remote files quickly and
without having to actively transfer them first.
Append. The Append command allows you to select one or
more files on the source system and transfer those files to the
destination system, appending them to a destination file. (The
source system is where the files are coming from.)

Managing Files and Folders 33


WS_FTP Pro
Execute. The Execute command allows you to open an
application on a remote server. When you select this command,
WS_FTP Pro downloads the file to a temp directory and runs the
application associated with the file. If there is no association
available, the user will be prompted with the ‘Open With’ dialog.
Rename. Use Rename to change the name of a selected file or
folder.
Delete. The Delete command allows you to delete a file or folder
on your PC or on the current FTP site, if you have the appropriate
permissions. Remote files do NOT go to the Windows Recycle
Bin.
DirInfo - Directory Information. The Directory Info command
opens a text document that displays information about the current
directory. This document opens in the default Text Viewer (as
specified on the General tab of Program Options). WS_FTP
displays as much information as the FTP site delivers. Depending
on the site, for each file or folder within the current directory, the
following information may be shown: size, type, permission,
creation date, date last modified, and name.
Click and Drag for Organization
You can organize your files by clicking on the files and dragging them
to the folder you want to move them to. This is not an FTP transfer
when you move the file from one folder to another on the same
system.

Active Edit
The active edit feature allows you to edit remote files quickly and
without having to actively transfer them first. When you select a file
and click Edit, the file will be opened in the application that it is
associated with. If you want the file to be associated with an
application other than the default application, you have to configure it
on the Active Edit dialog.

34 User’s Guide
WS_FTP Pro
To configure an extension for active edit:
1 From the Program Options, select the Active Edit dialog.
2 Click Add to add a new entry, or select one from the list and click
Edit. The Active Edit Properties dialog appears.

3 Enter the extension or extensions separated by commas.


4 In the Editor box, select or enter the path to the application that
you want to open the file in.
5 Click OK. The extensions appear on the list.

Managing Files and Folders 35


WS_FTP Pro
Changing the File Permissions for UNIX Sites
You can change permissions for a file or folder on a UNIX FTP site,
provided you have permission.
If you attempt to change 1 Select the file or folder and select Properties from the right-
permissions, check the
message area or the log to mouse menu,
see if you were successful.

2 Select the desired options by clicking the appropriate check


boxes.
3 Click the OK button.
Background Information
The table below shows how WS_FTP Pro check box options
correspond to the possible values for Owner, Group, and Other as
viewed in the ten-position value in the first column of a directory list
for a UNIX site.
Selected options in Permissions in
WS_FTP Pro directory list
none ---
Execute --x
Write -w-
Write, Execute -wx
Read r--
Read, Execute r-x
Read, Write rw-
Read, Write, Execute rwx

In the directory list, the first position indicates whether the item is a
file (-, s, S, or t) or directory (d), while positions two through ten show
the permissions for Owner, Group, and Other.

36 User’s Guide
WS_FTP Pro
For example, find drwxr-x--x in the directory list. This expression
is comprised of four parts:
d rwx r-x --x
First position Positions 2-4 Positions 5-7 Positions 8-10
indicates indicate indicate Group indicate Other
whether item Owner permissions: permissions:
is a file (-,s,S, permissions: read and execute only.
or t) or read, write, execute.
directory (d) execute.

Managing Files and Folders 37


WS_FTP Pro
38 User’s Guide
WS_FTP Pro
Chapter 6: Explorer Interface
This chapter explains some of the differences in how the Explorer
interface works as opposed to the Classic interface of WS_FTP Pro.

Overview
The following graphic points out key features in the Explorer
Look for more detailed
information in the Online Interface that make it different from the Classic Interface. The graphic
Help. Most sections are
applicable to the Explorer
represents the appearance of the interface after you make a successful
Interface. connection to an FTP server.

My Computer. Select Display button changes the way the files are displayed.
this item to view your
local system and
mapped drives.

Site folders. The +


means that there are
configured sites in
the folder.

This pane displays the


remote directory when
The site icon changes connected to an FTP
when connected. site, or local files
when a local folder is
selected.

Site Icon

The status bar displays the current state of the interface.

Using the Explorer Interface


The following describes how to get started using the Explorer
Interface.
Configuring a Site
Before making a connection, you must either select a preconfigured
site, or configure a new site. To configure a new site:

Explorer Interface 39
WS_FTP Pro
1 Select the folder you want the site configured in.
2 Click the New Site icon on the toolbar.
3 Follow the directions on the dialog to create a new site.
4 Click Finish once you have gone through the process.
Once you click Finish, the site will be added to the folder.
Making a Connection
Once you have a site configured, you can connect to the site. To do
this, all you have to do is click on the site name in the left-pane. If the
settings are correct, and the FTP site is accepting connections, the
right-pane will display the remote directory once connected.

Note
The Explorer interface allows multiple connections to remote servers
at the same time.

Transferring Files
Transferring files in the Explorer Interface is very much like the drag-
and-drop feature of the Classic interface. To transfer a file:
1 Connect to a site.
2 Move to the directory that holds the file you want to upload, or to
the directory in which you want to place a downloaded file.
3 Select the file or folder you want to transfer (You can select
multiple files by holding down the Ctrl key while you click on a
file.) Files to be uploaded can be selected from the desktop or
from the mapped drives in the Explorer Interface (above the sites
list).
4 With the file(s) selected, drag them to where you want them
transferred to. If you are uploading them, drag them to your
remote directory on the FTP site. If you are downloading the
files, drag them to your desktop or to the directory you want them
in.

40 User’s Guide
WS_FTP Pro
Chapter 7: WS_FTP Transfer Manager
This chapter includes the following topics:
• What is the Transfer Manager?
• Transfer Manager Dialogs.

What is the Transfer Manager?


The WS_FTP Pro Transfer Manager is the module of WS_FTP Pro
that performs transfers. It is also useful to users as a tool that lets them
view the progress of transfers, to schedule the transfer of multiple
files, and to view logs for individual transfers.

How to... Transfer Manager Dialogs


Use the Batch Mode.
The following sections describe each of the dialogs and tabs that are
You can use the Batch Mode to add
requests to the Transfer Manager encountered while using the Transfer Manager.
(Classic Interface only.)
Batch mode (Classic Interface only)
Transfer Manager Transfers Tab
1 Connect to an FTP server. The Transfer Manager dialog displays a list of all pending, paused,
2 Click the Batch Mode button. and failed transfers. To access this dialog from either WS_FTP Pro
3 Select a file or files and click the interface: From the View menu, select Transfer Manager.
transfer arrow. The file will be
Start Button Pause Button
placed in the FTP Transfer
Manager.
4 Once you have added all of the files
to the ‘batch,’ click the Batch
Mode button to take WS_FTP Pro
out of batch mode.
5 In the Transfer Manager, select the
requests you want to execute. Hold
down the Ctrl key to select
multiple requests. • Source. The path and name of the file or folder that is to be
6 Once you take the client out of transferred.
batch mode, it will execute the
transfers. • Status. The current status of the listed item.
• Transferred. The number of bytes transferred.
• Rate (KB/S). The number of Kilobytes being transferred per
second.
• Size. The actual size of the file in bytes.
• Time Left. The estimated time left until the transfer is complete.

WS_FTP Transfer Manager 41


WS_FTP Pro
How to... Transfer Manager History Tab

Pause a transfer The History tab of the Transfer Manager displays a list of successful
To pause an active transfer from the transfers. This list can be sorted by clicking on the column headers.
Transfer Manager:
1 Select the entry.
2 From the Transfers menu, select
Pause.
You can also click the Pause button
next to the status column.

• Transfer Arrow. The arrow on the far left side of the item
identifies what type of transfer was performed. An up arrow
How to...
means upload, a down for download, and a left-right arrow is for
Remove an item site to site transfers.
To remove an item from the Transfer
Manager: • Date. This is the date and time the transfer was completed.
1 Select the file you want removed.
• Source. This is the site profile that was used to connect to the
2 From the Transfers menu, select
Delete.
source.
• Source Path. The path on the source directory from the root to
the transferred item.
• Source File Name. The name of the source file that was
transferred.
• Destination. The site profile and folder that was used to connect
to the destination.
• Destination Path. The path on the destination directory from the
root to where the transferred item was placed.
• Destination File Name. The name of the file after it has been
transferred.
• Size. The number of bytes transferred.
Executing a file
Once a file is successfully transferred, you can select it and choose
Execute from the History menu. If it is a download, the destination
file will be opened in its associated application. If it is an upload, the
source file will be opened.

42 User’s Guide
WS_FTP Pro
Clearing the History
You can remove items from the history list by selecting them and
choosing Delete from the History menu.
You can remove all items by selecting Clear All from the History
menu.
Request Properties
You can double click any item on the Transfer Manager dialog to
view the Request Properties dialog for that item.

How to... The following information appears on the File Properties dialog.
Schedule a transfer • Elapsed Time. The amount of time that has passed since the
To schedule a transfer from the transfer began.
Transfer Manager:
1 Select a request, file, or folder. • Contains. Number of files and folders contained in the request.
2 From the Transfers menu, select (Only displayed when a folder is selected)
Schedule.
• Transferred Bytes. The number of bytes transferred.
3 In the Schedule Item Properties
dialog, the date, time, and • Transfer Rate. The number of Kilobytes being transferred per
frequency of the transfer.
second.
4 Click OK to add the item to
Scheduler. • Transfer Mode. The mode the file was transferred in.
• Attempts. Number of times the application tried to make the
transfer.
• Operation. The type of transfer being performed. Either Upload
or Download.
• Status. The current status code of the listed item.
• Source. The path name of the source of the transfer.
• Destination. The path name of the destination of the transfer.

WS_FTP Transfer Manager 43


WS_FTP Pro
Log Window
To view the log for an item, select the item, then from the View menu,
select Log.
The log window will contain all actions that have been initiated for
the selected transfer request, including pause and resume.
Refer to Appendix B for descriptions of error messages that may
appear in the log.
Operation After Transfers
The Operations After Transfers submenu can be found on both the
Transfers and History menus. This submenu allows you to select the
following operations.
Exit Application. After the application finishes all active or
scheduled transfer requests, WS_FTP Pro will close itself.
Shutdown Computer. After the application finishes all active or
scheduled transfer requests, WS_FTP Pro will attempt to shut the
computer down.

44 User’s Guide
WS_FTP Pro
Chapter 8: Security
This chapter describes the two security protocols found in WS_FTP
Pro: SSL and SSH. It also explains how to configure WS_FTP Pro to
use these protocols to make secure connections.

SSL
SSL (Secure Socket Layer) is a protocol for encrypting and decrypting
data sent across direct internet connections. When a client makes an
SSL connection with a server, all data sent to and from that server is
encoded with a complex mathematical algorithm that makes it
extremely difficult to decode anything that is intercepted.
The following is a step by step illustration of how SSL works.

Step 1. The client makes the initial connection with the server and
requests that an SSL connection be made. If Implicit SSL is
used, the initial connection will be encrypted. If Explicit is
used, the initial contact will be ‘in the clear.’
Step 2. If the server is properly configured, the server will send to the
client its certificate and public key.
Step 3. The client compares the certificate from the server to a trusted
authorities database. If the certificate is listed there, it means
the client trusts the server and will move to step 4. If the
certificate is not listed there, the user must add the certificate
to the trusted authorities database before going to step 4.

SSL Utility 45
WS_FTP Pro
Step 4. The client uses that public key to encrypt a session key and
sends the session key to the server. If the server asks for the
client’s certificate in Step 2, the client must send it at this
point.
Step 5. If the server is set up to receive certificates, it compares the
certificate it received with those listed in its trusted authorities
database and either accepts or rejects the connection.
If the connection is rejected, a fail message is sent to the cli-
ent. If the connection is accepted, or if the server is not set up
to receive certificates, it decodes the session key from the cli-
ent with its own private key and sends a success message back
to the client, thereby opening a secure data channel.
The key to understanding how SSL works is in understanding the
parts that make SSL itself work. The following is a list of these parts
and the role each plays.
Client. In this case, the client is WS_FTP Pro.
Certificate. The Certificate file holds the identification information of
the client or server. This file is used during connection negotiations to
identify the parties involved. In some cases, the client’s certificate
must be signed by the server’s certificate in order to open an SSL
connection. Certificate files have the .crt ending.
Session Key. The session key is what both the client and the server
use to encrypt data. It is created by the client.
Public Key. The public key is the device with which the client
encrypts a session key. It does not exist as a file, but is a by-product of
the creation of a certificate and private key. Data encrypted with a
public key can only be decrypted by the private key that made it.
Private Key. The private key decrypts the client’s session key that is
encrypted by a public key. The private key file has the .key ending.
Private keys should NEVER be distributed to anyone.
Certificate Signing Request. A certificate signing request is
generated each time a certificate is created. This file is used when you
need to have your certificate signed. Once the Certificate Signing
Request file is signed, a new certificate is made and can be used to
replace the unsigned certificate.

46 User’s Guide
WS_FTP Pro
How to make an SSL connection
To make an SSL connection with a server configured for SSL.
1 Create a site profile and select either FTP/Implicit SSL or FTP/
SSL (AUTH SSL) when asked for the server type.
2 After you click Connect, WS_FTP Pro tells the server that you
want to make an SSL connection. The server then transmits to
you an identifying certificate, letting the client know who the
server is. If that certificate is already listed in your Trusted
Authority database, the connection is made.
3 If that certificate is not listed as a trusted authority, the Non-
Trusted Authority dialog box appears.
4 Select the option you need and click OK. If the server does not
require a certificate to be returned, the secure connection will be
established. All data transmitted between you and the server will
be encrypted.
If the server you are attempting to make a connection to asks
WS_FTP Pro to send back a certificate, follow the direction for Client
Certificate Verification.
Client Certificate Verification
If the server you are attempting to make a connection to requires your
client to send an identifying certificate back to the server, you must:
1 Configure the site and select either FTP/Implicit SSL or FTP/
SSL (AUTH SSL) when asked for the server type.
2 Create a certificate. Refer to the section “Generating a
Certificate” on page 48 for more information.
3 Send the Certificate Signing Request file to your server
administrator.
4 Once the server administrator signs the Certificate Signing
Request, it will be sent back to you.
5 When you receive the file, follow the directions for “Selecting a
Certificate” on page 50, selecting the new certificate to go in the
Certificate box.
6 Connect to the server.

SSL Utility 47
WS_FTP Pro
Generating a Certificate
To create an SSL certificate:
1 From the Program Options, select Client Certificates.

2 Click Create. The Create Client SSL Certificate wizard


appears.
3 Enter a name in the Certificate box. This will be the name of the
certificate that is generated by WS_FTP Pro.
4 Select a date you want the certificate to expire.
5 Enter and then reenter a pass phrase for this certificate. The pass
phrase is used to encrypt the private key.

Note
It is important to remember this pass phrase. The pass phrase can
be any combination of words, symbols, spaces, or numbers.

6 Click Next to continue.


7 Enter information in all of the Certificate Information boxes:
City/Town. City or town where you are located. (Ex. Augusta)
State/Province. State or Province where you are located. (Ex.
Georgia)
Organization. Company or individual user name.

48 User’s Guide
WS_FTP Pro
Common Name. This can be either the name of the person
creating the certificate or the fully qualified domain name of the
server associated with the host.
E-mail. E-mail address of the person the certificate belongs to.
Unit. Name of organizational unit. (Ex. Research and
Development)
Country. The country you are in. This must be a valid two letter
country code. (Ex. US)
8 After all of the boxes are filled in correctly, click Next to
continue. If all of the boxes are not filled in, you cannot continue.
9 Review the information on the last dialog and click Finish to
create the certificate.
If you are creating a certificate to be used by WS_FTP Pro, you
should send the certificate signing request (by E-mail) to your server
administrator. If they require it, they will sign the certificate and
return it to you. Once you receive the certificate, you must import it
into your certificate database.

Importing a Certificate
To use a certificate sent to you, or one you have generated by
WS_FTP Server, you must import the certificate into your certificate
database.
To import a certificate
1 On the Program Options: Client Certificates dialog, click the
Import button. The Import Certificate wizard appears.
2 Click the Browse (...) button to select the certificate file.
3 Click Next.
4 Click the Browse (...) button to select the private key file for that
certificate.
5 Click Next.
6 Enter the pass phrase that was used to create that certificate.
7 Click Next.

SSL Utility 49
WS_FTP Pro
8 Enter the name that you want to use to identify the certificate on
your certificate list.
9 Click Next.
10 Review the information on the final dialog and click Finish to
add the certificate to the list.

Selecting a Certificate
Certificates are used on the site level, meaning that you must select a
certificate for each site profile that you create (you can use the same
certificate for all of your sites if you wish.)
Certificates are selected on the Site Options: SSL dialog by choosing
the certificate name from the Client certificate pull-down list. The
pull-down list displays all certificates in the Program Options:
Client Certificate dialog.

Trusted Authorities
The Trusted Authorities dialog stores a list of certificate names that
are trusted by the user.

50 User’s Guide
WS_FTP Pro
Certificate Display:
Issued To. Who the certificate was issued to.
Issued By. Who the certificate was signed by.
Expires. Date on which the certificate expires.
Adding a Certificate
To add a certificate to the database:
1 Click the Import button and select the path and file name for the
certificate. The Add Certificate? dialog box appears.

2 Review the information on that dialog box and click Yes to add
the certificate to the database.
Exporting a Certificate
To export a certificate from the Trusted Authorities database:
1 Select the certificate you want to copy out of your database.

SSL Utility 51
WS_FTP Pro
2 Click the Export button.
Select the folder you want to copy the certificate to and enter the
name you want to save the certificate file as.
3 Click OK.
Removing a Certificate
To remove a certificate:
1 Select the certificate to be removed.
2 Click Remove.
3 A warning appears advising you to export the certificate before
you remove it. Removing the certificate deletes the certificate
file.
4 Click OK to remove the certificate.

Non-Trusted Certificate
When you connect to a server using the SSL connection option, that
server sends you a certificate. If that certificate is not listed on the
Trusted Authority tab, or if it was not signed by a certificate on this
list, this dialog box appears.

Certificate Information:
Issued To. Name of the person or company who the certificate
belongs to.
Issued By. Name of the person or company who signed the
certificate.

52 User’s Guide
WS_FTP Pro
Active From. The date on which this certificate was activated.
Expires On. The date the displayed certificate will no longer be a
valid certificate.
Options
Allow this connection only. If this option is selected, the connection
will be made, but WS_FTP Pro will still not recognize the certificate
as a trusted authority. The next time you attempt to connect to this
server, this dialog box appears once again.
Trust this certificate. If this option is selected, the connection will be
made and the certificate will be added to the trusted authority database
in the Trusted Authority tab, so future connections can be made
without you being prompted.
Do not allow this connection. If this option is selected, the
connection will be terminated.

SSH
SSH (Secure Shell) is a security protocol that allows you to make a
secure connection to a server that has the SSH and SFTP (Secure File
Transfer Protocol) protocols installed. Where FTP servers usually
‘listen’ on port 21 for connection, SSH servers use port 22.
Where explicit SSL attempts to make a connection with unencrypted
channels, SSH encrypts all communications to and from the client and
server. When an SSH connection is made, SFTP is the protocol that is
used to perform all tasks on that single secure connection.

How to make an SSH connection


Making an SSH connection requires little additional configuration to
new or your existing site profiles.
When creating a new site profile through the New Site Wizard,
simply change the Server Type to SFTP/SSH when prompted by the
wizard.
If editing an existing site profile:
1 Select the site from the configured sites list.
2 Click the Edit button.

SSL Utility 53
WS_FTP Pro
3 Click the Advanced tab.
4 In the Server type pull-down, select SFTP/SSH.
5 Click OK.
When you use that profile to make a connection, the client will
automatically attempt to make an SSH connection on port 22 of that
server.

SSL vs. SSH


With both SSL and SSH, it is up to the administrator of the server you
are trying to make a connection with to tell you which server type is
being run at that address. If you do not know, and attempt to make an
SSL connection or an insecure connection to an SSH server, the
connection will fail, even if you change the port to 22 in the Site
Profile.

Using a NAT Firewall


When using a NAT (Network Address Translation) firewall, you may
encounter problems when trying to use SSL encryption. To fix this,
you should configure WS_FTP Pro and the firewall to allow incoming
connections to your PC. Pro needs to tell the server to connect to the
external IP address, and the firewall should forward these incoming
connections to your PC. You should also limit the number of ports that
the firewall opens for these connections. In many cases, this will
allow you to use SSL through a NAT firewall.
To configure SSL through a NAT Firewall:
1 From the Program Options, select the SSL dialog.
2 Select the Force PORT IP Address option.
3 Enter the IP Address of the client’s NAT firewall.
4 Select the Limit Port Range option.
5 Enter the Minimum and Maximum port range.
6 Click OK.

54 User’s Guide
WS_FTP Pro
Chapter 9: Synchronizing Files and Folders
The WS_FTP Synchronize Utility lets you synchronize (or “mirror”)
directory structures between your system and a remote FTP server
with minimal intervention.
It lets you keep remote sites up-to-date by automatically uploading
files which have changed while deleting files that have been removed
from the master directory. This is especially useful for quickly and
efficiently updating Web sites.
This chapter gives an overview of the Synchronize Utility and some
examples of how you might use it. For detailed instructions on using
the Synchronize Utility, start the Synchronize Utility and use its
online Help.

Using the Synchronize Utility


Start the Synchronize Utility by doing one of the following:
• From the Tools menu, select Synchronize....
• Click the Windows Start button and select Programs ->
WS_FTP Pro -> WS_FTP Pro Synchronize Utility.

Synchronize Dialog
This is the main dialog of the WS_FTP Pro Synchronize utility. When
using this dialog, you are creating a control file that will be used to
perform the synchronization of the locations that you identify.
The following are the features found on this dialog:
• Locations. The locations section is where you identify the
directories that you want to synchronize. Click the Browse (...)
button to choose the directory for Location 1 and Location 2.
Location 1 can be local or remote. Location 2 must be a remote
directory.
• Top level only. Select this option to have the locations
synchronized on the top level only. All subdirectories will be
ignored.

The Synchronize Utility 55


WS_FTP Pro
• Show files/folders that won't be transferred. Select this option
to have Sync display files with the No Action action code in the
Compare dialog.
• Visual compare only (no transfer). Select this option to have
Sync populate the Compare dialog without executing the
synchronize job. Once you are on the Compare dialog, you can
make changes to what tasks the job will perform.
• Show FTP conversation in log. Select this option to show the
FTP conversation in the generated log file, as well as the log pane
on the Compare dialog.
• Modes. Select the mode you want Sync to operate in.
• Synchronize Location 1 --> Location 2. This mode updates
Location 2 so that it matches the directory structure of
Location 1.
• Synchronize Location 1 <-- Location 2. This mode updates
Location 1 so that it matches the directory structure of
Location 2.
• Synchronize both Location 1 <--> Location 2. This mode
makes each location match the other by copying the newest
versions of Location 1 files to Location 2 and by copying the
newest versions of Location 2 files to Location 1.
• Customized mode. Allows you to set the actions you want
the utility to perform when files are found with a specific
status.
• Status and Actions. This section is to be used when you have
chosen the Customized mode. The Status is the current state of
the comparison, and the Action is what WS_FTP Pro
Synchronize will do when it finds an item with that status.
• Only on Loc1. The file is only found in Location 1.
• Newer on Loc1. The file found in Location 1 is newer than
the file found in Location 2.
• Same on both. The file found is the same in both locations.
• Newer on Loc2. The file found in Location 2 is newer than
the file found in Location 1.
• Only on Loc2. The file is only found in Location 2.

56 User’s Guide
WS_FTP Pro
• Exclusions. See “Exclusion Examples” on page 60 for more
information.
• Buttons. The buttons control the various functions of the utility.
• Open. Click this button to open a control file.
• Save. Click this button to save your current settings as a
control file.
• Schedule. Click this button to schedule the sync job through
WS_FTP Scheduler.
• Execute. Click this button to execute the sync job. If the
Visual compare only (no transfer) option is selected, the
Compare dialog will show what is going to happen, but no
transfers will be made.
• Exit. Click this button to close the application.

Example
The following is an example of how you might use the WS_FTP
Synchronize Utility.

When you click the Execute button, the control file named
ipswitch.ctl (the name is displayed in the title bar for the dialogue) is
executed according to the parameters set on the WS_FTP Synchronize
Utility screen:
• Synchronize makes a connection with the FTP site defined
in the Location 2 box and logs on with the information stored on
the site profile.

The Synchronize Utility 57


WS_FTP Pro
• Once the connection is made, the program navigates to the
‘/ipswitch’ directory on the FTP site and the ‘C:\WS_FTP Pro’
directory on your local system as defined in the Location 1 box.
• According to the options selected, Location 1 is to be updated
with all files found in Location 2.
• If you want to schedule this task to run on a regular basis, or at a
certain time of day, click the Schedule button. The Schedule
Item Properties dialog appears. Use this dialog to set the time,
date, and frequency of the synchronize job. For more information
on using the WS_FTP Scheduler, see “Using the Scheduler” on
page 73.
• Since the Visual compare only option is selected, the transfers
will not be executed, but the Compare dialog will appear
comparing the two locations, and displaying potential actions to
be taken by the utility. You can change the actions to be
performed on this dialog, then click Execute to start the process.

Using a Control File


WS_FTP Pro Synchronize uses 'control files' to store configuration
options and settings for your synchronize jobs. This saves you from
having to go through setting up a job each time you want to run it.

58 User’s Guide
WS_FTP Pro
To create a control file:
1 Choose a directory for both Location 1 and Location 2. You can
type in a local directory in either box, or click the Browse (...)
button to choose a remote site from a site profile, or a local folder.
Click the Local tab on the Folder Selection dialog to choose a
local folder.
2 Select the options you want to use.
3 Select the mode you want to execute.
4 Review the Status and Actions that will perform and make any
adjustments you need to make. If you make an adjustment, your
status will be changed to Customized.
5 Identify any Exclusions you may have.
6 Click Save to save the control file.
You will now be able to use that control file anytime you use Sync.

Exclusions
With the Exclusion system, you can enter a file name, file extension,
or search string to have WS_FTP Synchronize ignore any files that
match the string. Wildcards (* and ?) can be used for unknown file
names or several files of a similar name or type.
To add an exclusion
1 Click the Add button in the Exclusions section of the dialog. The
Exclusion dialog appears.
2 In the Exclusion dialog, enter what you want to exclude in the
Rules box. If you are using the Absolute location type, you can
click the Browse (...) button to select the file or folder.
3 In the Type box, select what type of item you want to apply the
exclusion to:
• Apply to files. If you want to apply the exclusion to files
only.
• Apply to folders. If you want to apply the exclusion to
folders only.
• Apply to both. If you want to apply the exclusion to both
files and folders.

The Synchronize Utility 59


WS_FTP Pro
• Absolute location. If you want to apply the exclusion to a
specific file or folder in a specific location.
4 Click OK to add the exclusion to the list.
Exclusion Examples
Here are a few examples of exclusions, followed by an explanation of
each.
Absolute file exclusions
Exclusion rule: /mydir/*.exe
Type: Absolute location
This will exclude all .exe files in the mydir remote directory, but the
path is taken from the root of the remote system.
Exclusion rule: c:\mydir\*.exe
Type: Absolute location
This will exclude all .exe files in the c:\mydir local directory.
Exclusion rule: /mydir/nextdir/myfil?.*
Type: Absolute location
This will exclude any file beginning with myfil with one arbitrary
character and any extension in the directory /mydir/nextdir.

Absolute directory exclusion


Exclusion rule: /m?dir
Type: Absolute location
This will exclude all directories that match the mask m?dir, but the
path is taken from the root of the file system. The ? is a substitute for
any single character.
Exclusion rule: c:\m?dir
Type: Absolute location
This will exclude all directories on the c: drive that match the mask
m?dir. The ? is a substitute for any single character.

60 User’s Guide
WS_FTP Pro
Relative directory exclusions
Exclusion rule: mydir
Type: Apply to folders
This will exclude any directory named mydir anywhere in the file
system.
Exclusion rule: m*ir
Type: Apply to folders
This will exclude any directory that matches the mask m*ir from
anywhere in the file system. The * means that the name can have any
number and value of character in between the "m" and the "ir."

Relative file exclusion


Exclusion rule: mydir\*.exe
Type: Apply to files
This will exclude any .exe files in any directory named mydir
anywhere in the file system.

Relative file/folder exclusion


Exclusion rule: ~*
Type: Apply to both
This will exclude any file or folder starting with the ~ character,
anywhere in the file system.

Using the Synchronize Utility from the Command


Line
The Synchronize Utility has been designed to be a command line
utility that can be scheduled and run unattended. To do this, you must
first use the user interface to set up and test a control file for the
synchronization task.
Once this has been done, you can run the Synchronize Utility directly
from the command line by using the following syntax:
ftpsync controlfile.ctl

The Synchronize Utility 61


WS_FTP Pro
You can also add this command to a batch file and schedule it using
WS_FTP Pro Scheduler. For more information on using command
line batch files, see “Using a Batch File” on page 85. For more
information on using the WS_FTP Scheduler, see “Using the
Scheduler” on page 73.

62 User’s Guide
WS_FTP Pro
Chapter 10: The Find Utility
The WS_FTP Find Utility lets you search an FTP site for files that
match your criteria, and then transfer the found files to your PC.
This is especially useful for anyone who is looking for one particular
file on a large, complex FTP site.
This chapter gives an overview of the Find Utility and some examples
of how you might use it. For detailed instructions on using the Find
Utility, start the Find Utility and use its online Help.

Using the Find Utility


To find a file on an FTP site:
1 Start the Find Utility by doing one of the following:
• From the Tools menu, select Find.
• Click the Windows Start button and select Programs ->
WS_FTP Pro -> WS_FTP Find Utility.

2 Use the Look in list box to select a site previously searched or


click the Browse button to specify the site to which you will
connect and search. You can also type in a host name or FTP
URL.
3 Enter your search criteria. You can search by name, date
modified, size, or any combination of the three.
4 Click Find Now. The Find Utility connects to the FTP site and
searches according to your criteria.

The Find Utility 63


WS_FTP Pro
For example, if you search the Ipswitch FTP site for a file named
filelist.txt, the following results are displayed.

The search
found this
file.

Using the Search Results


Once you locate a file on an FTP site, you can:
• Transfer it.
• Schedule it for transfer at a later time, by selecting Send to
Scheduler from the right-mouse menu.
To transfer a file:
1 In the dialog box above, select the file you want to transfer, and
select Transfer from the right-mouse menu. A browse window
appears.

2 Select the folder to which you want to download the file.

64 User’s Guide
WS_FTP Pro
Examples
The following are examples of different types of searches.
Finding a File When You Are Not Sure of Its Name
The graphic below shows how to search for a file when you are not
sure of the correct full name. In this case, the name begins with ws_f,
but the rest of the name is unknown. The * at the end is a “wildcard”
that takes the place of the missing characters. When this search is run,
the Find Utility locates every file on the site that begins with ws_f.

Search text

The results of the search are shown below.

The Find Utility 65


WS_FTP Pro
You can also use wildcard characters (* and ?) at the beginning of
a name if you are unsure about the beginning characters. For example,
searching for *.exe returns all files ending with the .exe file extension.
Finding a File Modified During a Specific Time Period
To search for a file modified during a specific time period, click the
Date Modified tab and set the options you need. In the example
below, the WS_FTP Find Utility will search for all files modified
between April 10, 2001 and April 20, 2001.

Finding a File in a Particular Folder


If you know the name of the folder in which the file you are looking
for is stored, you can narrow your search by having the Find Utility
look only in that folder.

66 User’s Guide
WS_FTP Pro
To locate a particular folder:
1 Click the Browse button next to the Look In field to connect to
the selected site and display a list of the available folders.

2 Select the folder that you want to search.


3 Click OK. The Look In box is filled in with the path of the
selected folder.
4 Click Find Now to search through the files in that folder.
Finding a File Smaller Than a Certain Size
If you want to limit the size of the files found in a given search, enter
the FTP site and file name on the Name & Location tab, then click
the Advanced tab.

In the Size is box, you can select At least or At Most then enter the
file size in kilobytes in the KB box.

The Find Utility 67


WS_FTP Pro
68 User’s Guide
WS_FTP Pro
Chapter 11: Scripting
The WS_FTP Scripting Utility allows you to group any number of file
transfer tasks into a script that can be executed with one action. This
can be especially useful for file transfers that you do repeatedly.
This chapter gives an overview of the Scripting Utility and some
examples of how you might use it. For detailed instructions on using
the Scripting Utility, start the Scripting Utility and use its online Help.
Using scripts, you can:
• Connect to FTP sites
• Upload or download files
• Set the transfer mode
• Make, delete, and rename folders
• Delete and rename files
• Execute a DOS command
Scripts can also have some limited flow control. They can:
• Check for the success or failure of the previous command
• Jump to another point in the script if either success or
failure is detected
Suppose you post weekly reports on your company’s FTP server for
your co-workers in other cities to download. Let’s assume you place
the current week’s reports in a folder named Current. You could
create a script that:
• Changes the name of last week’s Current folder to Prior.
• Creates a new folder named Current.
• Uploads your current weekly reports to the Current folder.
You can also create scripts for downloads that you do repeatedly.

The Scripting Utility 69


WS_FTP Pro
Using Scripting
Start the Scripting Utility by doing one of the following:
• From the Tools menu, select Script.
• Click the Windows Start button and select Programs ->
WS_FTP Pro -> WS_FTP Pro Scripting Utility.

Writing and Debugging Scripts


To write and/or debug a script, start the Scripting Utility.
The Script Editor/Debugger window appears.

An MS-DOS window is automatically opened behind the Editor/


Debugger window to show you the output of SHELL commands.

Executing Scripts
You can execute scripts from either the Command Prompt or
from the Scripting Utility itself.
Executing a Script from the Command Prompt
Go to the Command Prompt and type ftpscrpt followed by the
appropriate command line parameters. For example:
ftpscrpt -f script1.scp
There are other parameters you can use with the ftpscrpt command.
For detailed information, go to the Scripting Utility online Help and
see “Executing Scripts.”
To be able to run a script from any location on your hard disk, we
recommend that you place the Scripting Utility folder in the Path
statement in your Autoexec.bat file – if you are running Windows 98,
Windows ME, and Windows XP. If you’re using Windows NT or
Windows 2000, add the WS_FTP Pro folder to the path variable in the
System Environment.

70 User’s Guide
WS_FTP Pro
Running a Script from the Scripting Utility
To run a script from the Scripting Utility, start the utility, open
the script, and click Go.

Example
In the following example, the script:
1 Turns on the Trace command to send detailed information to
the transfertrace.txt file.
2 Creates a log called transferlog.txt in the C:\ directory.
3 Logs onto the server with the user name sdavis.
4 Logs onto the server with the password fourthandgoal.
5 Connects to the FTP server ftp.mywebprovider.com.
6 Changes the remote directory to /user/sdavis/images.
7 Changes the local directory to C:\My Documents\My Pictures
8 If the MGET is successful, the script executes the FILEDELETE
label.
9 If the MGET fails, the script executes the DISCONNECT label.
10 All files ending in .jpg are copied from the remote directory to the
local directory.
11 This line identifies the FILEDELETE label.
12 All files ending in .jpg are deleted from the /user/sdavis/images
remote folder.
13 This line identifies the DISCONNECT label.
14 Disconnects from the FTP server.

The Scripting Utility 71


WS_FTP Pro
72 User’s Guide
WS_FTP Pro
Chapter 12: Scheduler
The WS_FTP Pro Scheduler lets you create FTP tasks or “jobs”
for transfers that you need to perform repeatedly or manually at a
particular time. Each task can consist of any number of uploads and
downloads of files and folders.
This chapter gives an overview of the Scheduler and some examples
of how you might use it. For detailed instructions on using the
Scheduler, start the Scheduler and use its online Help.

Using the Scheduler


To access the Scheduler window, do one of the following:
• Select WS_FTP Scheduler from the Tools menu in the
WS_FTP Pro Classic interface.
• Click the Windows Start button and select Programs ->
WS_FTP Pro -> WS_FTP Pro Scheduler.

Once you are in the Scheduler window, you are ready to set up a file
transfer task. You can:
• Add a pre-existing script to run at a particular time. (For more
information on creating scripts, see “Chapter 11: Scripting”
on page 69.)
• Drag and drop a file from the WS_FTP Pro Classic or
Explorer Interface to the Scheduler window to create an
upload task.
• Create a new transfer/custom task.
• Modify or delete tasks.
The WS_FTP Pro Scheduler will run the task at the time you schedule
it to run, or you can make the task run on demand by using the Run
Now option.

Scheduler 73
WS_FTP Pro
Examples
The following are examples of how you might use the WS_FTP
Scheduler.
Adding a Script to the Scheduler
To add a script to the scheduler:
1 From the File menu, select New > Custom.
A Schedule Item Properties dialog appears.

2 In the Start Date and End Date boxes, set the dates for when
you want this recurring task to begin and when you want it to end.
3 In the Start Time box, enter the time of day you want the task to
be run.
4 In the Executable box, enter the full path to the ftpscript.exe
application.
5 In the Command box, enter -f followed by the full path to the
script you want WS_FTP Scheduler to run. If the path contains
spaces, put quotation marks around the path.
6 If you are on an NT or Windows 2000 or XP workstation, you
must enter your NT/2000 user login and password in the boxes
provided.

Note
If you are on a domain, include the domain name in the User Login
box. Example: IPSWITCH_D\userid

74 User’s Guide
WS_FTP Pro
7 Select the frequency of the recurring transfer in the Schedule
Frequency area.
8 Click OK to add this task to the scheduler.
Updating a Web Site on a Nightly Basis
If you have a Web site you would like to update every night, without
having to manually upload all of the files you have recently changed,
you can set up a scheduled task to have it run as frequently as you like.
Scheduling items:
1 Select the files in WS_FTP Pro and select Send to Scheduler
from the right-mouse menu.
You can select multiple files or folders by holding the Ctrl key
and clicking the name.
The Schedule Item Properties dialog appears.
2 In the Start Date and End Date boxes, set the dates for when
you want this recurring task to begin and when you want it to end.
3 In the Start Time box, enter the time of day you want the task to
be run.
4 The Executable, Command, and Task Name boxes are filled in
for you. (Note that in the Command box, there is a .tmp file
identified. This file tells the application which files to download
and where to transfer them to and from.)
5 If you are on an NT, Windows 2000 or XP workstation, you must
enter your NT, 2000, XP user login and password in the boxes
provided.
6 Select the frequency of the recurring transfer in the Schedule
Frequency area.
7 Click OK to add this task to the scheduler.

Scheduler 75
WS_FTP Pro
76 User’s Guide
WS_FTP Pro
Chapter 13: Using Firewalls
Some organizations separate their local networks from the rest of the
Internet by installing a firewall or “gateway.” A firewall is a system or
software which is configured to prevent particular types of access or
information from entering the network. Most firewalls block the flow
into the local area network, but allow individuals to access most
resources outside of the network.
WS_FTP Pro lets you enter information about a particular firewall
into a firewall configuration, which you can then use when connecting
to a particular FTP site from behind that firewall. You can configure
the firewall once, and then assign that firewall configuration to those
sites that require it.
With the FireScript editor, you can edit firewall scripts to work the
way you want them to work. For more information, see “Appendix A:
FireScript Editor” on page 89.

Multiple Firewalls
There are several reasons you might want to create more than one
firewall configuration. If you use a laptop computer in different
locations that have different firewalls, you will want to set up a
firewall configuration for each location, so you can switch to the
appropriate firewall configuration when you are in each location.
Another reason you might want to set up multiple firewall
configurations is that your network could have more than one router
configured as a firewall. In this case, you would assign a different
firewall configuration to an FTP site depending on which part of the
network you are working from.
Furthermore, you might have a number of trusted sites (for example,
FTP sites owned by your company) for which you would use a
different firewall (or no firewall).

Using Firewalls 77
WS_FTP Pro
Firewall Types
The following table lists all conventional firewall types and the
information about each that you will need to procure and enter
into WS_FTP Pro.

Type of Firewall Information you need to enter


in WS_FTP Pro
Proxy OPEN Host Name (or Address)
SITE hostname Host Name (or Address), User Name (ID)
Transparent User Name (ID), Password
USER after logon Host Name (or Address), User Name (ID),
Password
USER fireID@remoteHost Host Name (or Address), User Name (ID),
Password

USER remoteID@fireID Host Name (or Address), User Name (ID),


@remoteHost Password

USER remoteID Host Name (or Address), User Name (ID),


@remoteHost fireID Password
USER with no logon Host Name (or Address)
SOCKS4 and SOCKS5 Host Name (or Address), User Name (ID),
Password

Configuring a Firewall
To enter firewall information, you will need to get data about your
For some router-based
firewalls, you will want to firewall from your network administrator. For more information, see
use passive mode, in which Firewall Types above.
the data connections are
established by the FTP
client (WS_FTP Pro) rather To configure a firewall:
than by the FTP site.
1 Click the Options button.
2 Select the Firewall dialog.
3 Click the New button.
4 Follow the directions on the New Firewall wizard.
5 When you click Finish, the firewall will be added to the
Configured Firewalls list.

78 User’s Guide
WS_FTP Pro
You can now assign the firewall configuration to the site, as
described in Using a Configured Firewall below.

Using a Configured Firewall


Once you have configured a firewall, you can then apply the firewall
configuration to an FTP site.
On the Connect to Remote Host dialog:
1 Select a site.
2 Click the Edit button.
3 Select the Advanced dialog.
4 In the Firewall box, select a firewall configuration.

Using Firewalls 79
WS_FTP Pro
80 User’s Guide
WS_FTP Pro
Chapter 14: Using the Command Line
You can use the command line from the MS-DOS prompt to run the
WS_FTP Pro Classic interface.
When you use the command line, you are actually running a subset of the
functionality of the Classic interface. Using the command line, you can:
• Upload and download files
• Specify ASCII or binary transfer mode
• Convert file names to lowercase when uploading
• Set up pre-scheduled transfers
• Create batch files that will handle multiple commands

Basic Command Line Syntax

So you can use the The following illustrates the correct command line syntax, broken down
command line from any by argument type.
location on your hard disk,
we recommend that you (command name: wsftppro) (source) (destination)
place the WS_FTP Pro
folder in the Path statement
in your Autoexec.bat file, if Written out, a command using this format would look like this:
you are running Windows
98, 2000, ME, or XP. If wsftppro -s local:c:\tartan.bmp -d robert!border:/pub/tartan.bmp
you are using Windows NT,
add the WS_FTP Pro folder The section below shows the breakdown of that command into the parts
to the path variable in the
System Environment. illustrated above. The command name wsftppro must always be placed in
Otherwise, change to your the beginning of the command.
WS_FTP Pro folder when
you use the commands.
Site Information
wsftppro -s local:c:\tartan.bmp -d robert!border:/pub/tartan.bmp

If you use a configured site from the command line, WS_FTP Pro uses the
User ID, Password, and Account Name you saved in the site configuration.
To do this, place the site folder and site profile in front of the remote
directory (this can be either the source or the destination). The site folder
and site profile has to be separated by the ! symbol. In the example above,
we use the border site profile stored in the robert folder.
If you have saved a password with the site, WS_FTP logs you on using the
saved password. If you have not saved a password with the site, you will
receive the regular password prompt, unless you use the -u and -w
arguments.

Using the Command Line 81


WS_FTP Pro
For example:
wsftppro -u username -w password -s robert!border:/pub/tartan.bmp -d
local:c:\armstrong\

If you have saved an account name in the site configuration, the command
line logs you on using the saved account name. If you have not saved an
account name, you can use the -c argument to specify the account name
when you enter the command line. For example:
wsftppro -c account -s robert!border:/pub/tartan.bmp -d local:c:\armstrong\

If you do not use a configured site profile, you must put the IP address,
URL, or host name in the source or destination argument to connect to that
site. See the Transfer Source and Transfer Destination sections for
examples of command line commands that use this.
Transfer Source
wsftppro -s local:c:\tartan.bmp -d robert!border:/pub/tartan.bmp

The transfer source argument begins with the -s argument, followed by the
label for the source, and the path to the item or items being transferred. If
the source of the transfer is your local system, the source label is local. If
you are doing a download, the source label is either the site folder!site
name or the IP address, FTP URL, or Host name of the FTP site. For
example:
wsftppro -s robert!border:/pub/tartan.bmp -d local:c:\tartan.bmp

or
wsftppro -s ftp://username:password@border.ipswitch.com/pub/tartan.bmp -d
local:c:\armstrong\

or
wsftppro -u username -p password -s 156.21.50.78:/pub/tartan.bmp -d local:c:\

Transfer Destination
wsftppro -s local:c:\tartan.bmp -d robert!border:/pub/tartan.bmp

The transfer destination argument begins with the -d argument, followed


by the label for the destination, and the path to where item or items are
being transferred to. If the destination is your local system, the destination
label is local. If you are doing an upload, the destination label is either the
site folder!site name (as in the example above) or the IP address, FTP
URL, or Host name of the FTP site. For example:

82 User’s Guide
WS_FTP Pro
wsftppro -s local:c:\tartan.bmp -d ftp://username:password@border.ipswitch.com/
pub/tartan.bmp

or
wsftppro -s local:c:\tartan.bmp -u username -w password -d 156.21.50.78:/pub/
tartan.bmp

File Transfer Options


Uploading Files
To upload a file, use the basic command syntax with the file or files you
want to upload identified in the source argument. For example; if you want
to copy the file tartan.bmp from the armstrong folder on your C: drive and
place it in the /pub/ folder on the site identified in the border site profile
use:
wsftppro -s local:c:\armstrong\tartan.bmp -d robert!border:/pub/tartan.bmp

or,
wsftppro -s local:c:\armstrong\tartan.bmp -d robert!border:/pub/

Notice that the second option omits the file name from the destination
location. You can do this when you want the transferred file to have the
same name as it does in the source location. However, note that you must
enter the trailing slash after the destination folder in order for this to work.
Downloading Files
Use the same command syntax as described above for downloading files,
except that, the source of the transfer is the remote system instead of your
local system.
wsftppro -s robert!border:/pub/tartan.bmp -d local:c:\armstrong\tartan.bmp

In the example above, we are connecting to the remote system using the
border site profile and downloading the tartan.bmp file to the armstrong
folder on our C: drive.
Renaming Files
To rename a file during the upload, enter a new file name after the
destination folder. For example, to upload the Tag.doc file and rename it
NewTag.doc on the FTP site, type:
wsftppro -s local:c:\sports\Tag.doc -d robert!border:/pub/drop/NewTag.doc

Using the Command Line 83


WS_FTP Pro
Transferring multiple files from the same location
If all the files you want to transfer are in the same folder, you can use the
wildcard characters, * and ?, in the file name. For example, if you want to
upload all of the files in C:\Sports\ use:
wsftppro -s local:c:\sports\*.* -d robert!border:/pub/drop/

Or, to transfer all .doc files in the same folder, enter (at the MS-DOS
prompt or in a batch file):
wsftppro -s local:c:\sports\*.doc -d robert!border:/pub/drop/

To transfer multiple files not in the same folder, see “Multiple Folders or
Commands” on page 86.
Converting File Names to Lower Case
When uploading files, you can have WS_FTP Pro convert file names to
lower case by adding the -lower argument at the end of the command line.
For example, if the file you want to transfer is named Tag.doc, WS_FTP
Pro can upload it as tag.doc by using:
wsftppro -s local:c:\sports\Tag.doc -d robert!border:/pub/drop/ -lower

File Transfer Modes


You can transfer files in binary mode or in ASCII mode. We recommend
using binary mode to transfer all files unless you know the file contains
only text, then you are able to use ASCII mode.
To specify the transfer mode, you use the -binary or -ascii argument at
the end of the command string.
When you do not specify the transfer mode in the command line, WS_FTP
Pro transfers the file in whatever file transfer mode is the default in the
WS_FTP Pro Classic interface. Therefore, if you plan on using the
command line more than just occasionally, set the Startup Transfer
Mode to Auto Detect.

Transferring Files and Folders with Spaces in the


Name
If you are transferring a file whose name has spaces in it, you have two
options. You can enclose that portion of the command line in quotes, or use
the MS-DOS name of the file (as shown in the Dir listing you get from the
MS-DOS prompt.)

84 User’s Guide
WS_FTP Pro
Enclosing the Command Line in Quotes
If the file you want to transfer is named my tartan.bmp, use:
wsftppro -s "local:c:\armstrong\my tartan.bmp" -d "robert!border:/pub/my
tartan.bmp"

Using the MS-DOS Name


If the file you want to transfer is named my tartan.bmp in Windows 95, but
appears as my~1.doc when you use the Dir command at the MS-DOS
prompt, you can use the MS-DOS file name to transfer the file. To do this
(using the first example in this chapter), enter (at the MS-DOS prompt or
in a batch file):
wsftppro -s local:c:\armstrong\my~1.bmp -d robert!border:/pub/my~1.bmp

Using a Batch File


Instead of typing the command at the MS-DOS prompt, you may find it
more expedient to enter the command line into a batch file (a text file with
You cannot run 2 batch the file extension .bat). This makes it easier to correct mistakes and to run
files at the same time.
the same command again.
You run the command by invoking the .bat file at the MS-DOS prompt,
double-clicking the icon for the .bat file from within Windows, or running
the .bat file from another application (such as WS_FTP Pro Scheduler).
Here is a batch file (for the example at the beginning of this chapter) as
viewed from a Windows text editor:

When you run the batch file named tartan.bat, WS_FTP Pro uploads the
tartan.bmp file to the border FTP site.
Note that using a batch file involves placing the command name wsftppro
at the beginning of each line in the file. Since each instance of the
command name starts the WS_FTP Pro application (and connects to the
FTP site), you would only use a batch file to work with one command at a
time. If, on the other hand, you want to issue a group of commands, follow
the procedure in “Multiple Folders or Commands” on page 86.
Remember that if a file name has a space in it, you must enclose that entire
argument in quotes.

Using the Command Line 85


WS_FTP Pro
Multiple Folders or Commands
To transfer files to or from multiple source or destination folders, or to
issue multiple commands, use the -m argument followed by the name of a
text file that contains the commands. To transfer files from several
locations on the hard disk described in the first example in this chapter,
enter (at the MS-DOS prompt or in a batch file) something like:
wsftppro -m xferall.txt

where the content of xferall.txt (as viewed in Windows Notepad) is:

Note that:
• The command name wsftppro must not appear in the text file
• Each line of text must contain only one command line.
• Each command line can contain any of the arguments described in
this chapter.
• If a file or folder name has a space in it, you must enclose that entire
argument in quotes.

Pre-scheduled Transfers (“Automated Transfers”)


You can use the command line to schedule transfers that you want to run
automatically. To do this, you create a batch file as described above, and
then run the batch file using WS_FTP Scheduler. For more information,
see “Chapter 12: Scheduler” on page 73.
When you use the command line to perform a pre-scheduled transfer, you
may use the -quiet parameter to prevent WS_FTP Pro from displaying a
message box if an error occurs. This is particularly useful for avoiding a
situation in which WS_FTP Pro might otherwise prompt for user input,
such as clicking the OK button in an error message. This way, you can pre-
schedule transfers to run automatically when you’re not at your computer.
(When you return to the computer, you can always check the log file to see
if there were any problems.)

86 User’s Guide
WS_FTP Pro
To use the examples shown previously, you could do a pre-scheduled
transfer by creating the following batch file:

as well as the following text file:

Then, you could have the Scheduler run the auto10.bat file at 10:00 PM
each night.
Remember that if a file name has a space in it, you must enclose that entire
argument in quotes.

Extras
Here are a few more arguments and uses of the command line that some
users have found helpful. These are listed below.
To have WS_FTP Pro display a dialog box that prompts you for the
command line, type: wsftppro -ask
To launch the WS_FTP Pro Classic interface and default to the site
configuration for the border site: wsftppro -p robert!border
To prevent WS_FTP Pro from displaying error messages, use the -quiet
argument. This is useful if you want to do automated transfers when no
one is around to respond to a message. An example:
wsftppro -s local:c:\armstrong\tartan.bmp -d robert!border:/pub/tartan.bmp -
quiet

Using the Command Line 87


WS_FTP Pro
Summary
Here is a list of all arguments you can use in the command line.
Arguments When to use Important
(alphabetical) restrictions
-ascii Use -ascii when transferring text files.
-binary Use -binary when transferring non-
text files such as executable programs,
word processing documents, and so on.
-c account Use -c to work with sites that require an
account for the user to log in, or to access
partitions. account is the name of your
account on the FTP site.
-d Use -d to indicate the destination path You must specify one
path_and_filename and desired file name of the file you want of the following:
to upload or download. -d local:
-d folder!profile
-d ip address:
-d ftp://address
-lower Use -lower to have WS_FTP Pro con- If you use the
vert file names to lower case letters when -lower argument, it
you transfer from your PC to an FTP site. must be at the very
end of the command.
-m text_file Use -m to do transfers that involve multi-
ple source locations, multiple destina-
tions, or multiple commands. text_file is
the name of the file that contains the com-
mands.
-quiet Use -quiet to prevent WS_FTP Pro
from displaying message boxes.
-s Use -s to indicate the source path and
path_and_filename file name of the file you want to upload or
download.
-u userID Use -u to use sign on using the userID.
-w password Use -w to identify password as the pass-
word to use to connect to the ftp site.

88 User’s Guide
WS_FTP Pro
Appendix A: FireScript Editor
This appendix describes the purpose and syntax of the FireScript
language and how it used to make an FTP connection through a
firewall.

What is a FireScript?
A FireScript allows you to customize the sequence of commands and
responses used to log in to an FTP server. This customization may be
necessary if your FTP server requires any non-standard commands to
be issued before or after logging in, or if certain types of firewalls are
between the client and the server.
FireScripts are written in a custom FireScript language, developed
specifically for use by WS_FTP Pro. FireScripts can perform the same
functions that WS_FTP Pro uses internally to connect to a host or
firewall type. FireScripts, however, let you determine if and when
these functions are used. In particular, the FireScript determines when
to autodetect the host type, and when to go secure with an SSL
connection. The script can choose whether or not to try the XAUTH
command, and also whether it is necessary to log in to a user account
after sending the user ID and password.

FireScript Components
A FireScript is broken into three sections: fwsc, comment and script.
As in a Windows ini file, the name of the section appears alone on a
line, in square brackets, followed by the rest of the section.
The fwsc section is internally structured with name=value pairs in the
same manner as a Windows ini section. It contains identifying
information about the script, and indicates what variables will be
required by the script.
The comment section is free-form text intended for human readers. It
is ignored by the script executable.
The script section contains the scripts executable portion and
conforms to the FireScript syntax.

FireScript Editor 89
WS_FTP Pro
Below is an example FireScript demonstrating this layout.
[fwsc]
author=Ipswitch
connectto=firewall
… other values not shown would typically include 'required=' and
'version='
[comment]
This is an example script that connects to an FTP proxy. It is
incomplete because many of the commands required to connect have
been deleted for clarity. The main purpose is to demonstrate the
organization of the FireScript into three sections.
[script]
send ("OPEN %HostAddress") {}
tryssl;
send (“USER %HostUserId”)
{
case (300..399) :
continue ;
case any :
return (false) ;
}
… most of script not shown due to the size.
label success;
gossl;
return (true);
The fwsc Section
The fwsc section lets you specify information about the script in a
manner similar to a Windows ini file. Most of the parameters are
present for informational purposes. This includes the author and
version fields. A few of the parameters are used by the script
executive in determining whether or not to show the login dialog, and
which IP address to use.

90 User’s Guide
WS_FTP Pro
The parser recognizes and stores values for the following parameters:

fwsc Parameters

Parameter Meaning and Values

author Informational only. Author of the FireScript.

version Informational only. Version number of the script file.

verdate Informational only. Date on which this version was


updated.

required A comma delimited list of fields that must be present for


the FireScript to execute. The login dialog is displayed if
all required fields are not present, and the Connect button
is disabled until all required fields have been filled in.

preask A comma delimited list of fields that are not required but
which, if not present, will cause the login dialog to be
displayed.

connectto ‘firewall’ or ‘host’. This parameter tells WS_FTP Pro


which IP address to use when establishing the connection.

Unrecognized parameters are ignored.


The Comment Section
Use the comment section to describe the actions of the FireScript.
The FireScript code should be well described, so it will be easier to
understand and update later. The FireScript executive ignores the
comment section.
You can also insert comments in the script section by using the ‘//’
comment delimiter as in C++ and Java. Any text on a line following
the ‘//’ sequence is ignored by the parser.
The Script Section
The script section consists of a sequence of statements that send
commands to the firewall or to the FTP server. Some of these
statements have results, or trigger responses from the firewall or FTP
server. There is a simple control structure that allows the script to take
different paths of execution, based on these results or responses.

FireScript Editor 91
WS_FTP Pro
The Connection Sequence
A request for connection to an FTP site comes from user actions in
either the Classic or Explorer interface, or by one of the WS_FTP Pro
utilities such as Find or Synchronize. Sometimes, additional
connections are requested by the Transfer Manager to resume or to
speed up transfers. All connections are created by the
CreateConnection function in the WS_FTP Pro API.
The connection sequence consists of two stages.
• Stage 1: Establish the connection with either the firewall or the
FTP server.
• Stage 2: Send commands to log in and authorize the connected
user. It is during this stage that the commands in a FireScript are
executed.
The first stage works the same whether WS_FTP Pro is using a
FireScript or using one of its internal firewall types. Before executing
the script, WS_FTP Pro checks the fwsc section for the list of fields
marked as required and preask. If any are missing, it displays the
login dialog. If the user fills in all required information and presses
Connect, WS_FTP Pro then checks the connectto field. Depending
on this field, it will either establish a connection to the firewall's IP
address and port, or to the FTP server's IP address and port. If this
field is not present, WS_FTP Pro defaults to the IP address of the
firewall, if present.
After the connection is established successfully, and a valid socket is
opened, WS_FTP Pro calls the FireScript executive to execute the
FireScript. If the FireScript logs in correctly and returns success, the
CreateConnection function returns the authorized connection to the
caller.

The FireScript Language


The FireScript language contains a limited version of elements you
may be familiar with if you have written scripts or programs in other
languages. It uses variables, declarations, and statements to perform
actions and direct program flow. Each of these elements is described
in the following sections.

92 User’s Guide
WS_FTP Pro
Syntactically, FireScript statements are terminated by semicolons.
They may therefore extend across multiple lines, and you can have
multiple statements on a line. A string however, may not span lines.
The final closing quote must appear on the same line of source code as
the opening quote. For example, the code below is valid:
contains
(
lastreply,
"Welcome to my cool FTP site"
)
;
but the following is not:
contains ( lastreply, "Welcome to
my cool FTP site" );

FireScript Variables
Firescripts work with the login information provided by WS_FTP Pro.
This includes at least the user IDs and passwords, the IP address and
port of the FTP server, and sometimes the IP address and port of the
firewall. These fields are often read from a site profile, an FTP URL,
or from the command line. As described before, if some of the
required information is missing, the connect sequence presents the
login dialog so that the user can enter it interactively. The script
executive stores this information in a set of intrinsic variables before
beginning execution. In addition there are intrinsic variables that
contain the results of the last command issued. These are set by the
script executive after such statements are executed.
The syntax for using a variable depends on the statement or
expression in which it is used. Below is a list of all the intrinsic
variables:

FireScript Intrinsic Variables

Variable Meaning and Usage

FwUserId The user's user ID on the firewall. Some firewalls


require users to log in to the firewall before
allowing other connections to be made through the
firewall.

FireScript Editor 93
WS_FTP Pro
FwPassword The user's password on the firewall. Required if
the user must log in to the firewall.

FwAccount Account on the firewall. Required if the user must


specify an account on the firewall. Practically
unheard of but included in case required.

FwAddress The IP address of the firewall. Required if the user


must connect to the firewall, and have the firewall
in turn connect to the FTP server and act as proxy.

HostUserId The user's ID on the FTP server. Almost always


required. Specify ‘anonymous’ if the user does not
have a user ID on the server.

HostPassword The user's password on the FTP server. Almost


always required in conjunction with a user ID. Use
your email address as the password when using
‘anonymous’ for the user ID.

HostAccount The user's account on the FTP server. To access


certain information in some operating systems,
FTP servers on those systems require an account to
be sent after successful login with user ID and
password.

HostAddress The IP address of the host. The script executive


may connect directly to this address, or will send
the address to a firewall that will act as a proxy.

LastFtpCode The 3-digit, numeric code of the last response


received from the FTP server or firewall. For
example, after a successful login, the LastFtpCode
would be 230.

LastReply The text of the last response from the server. e.g.
"230 user logged in"

FireScripts neither need nor use user-defined variables, so there are no


variable declarations. Also, since the FireScript cannot directly set the
value of one of the intrinsic variables, there is no need for any
assignment statements.

94 User’s Guide
WS_FTP Pro
String Expansion
Some of the commands and functions in the FireScript language take
strings as arguments. To these you may either pass a string variable or
a string literal surrounded by double quotes, e.g. “This is a string.” To
put a double quote inside a string, preface it with the percent sign ‘%’.
The percent sign ‘%’ is used as an escape character to embed
variables and quote characters in strings.
The sequence %% is replaced by a single %.
The sequence %" is replaced by ".
% followed by the name of a variable is replaced by the value of the
variable.
For example, the script statement below:
send ("OPEN %HostAddress")
If HostAddress is equal to “ftp.ipswitch.com” when this script is
invoked, the command will be expanded to:
send ("OPEN ftp.ipswitch.com")
the expression,
contains (lastreply, "%% full")
will be expanded at runtime to:
contains(lastreply "% full")
and the statement
send ("SITE SETLOG %"f:\log files\access.log%"
-clear")
the expanded string sent will be:
SITE SETLOG "f:\log files\access.log" -clear
Passing a string variable is equivalent to, but faster than passing a
string literal that expands the variable.
Example:
isempty(FwPassword)
is equivalent to but faster than
isempty("%FwPassword")

FireScript Editor 95
WS_FTP Pro
Function Expressions
Currently the FireScript language does not allow full-blown
expressions. It does include two function expressions with some
boolean operators for evaluating the state of variables. They are
contains and isempty. The boolean operators supported are not and
and.
The contains function takes two strings and returns true if the second
string is found in the first. The search is case sensitive. Both strings
are expanded first.
The isempty function takes a string and returns true if there are any
characters in the string. You can use it to test if a value was specified
for one of the intrinsic variables.
The not boolean operator reverses the value returned by the function
expression.
Example:
If the HostAccount variable contains the value ‘usr987i’
isempty (HostAccount) will return false but
not isempty(HostAccount) will evaluate to true.
The and boolean operator requires all specified conditions to be true.
Example, If the HostAccount variable contains a value such as
‘usr987I’
The last reply from the server is "230 User logged in, please send
account"
then the following expression will evaluate to true:
case (200..299) and not isempty(HostAccount)
and contains(lastreply, "ACCOUNT") :

FireScript Statements
The FireScript language includes several types of statements.
Statements cause actions to be taken, or direct the flow of execution of
the script. The following sections describe the types of statements.

96 User’s Guide
WS_FTP Pro
Switch Statements
The send statement and the xauth statement are called switching
statements, because they imply an immediate switch statement based
on the server response. The switch statement contains case statements
very similar to Java and C++ case statements, except the conditions
are not constants checked against a single expression.
A switching statement such as send and xauth is always immediately
followed by a set of case statements between curly braces { <case
statements> }. The set of case statements may be empty, in which case
there is nothing between the curly braces, but the braces must be
present.
Example of Switch Statement:
send ("USER %FwUserId") {}
The send statement takes a single argument, the string to be sent to the
server. The string is expanded before it is sent. The maximum legal
length for the expanded string is about 512 bytes, the maximum length
of an FTP line. The send command then waits on a response from the
server and evaluates the response against the conditions in each of the
enclosed case statements.
The xauth statement takes no arguments. It examines the welcome
banner for an xauth invitation supplied by WS_FTP server. If it is not
connected to WS_FTP server or cannot find the invitation, xauth does
nothing, and the case statements are not evaluated. If it does find the
invitation, it encodes the user ID and password and sends the xauth
command to the server. It then waits on the response and evaluates it
against the case statements just as the send command does.

Case Statements
Case statements are enclosed in switching statements. A case
statement lists a set of conditions that the server response must satisfy
for the case to be activated.
The list of conditions is followed by a colon ‘:’.
Case statements are processed in the order in which they are listed
until the first match is found.

FireScript Editor 97
WS_FTP Pro
Once a match is found for the conditions in a case statement, then the
nested statements are executed.
A case condition may be a list of FTP codes and code ranges, a
function expression, or one of the special cases, any and timeout.
If a case includes a list of ftp codes/ranges, the list must appear first,
followed by any function expressions. The list is comma separated
and enclosed in parentheses. Each item in the list must either be a
single 3-digit code, or a range specified by two 3-digit codes separated
by a double period ‘..’. The range is inclusive and it is recommended
that the lower bound be specified first.
The special cases any and timeout must appear by themselves.
Examples of Case Statements
The following case condition will match if the returned ftp code is
either 226 or 231.
case (226, 231) :
The following case conditions will match if the returned ftp code is
either 226 or 231, or between 250 and 299 inclusive. So 250 itself
will match, as well as 251, 252 etc. up to 299
case (226, 231, 250..299) :
The following case conditions will match if the returned ftp code is in
the 300s and the returned string contains the text “email address”.
case (300..399) and contains(lastreply, "email
address") :
The following case conditions will match if the returned ftp code is
500 or greater and the returned string contains the specified error
message
case (500..999) and contains(lastreply, "user
%HostUserId cannot login.") :
If a case contains more than one condition they must be separated by
and. The and operator specifies that all the listed conditions must be
satisfied. So in the previous example, the ftpcode must be between
500 and 599 AND the last reply must also contain the specified string.
Both must be true. If either is false, the case will not match.

98 User’s Guide
WS_FTP Pro
The not operator reverses the result of a function. We may for
example want to make sure that the last response does not contain a
certain string. For example:
case (500..599) and not contains(lastreply,
"server is busy") :
There is no or operator. The same logic may be applied by using
multiple case statements.
The following case condition will match if the send command timed
out.
case timeout :
Case any is the catch all case, and if present should be the last case in
the enclosing list. If it is followed by other case statements they will
never be evaluated.
For example, the following case condition will always match.
case any:
If case statements overlap and two case statements would match the
response, then the first one encountered will be executed.
Example:
case (200..299) and contains(lastreply, "please
send user account") :
...
case (200..299) :
...
If the case with the contains function appeared after the one without it,
it would never get evaluated.

Continue
Unlike C and C++, execution inside a case statement does not fall
through to the next case statement. Only the statements listed under
the activated case are executed. Then execution continues at the next
statement after the enclosing switching statement. The continue
statement jumps to the statement following the enclosing switching
statement. It does the same thing as a break, inside of a C/C++ switch
statement, except it is not absolutely necessary.
Switching statements may not be nested. That is, neither a send
statement nor an xauth statement may appear inside a case statement.

FireScript Editor 99
WS_FTP Pro
Jumps and Labels
A jump statement transfers execution to another part of the script. The
jump destination must be defined by a label that also appears in the
script. The Ipswitch example FireScripts use jumps to different code
sequences from inside case statements, so the code that gets executed
depends on which case was activated.
A label declaration consists of the word label, followed by the name
of the label and a semicolon.
A jump statement consists of the word jump, followed by the name of
the jump destination, and a semicolon.
A label may not appear inside a case statement. You can't jump into a
case statement.

Return
The return statement acts like a function in that it takes a single
parameter, either true or false to indicate success or failure. It
terminates script execution and returns to the caller. If it returns true,
the connection is assumed to be logged in and authorized. If it returns
false, the caller may either try again or abandon the connection.

Autodetect
The autodetect statement examines the last reply from the server to
help determine the host type of the FTP server to which it is
connected. Autodetect expects to examine the welcome banner so the
statement should be placed immediately after the welcome banner is
returned. Here are two example banners returned from two popular
FTP servers. Autodetect would detect the first as being a Microsoft
NT server, and the second as being an Ipswitch WS_FTP server.
220 tstsrvnt Microsoft FTP Service (Version 3.0).
220 tstsrvws X2 WS_FTP Server 1.0.5 (1737223651)

100 User’s Guide


WS_FTP Pro
If connection was made directly to the host FTP server and the
welcome banner was already returned before the script begins
execution, then autodetect should be the first statement in the script.
If the connection was made to the firewall and the welcome banner
from the host ftp server becomes available later in the script, the
autodetect statement should be placed at that point. If the firewall
swallows or replaces the welcome banner from the ftp host, or for
some other reason, the ftp client never sees the welcome banner, then
leave out the autodetect statement. WS_FTP Pro will try to determine
the host type after the script executes.
Autodetect does nothing if the host type in the site profile is set to
anything other than ‘Auto Detect.’ The autodetect statement has no
return value and does not change the flow of the script.

SSL Statements
The tryssl and gossl commands attempt to open a secure channel with
the server via SSL. The difference between them is that if gossl fails,
the script will terminate and return false, while if tryssl fails, the
script will continue. The commands can appear more than once in the
program. If a secure connection was not requested, or has already
been established, the commands will do nothing. If the commands fail
to go secure, they will display a message box to the user, asking the
user if she wishes to continue in the clear, try again for SSL later in
the sequence, or abandon the connection. If the user chooses to
continue in the clear, future calls to tryssl or gossl will do nothing.
When the script completes, the script executive checks the SSL status
of the connection to make sure that a request for a secure connection
was honored. In the site profile, if the user selected Use SSL, then the
script executive will issue a warning to the user if the connection is
not secure. At this point, the user may abandon the connection. This
warning is issued if a secure connection was attempted and the user
chose to continue in the clear.
The placement of the attempts to open an SSL channel can be very
important, depending on the type of firewall through which the script
is connecting.

FireScript Editor 101


WS_FTP Pro
FireScript Key Words
Below is a complete list of all the keywords used and understood by
the language. You may not use these words as label names.

gossl tryssl autodetect

send xauth case

continue and not

any timeout return

jump label true

false

FireScript reserved words


The following words are reserved for future versions of the language
and the parser. You should not use these words to name your labels.

switch if for

next while loop

break function int

bool string var

password or

102 User’s Guide


WS_FTP Pro
FireScript statements

gossl tryssl autodetect

send xauth jump

return continue

FireScript intrinsic functions

contains isempty

FireScript intrinsic variables

FwUserId FwPassword FwAccount

FwAddress HostUserId HostPassword

HostAccount HostAddress LastFtpCode

LastReply

FireScript Editor 103


WS_FTP Pro
104 User’s Guide
WS_FTP Pro
Appendix B: Textual Error Messages
This Appendix lists common textual error messages. Each error message is
followed by an explanation of the error, and some possible workarounds or
solutions, if any exist.
Some of these error messages are returned by the FTP protocol and will
appear in the WS_FTP log, preceded by a three-digit reply code.
Others of these textual error messages may appear in dialog boxes generated
by WS_FTP Pro or your operating system.
For more information, see the KnowledgeBase on the Ipswitch web site,
www.ipswitch.com.

“Blocking call canceled”


There are several possible causes for this problem. Try these tests in the
order shown:
1 Disconnect from the FTP site if you are currently connected to it. Then
turn on passive mode. After you have done this, try reconnecting to the
site.
2 If you still receive this error message, set the network timeout for the
site to 120 in the Classic interface:
• If you are connected to a site, select Disconnect from the File menu.
• Select Connect from the File menu to view the Connect to Remote
Host dialog list.
• In the Configured Sites list, select the site.
• Click the Edit button.
• Select the Advanced dialog.
• Enter 120 or higher for the Network Timeout.
3 If you still receive this error after making the above changes, try the
command line FTP (not the WS_FTP Command Line) and see if you can
connect and how long it takes. Once you know how long it takes to
connect, enter this time into the Network Timeout setting on the
Advanced dialog of the site properties as described above.
4 If you still cannot connect please contact the FTP server administrator
for assistance.

Textual Error Messages 105


WS_FTP Pro
“Connection refused” or “Connection closed by
remote”
Either the host is not running an FTP server program, or else the FTP site is
accepting connections only from certain clients, or there is a conflict within
your network. See page 105 and follow steps 3 and 4.

“Disk quota exceeded”


The disk quota is not determined by WS_FTP Pro; it exists on the FTP site.
You can either delete some files on the site to make room for your upload (if
you have permission) or get more space from the site administrator.

“File too large to download”


This message is coming from the FTP site that you are connected to.
This site has a limit on how large a file you can download.

“Logon failure; Quitting.”


The FTP site is not recognizing or accepting your user ID and/or password.
Contact the FTP site administrator to verify that you are using the correct
User ID and password.

“MDTM”
The current FTP site does not support Month-Day-Time-Marking; this means
that after the file was uploaded, WS_FTP attempted to preserve the date and
time, but the FTP site does not support this feature. However, the files will
transfer correctly. Note that this is not a fatal error, even though it displays in
red.
You can disable this option by selecting Preserve filetime on upload
(MDTM support required) on Site Properties: Session.

106 User’s Guide


WS_FTP Pro
“User access denied”
The error “530 user access denied” indicates that you are not properly
logged on to the server. Make sure the information on the Host Info dialog
of site properties is correct. Common problems are spaces, case sensitive
entries, or incorrect user name or password. If you are unsure whether or
not you are using the correct user name and password, contact the FTP
site administrator.
Most FTP sites support anonymous logins where you do not have to
have an actual account on the FTP site in order to download files; the
user ID is the word Anonymous and the password is your e-mail address.
To test this, try connecting to the Ipswitch FTP site (ftp.ipswitch.com)
using the user ID “Anonymous.”
If you do have to have an actual account on the FTP server, for example,
a server where you place your web pages, then you will need to obtain a
user ID and password from the server administrator and enter them in the
host information tab.

Textual Error Messages 107


WS_FTP Pro
108 User’s Guide
WS_FTP Pro
Index dates and times
criteria for finding files
FTP (File Transfer Protocol)
client (defined) 1
and folders 66 server (defined) 1
Numerics Default Site 20 FTP (File Transfer Protocol)
“Disk quota exceeded” error (defined) 1
“530 user access denied” 107
106 FTP sites
download 25 accounts on 4
A download (defined) 1 viewing contents of 5
Accessibility 9 Drag and Drop 25 FTP URL (defined) 6
accounts on FTP sites 4
active edit 34 E G
Anonymous Connections 15
Editor/Debugger window 70 gateways 77
anonymous FTP 4
e-mail address 4 Getting Started 11
Ascii 28
error messages 87, 105
ASCII files 28
exe files 28 H
attributes for UNIX files 36
executable files 28
Auto 28 Help System 16
Explorer Interface 39
Auto reconnect 20 hierarchical folders. See
Explorer interface (defined) 5
autoexec.bat 81 folders
Automatic Connections 20 Hotdrop Folder 27
automating file transfers 86 F Hotdrops 27
file name as criteria for finding htm files 28
B files 65 html files 28
file names with spaces 84 HTTP 1
batch files 85
file size as criteria for finding
Batch Mode 26
files 67 I
Binary 28
“File too large to download”
bitmaps 28 installing WS_FTP Pro 3
error 106
“Blocking call canceled” error interfaces of WS_FTP Pro 4
files
105 Ipswitch, Inc.
ASCII 28
compressed, transferring getting software updates 8
C 28 giving feedback 8
cgi files 28 executables, transferring web site 8
chmod (command) 36 28
Classic interface (defined) 5 htm 28 J
client-server 1 html 28 jpg files 28
command line 81 postscript 28
command prompt 70, 81 Find Utility 63
“Connection refused” error 106 finding files and folders 63
L
FireScript 89 local area network 2
firewall types 78 Local System (defined) 5
D logging on 3, 4
firewalls 77
data connection 78 router-based 78 “Logon failure. Quitting.” 106

Index 109
WS_FTP Pro
M Request Properties 43 synchronizing files and folders
router-based firewalls 78 55
MDTM error 106
system requirements 2
messages
suppressing with the S
command line 87 scheduling transfers 75, 86 T
messages, error 105 scripting 69 text files 28
Microsoft Internet Explorer 7 example 71 Thumbnails 32
mirroring files and folders 55 Scripting Utility 69 time. See dates and times
modem 2 scripts, writing and debugging Transfer Arrows 13
modes for UNIX files 36 70 Transfer Manager 41
Month-Day-Time-Marking server Transfer Manager Dialogs 41
106 See also FTP site Transfer Manager Log
MS-DOS prompt 81 server (defined) 1 Window 44
SITE hostname (firewall) 78 Transfer Modes 28
N site. See FTP sites transfer modes
size of file as criteria for defined 31
name of file as criteria for
finding file 67 startup 31
finding files 65
software patches 8 transferring files
names (file) with spaces 84
spaces in file names See also downloading,
Netscape Navigator 7
transferring with uploading
New Features in version 7.0 2
command line 84 ASCII 28
SSL binary 28
O generating a certificate 48 compressed 28
Online Help 16 selecting a certificate 50 HTML 28
trusted authorities 50 images 28
P adding a certificate 51 jpg 28
exporting a certificate photographs 28
Passive Transfers 23
51 pictures 28
passive transfers 78
removing a certificate postscript 28
patches 8
52 scheduling 86
permissions for UNIX files 36
SSL (definition) 45 text 28
postscript files 28
certificate 46 with spaces, using
pre-scheduled transfers 86
certificate signing request command line 84
Proxy OPEN (firewall) 78
46 zipped 28
public folder 4
client 46 Transparent (firewall) 78
private key 46
Q public key 46 U
queuing transfer tasks 73, 86 session key 46
UNIX 36
Queuing Utility 73 startup
UNIX FTP sites 36
transfer mode 31
upgrades 8
suppressing error messages
R using the command line 87
upload 25
Remote System (defined) 5 upload (defined) 1
Synchronize Utility 55

110 Index
WS_FTP Pro
Upload Wizard 26
URL (defined) 6
“User access denied” 107
USER fireID@remoteHost
(firewall) 78
user interfaces of WS_FTP Pro
4
USER remoteID @remoteHost
fireID (firewall) 78
USER remoteID@fireID
@remoteHost (firewall) 78
USER with no logon (firewall)
78
Utility
Find 63
Queuing 73
Scripting 69
Synchronize 55

V
viewing
files and folders 5

W
Web browser integration 6
wildcard characters for finding
files and folders 65
World Wide Web 1
WS_FTP Find Utility 63
WS_FTP Pro Development Kit
8
WS_FTP Pro Toolbar 14
WS_FTP Queuing Utility 73
WS_FTP Scripting Utility 69
WS_FTP Server 7
WS_FTP Synchronize Utility
55

Z
zip files
transferring 28

Index 111
WS_FTP Pro
112 Index
WS_FTP Pro

S-ar putea să vă placă și