UFT supports agent authentication. 
An agent is a program or entity other than the original user 
that carries out the client side of a UFT transaction.   The UFT 
server processes a connection from a UFT agent in much the same way 
as it would process a connection from an ordinary user UFT client. 
 
Agents require a local UFT server and are authenticated 
in the following way:  the agent gets a challenge/response pair 
from its local UFT server,  it connects to the remote server 
just like a regular client would,  and then sends an AGENT command 
with the challenge and response.   The remote server connects back to 
the server at the sending host and sends an AGENT command with only the 
challenge string.   The local server responds to the remote server 
with both the challenge and the response,  confirming that the 
agent is local and has the rights to act as an agent on the 
sending host.   The receiving server compares the response string 
to that sent by the agent;  if it matches,  the transaction proceeds. 
 
The client sends an AGENT command like 
 
	AGENT  challenge  response 
 
The server then connects back to the sending host at the standard 
UFT port (608) and sends only the challenge.   If it receives 
the expected response string in reply,  then the client is 
confirmed as an agent,  otherwise the client is NOT CONFIRMED 
and the transaction may be cancelled or marked "unauthenticated". 
This AGENT command should come before any FILE or PIPE commands. 
The validity of agent authentication lasts as long as the client 
remains connected,  covering any number of files. 
 
When authenticating an agent,  a server sends an AGENT command like 
 
	AGENT  challenge 
 
and should get a response like 
 
	2xx AGENT challenge response 
 
for confirmation,  or 
 
	5xx not an agent for this host 
 
When beginning a single- or multi-file transaction,  a UFT agent 
sends an AGENT command to the destination server.   When beginning 
each file,  the agent sends a FILE command like 
 
	FILE  size  from  AGENT 
 
"FILE" is the protocol command verb.   The  "size"  value, 
as stated elsewhere,  is an estimate of the actual size of the file 
about to be sent.   The  "from"  value indicates the original sender 
for whom this agent is acting. 
 

