QNX communications protocol (QNX)


Send files:

qcp [device] se [options] src_file[,dst_file]...

Receive files:

qcp [device] re [options] [-f filename|-p prefix]

Runs on:

QNX Neutrino


Pathname of serial device to use. The default is the device connected to stdin and stdout.
-f filename
Force received files to have this name.
Required to receive files on a flash filesystem that doesn't support all the POSIX file control mechanisms.
-l logfile
("el") Append the file transfer event to the logfile.
Suppress making directories for received files.
Receive only files that are newer than existing files.
-p prefix
Place this path prefix on the names of any received files.
Be quiet; display nothing during the transfer.
Relax timing; double timeouts and quadruple retry counts.
-s packet_size
The size of transmitted data bursts (default is 2048 bytes).
Apply today's date to received files.
Unlink files that lack write permission. This allows new versions of the affected files to be received and written to disk.
-V, -v
Be verbose; display the error status while transferring files.
A list of filenames; qcp sends each file named in the list. You can specify multiple x=index_file options specified and intermix them with singly named files to transmit.


The qcp utility provides an error-checked file transfer protocol that qtalk uses to transmit or receive files. This protocol is both highly efficient on packet switched networks and highly reliable through the use of 16-bit CRCs (Cyclic Redundancy Check).

The qcp utility automatically sends files with their pathnames, attributes, permissions, and date fields intact. The qcp protocol is ideally suited for use over public packet switch networks (X.25), as well as direct modem-to-modem connections. If communication errors are encountered, portions of the file are automatically resent until the far end acknowledges correct reception of the file.

If you're using qtalk to communicate with a remote system, you can both send and receive files to the remote system with the qcp utility. To cause a file to be sent from the remote system to your local system, type a command of the following form into the qtalk session you have connected to the remote system:

qcp se file1  file2,file3 x=file4

This causes the remote end to send the files to you; qtalk automatically starts qcp to receive the file. The files sent are:

Note: You can create index files easily with the ls -p command.

To send a file to the remote system, type the following command into the remote shell:

qcp re

then use the CtrlA CtrlS key sequence to cause qtalk to send a file to the remote qcp utility.

If you want qcp to send a file through an explicitly named device, use a command of the form:

qcp /dev/ser1 se filename

where /dev/ser1 is the port to send through. To receive from a particular device, use a command similar to:

qcp  /dev/ser1  re

You can abort a qcp file transfer in progress by pressing either Esc or Space. In turn, qcp displays a prompt asking for confirmation of the action. To confirm aborting qcp, you enter y. If a remote qcp in a receive state must be shut down, the following control-character sequence aborts it:


Note that qcp automatically removes any partially transferred files.

Note: When transferring files via high speed modems, the -s 16000 option is recommended.