Copyright: Electricite de France


INDEX
HTTPTool V 1.0 For Windows

Installation

Running

Retrieve a remote resource from a HTTP server

Save a local file in a URL

View a local HTML file

Edit a local HTML file

View a remote HTML file

Hotlist

Proxy

Equivalences

Authentication

Help

Server Side

Misc. information

Copyright


INSTALLATION

Just execute install.exe and type in the destination directory where you want the application to reside in


Launching HttpTool

To run HttpTool click on HttpTool icon [image].

The main window looks like :

Help information is available for most of the menu choices and buttons


COPYRIGHT

HTTPtool V1.0 for Windows is a file transfer tool based on the PUT and GET methods from HTTP protocol.

It allows to retrieve remote HTML documents and copy on a local file system, and upload of local files on a remote server through HTTP.

HTTPtool is copyright 1995,1996 ELECTRICITE DE FRANCE.

Please carefully read the COPYRIGHT file enclosed in the distribution.

This software need winsock.dll.

Daniel GLAZMAN, Research Engineer,  Webmaster

Tel: [(int'l) 33 1] 47 65 35 70

Fax: [(int'l) 33 1] 47 65 34 19

Net:Daniel.Glazman@der.edfgdf.fr

webmaster@der.edf.fr

Electricité de France, Research and Development Division

1, avenue du General de Gaulle

92141 Clamart CEDEX - FRANCE

Windows version of HTTPtool is adapted from X/Motif version by D.Glazman and has been developed by Pascal FROMENT using DELPHI.

Pascal FROMENT, Engineer

Tel: [(int'l) 33 1] 46 20 29 89

Fax: [(int'l) 33 1] 46 20 28 96

Gemme Software Developpement

6, Rue d'Issy

92100 Clamart  - FRANCE

Net:100347,3615@compuserve.com

PascalFroment@msn.com


Options Menu

Click on items for help.


Proxy

A HTTP proxy can be defined using the "Proxies" menu item.

The No Proxy For field contains a list of comma-separated Internet domains or IP

 addresses for which no proxy should be used. These domains and address es can contain two kinds of wildcards:
?	represents any char
*	represents any set of any chars
IMPORTANT WARNING:
 no spaces are allowed in the No Proxy For field!
For instance:
cli51??.der.edf.fr,*.dept.edf.fr,130.98.16.*


Equivalences

You can define an equivalence between an URL and a local directory in your file system. This features allows to use the Compute buttons [image] in the application's window.

If you enter a local file's name whih is "under" the given directory and compute the corresponding URL, HTTPtool will build an URL using the given equivalent URL and the relative path to the file from the given directory.

You can also compute a file path from an URL.


Authentication

If you enter a local file's name which is resides "under" the equivalence directory and then compute the corresponding URL, HTTPtool will build an URL using the given equivalent URL and the relative path to the file from the given directory.

You can also compute a file name from an URL.

Authentication

Authentification must be enabled on server side.

You can store your password. (strongly coded) in your httptool.ini.

WARNING: this can be a security hole even if it brings comfort !!!

If prefer keeping your password unsaved, you'll have to re-enter it each time you launch httptool and need authentication.


Edit Hotlist

You can define a hotlist containing a set of URLs.

This list is accessible clicking on "Hotlist" in the main window.

Select a hotlist item, by double-click or click+OK, will close the hotlist panel and copy the selected URL into the URL editable field in the main window.

To add a new URL in the list, just type it in the editable field in the hotlist panel and click on "Add/Remove".

To remove a URL from the list, select it by a single click and click on "Add/Remove".


Browser and Editor Configuration

You can define a HTML browser and a HTML editor choosing the "Browser and Editor" menu item. The tools are then called when you use the "Edit" and "View" buttons in the main window.


Retrieve a remote resource from a HTTP server

First your must give a file name for remote resource storage in the local filesystem. This filename can be entered using the keyboard in the top editable field of the main window or chosen through a FileSelector clicking on "Browse".

Then give the URL corresponding to your remote resource in the second editable field.

This URL can also be computed from local file name using Equivalences.

Click on the down arrow.

If the remote server requires authentication, a special popup will be mapped when you'll have to type a pseudo-user name and a password. The password is never displayed.

The status of the request is displayed after completion in the comment field at the bottom of the main window.

If the local file already exists, a confirmation for deletion of the existing contents is asked.


PUT URL
Save a local file in a URL

Given a local file and a URL, clicking on the up arrow [image] performs a PUT HTTP request. Remote server must of course enable the PUT method.

Authentication can also be required by the remote

server.

Please see  Server Side  section if you want to enable PUT method on a CERN v3.0 server.


View a local HTML file

If the file name in first editable field contains a HTML document, you can click on the top "View" button that calls a HTML browser. The browser can be user-defined through the "Browser and editor" menu item.


Edit a local HTML file

If the file name in first editable field contains a HTML document, you can click on the top "View" button that calls a HTML editor. The editor can be user-defined through the "Browser and editor" menu item.


View a remote HTML file

If the URL in second editable field represents a HTML document, you can click on the bottom "View" button that calls a HTML browser. The browser can be user-defined through the "Browser and editor" menu item.


Show Log
For trace transactions.


Server Side

How to enable PUT on CERN v3.0 server

 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Daniel Glazman

Electricite de France

Research and Development Division

15 May 1995

Daniel.Glazman@der.edf.fr

Warning: hints described in this documents are made for CERN http server version 3.0

Let us consider a server Internet-wide accessible and enabling PUT for *some* hosts and users.

First of all, your daemon must enable PUT method. Insert the following line in your httpd.conf:

Enable	PUT

Of course, it must not disable common methods:

Enable 	GET

Enable	POST

Then you must define a protection group as described in CERN

server's manual page 55

Protection PROT-GROUP {

UserId	WWWuser

GroupId	WWWusers

AuthType	Basic

ServerId	My_company_s_name Server

PasswordFile	/SOME/WHERE/IN/FILESYSTEM/passwd

GroupFile	/SOME/WHERE/IN/FILESYSTEM/group

GetMask	@*

PostMask	@*

PutMask	putAllowed

}

where WWWuser is a *real* Unix user and WWWusers a *real* Unix

group of users.

File /SOME/WHERE/IN/FILESYSTEM/group contains data as described

page 53 of the manual.

For instance:

putAllowed:	glazman@www_admin.der.edf.fr, @admin.der.edf.fr

and file /SOME/WHERE/IN/FILESYSTEM/passwd is managed using htadm tool(part of CERN server's package): see page 56 of the manual.

At this point, the last thing you need is a PUT executable on server's side in order to understand and manage PUT requests.

Please add the following line in your httpd.conf:

Put-Script	/SOME/WHERE/IN/FILESYSTEM/putscript

The simplest one can be the following shell script:

================ CUT HERE ================

#!/bin/ksh

#

# PUT-script

#

CGIPARSE=/WHERE/STANDS/BINARY/CGIPARSE/cgiparse

PUTLOG=/WHERE/STAND/SERVER/LOGS/putlog

echo $REMOTE_ADD ($REMOTE_HOST) `/bin/date` "[PUT]" $PATH_INFO >> $PUTLOG

mv -f $PATH_TRANSLATED $PATH_TRANSLATED.bak 2>/dev/null

$CGIPARSE -read > $PATH_TRANSLATED

cat<<_EOT_

Content-Type: text/html

<HTML>

<HEAD><TITLE>Server's reply</TITLE></HEAD>

<BODY>

<P><STRONG>Document saved</STRONG></P>

<P>

<A HREF="$REFERER_URL">Back to caller...</A>

(this link may have no target if you did not use PUT from a browser)

</P>

</BODY>

</HTML>

_EOT_

================ CUT HERE ================

IMPORTANT WARNING: in the script, the blank (I insist: empty line, no space, no tab, nothing !) line between Content-Type and the rest of HTML answer is mandatory ! MIME conformance of HTTP answer is highly based on this blank line (cf RFC1521).

That's it...

Please keep in mind that all information contained in this file is given WITHOUT WARRANTY of any kind. It is provided "as is" and ELECTRICITE DE FRANCE disclaims all warranties with regard to this file, in no event shall ELECTRICITE DE FRANCE be liable for any special,indirect or consequential damages or any damages whatsoever resulting from loss of use, data or profits, whether in an action of contract, negligence or other tortious action, arising out of or in connection with the use or performance of this software.

Please also keep in mind that my e_mail is not a hotline for CERN server's configuration.... In other words: RTFM !!!!

All hints described above are described in manual !

/* Enjoy ! */

</Daniel>

Daniel GLAZMAN


Help

Some online information is available from the Help menu and using the Help buttons in pop up windows.


Table des matiéres

Les Proxies


Définition du Proxie

Un Proxy  est à définir dans le menu Option Proxies.

Les serveurs pour lequels aucun proxy ne doit être utilisé peuvent être des domaines

Règles pour la définition des domaines et adresses internet.

Suivez les règles suivantes lors de la saisie des noms de domaine ou adresses IP n'utilisant pas de proxy:

Placez une virgule (,) entre deux noms de domaine ou adresse IP.

Pas plus de 256 caractères (espaces inclus).

Ces domaines et adresses peuvent contenir deux caractères'wildcard'


Misc. information

Misc. information

•	 HTTPtool is not mime.types compliant

•	 base64 encoding is not implemented

•	 proxy authentication is not implemented. Will be included

   in next version.

•	 HTTPtool creates use one file in application directory:

     	httptool.ini


Cancel Button

Cancel all modifications.


Ok Button

Validate yours choices