curvecpmessage [-q (optional)] [-Q (optional)] [-v (optional)] [-c (optional)] [-C (optional)] [-s (optional)] [prog]
This manual page documents briefly the CurveCP commands.
A traditional UNIX-style server such as ftpd handles just one network connection, reading input from stdin and writing output to stdout. A "superserver" such as inetd or tcpserver listens for network connections and starts a separate server process for each connection.
The CurveCP command-line tools have an extra level of modularity. The curvecpserver superserver listens for network connections. For each connection, curvecpserver starts the curvecpmessage message handler; curvecpmessage then starts a server such as ftpd. Then ftpd sends a stream of data to curvecpmessage, which in turn sends messages to curvecpserver, which encrypts and authenticates the messages and sends them inside network packets. At the same time curvecpclient receives network packets, verifies and decrypts messages inside the packets, and passes the messages to curvecpmessage; curvecpmessage sends a stream of data to ftpd. The same curvecpmessage tool is also used by curvecpclient.
curvecpserver and curvecpclient can use programs other than curvecpmessage. Those programs can directly generate messages in the CurveCP message format without talking to separate tools such as ftpd; or they can support a completely different protocol that reuses CurveCP's cryptographic layer but transmits different kinds of messages.
How to use curvecpmessage:
- -q optional
no error messages
- -Q optional
print error messages (default)
- -v optional
print extra information
- -c optional
program is a client; server starts first
- -C optional
program is a client that starts first
- -s optional
program is a server (default)
run this server
curvecpserver (1), curvecpclient (1), inetd (8), tcpserver (1).
This manual page was written by Sergiusz Pawlowicz email@example.com for the Debian system (and may be used by others). The source of this page is a webpage http://curvecp.org/messageapi.html . Permission is granted to copy, distribute and/or modify this document under public domain.
This manual page was rewritten for the Debian distribution because the original program does not have a manual page.