Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
UUCP
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
===Sessions=== UUCP is normally started by having a user log into the target system and then running the UUCP program. In most cases, this is automated by logging into a known user account used for transfers, whose account's shell has been set to {{code|uucico}}. Thus, for automated transfers, another machine simply has to open a modem connection to the called machine and log into the known account. When uucico runs, it will expect to receive commands from another UUCP program on the caller's machine and begin a session. The session has three distinct stages: # Initial handshake # File request(s) # Final handshake ====Initial handshake==== On starting, uucico will respond by sending an identification string, <code>\20Shere=''hostname''\0</code>, where \20 is the control-P character, and \0 is a trailing null. The caller's UUCP responds with <code>\20S''callername'' ''options''\0</code>, where ''options'' is a string containing zero or more Unix-like option switches. These can include packet and window sizes, the maximum supported file size, debugging options, and others. Depending on the setup of the two systems, the call may end here. For instance, when the caller responds with their system name, the called system may optionally hang up if it does not recognize the caller, sending the <code>RYou are unknown to me\0</code> response string and then disconnecting. ====File requests==== If the two systems successfully handshake, the caller will now begin to send a series of file requests. There are four types: :'''S''' causes a file to be Sent from the caller to the called system (upload). The from and to names are provided, allowing the filename to be changed on the receiver. When the S command is received on the called system, it responds with SY if it succeeded and it is ready to accept the file, or SNx if it failed, where x is a failure code. If an SY is received by the caller, it begins uploading the file using the protocol selected during the initial handshake (see below). When the transfer is complete, the called system responds with CY if it successfully received the file, or CN5 if it failed. :'''R''' is a Request for the called system to send a file to the caller (download). It is otherwise similar to S, using RY and RN to indicate the command was accepted and it will begin to send data or had a problem, and expecting a CY and CN5 from the caller at the end of the transfer. :'''X''' uploads commands to be eXecuted on the called system. This can be used to make that system call another and deliver files to it. The called system responds with XY if it succeeded, or XN if it failed. :'''H''', for Hangup, indicates the caller is done. The called system responds with HY if it succeeded, or HN if it failed. ====Final handshake==== After sending an H command, the calling system sends a final packet {{code|\20OOOOOO\0}} (control-P, six ohs, null-terminator) and the called system responds with {{code|\20OOOOOO\0}} (control-P, seven ohs, null-terminator). Some systems will simply hang up on the successful reception of the H command and not bother with the final handshake.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)