ETP

From Wiki

Jump to: navigation, search

Contents

What is ETP?

Everything Transfer Protocol (ETP) is a network protocol used to search and transfer data from one computer to another through a network such as the internet.

ETP is backwards compatible with FTP. You can connect to an ETP server with an FTP client.

ETP is a file searching protocol for finding file results over a TCP computer network. An ETP client may connect to an ETP server to search files on that server.


Requirements

You must be able to run "Everything" on both the client computer and server computer.



Hosting an ETP server

To host an ETP server:

  • On the computer whose files you wish to share, In "Everything", from the Tools menu, click Start ETP server.


Please make sure you share each drive on your server as its drive letter. For example, share C: drive as: C

This will be customizable in a future release of "Everything".


Connecting to an ETP server

To host an ETP server:

  • In "Everything", from the Tools menu, click connect to ETP server....
  • Type in the server name or IP for the host.
  • Click OK.


Trouble Shooting

Conflicting ports

Please make sure no FTP servers are running, or try changing the ETP server port.

To change the ETP server port:

  • In "Everything", from the Tools menu, click Options.
  • Click the ETP tab.
  • Change the port to: 5485
  • Click OK.


Please make sure you change the port when connecting to the ETP server.


Can not open folders or files from an ETP connection

Please make sure you share each drive on your server as its drive letter. For example, share C: drive as: C


Technical Information

Supported commands

  • TYPE (ASCII only)
  • MODE (Stream only)
  • STRUCTURE (File only)
  • USER
  • QUIT
  • TYPE
  • MODE
  • STRU
  • RETR
  • NOOP.

Note: PORT and STOR are not support.

This is a read only FTP service.

Please use PASV mode for data connections.


extended commands

  • SIZE
  • MDTM
  • LIST
  • PASV
  • CWD
  • PWD
  • opts
  • FEAT
  • SYST
  • CDUP


Everything specific commands

  • QUERY
  • PCN


Query syntax

QUERY <SP> <offset> <SP> <max> <SP> <match_case> <SP> <match_whole_word> <SP> <match_path> <SP> <search_string> <CRLF>
  • offset is the scroll bar offset (use 0 for all items)
  • max is the maximum number of visible items in the list. (use 0xffffffff for all items)
  • match_case can be non-zero for enabled, zero for disabled.
  • match_wholeword can be non-zero for enabled, zero for disabled.
  • match_path can be non-zero for enabled, zero for disabled.
  • search string can be any number of parameters.


Query reply

200 <SP> <offset> <SP> <count> <SP> <numfolders> <SP> <numfiles> <CRLF>
  • offset is the index offset of the first result.
  • count is the number of results that follow
  • numfolders is the total number of folders.
  • numfiles is the total number of files.

"count" results follow:

<full_path_name> <CRLF>
  • full path and file name of folder or file


Sample source

	// recv each item
	offset = get_int_param();
	count = get_int_param();
	
	// set counts
	folder_result_count = get_int_param();
	file_result_count = get_int_param();
	
	// get the number of visible folders
	visible_folder_count = folder_result_count - offset;
	if (visible_folder_count > count) visible_folder_count = count;
	if (visible_folder_count < 0) visible_folder_count = 0;
	visible_file_count = count - visible_folder_count;


PCN

Print Computer Name (PCN) is used to get the servers computer name for Window's shares.


Default values for transfer parameters

  • TYPE - ASCII Non-print
  • MODE - Stream
  • STRU - File


See also

Personal tools