NaCl(1)
π NaCl(1) β CurveCP π
okay bestie, this is the manual page for CurveCP β message-handling programs, and it lives in the General Commands Manual section. yes it's under the name NaCl and yes that's the whole vibe. let's go β¨
πΈ NAME πΈ
CurveCP β message-handling programs π«Ά
β¨ SYNOPSIS β¨
curvecpmessage [-q (optional)] [-Q (optional)] [-v (optional)] [-c
(optional)] [-C (optional)] [-s (optional)] [prog]
π¦ DESCRIPTION π¦
This manual page documents briefly the CurveCP commands. short and sweet, we love that for us π
So picture a traditional UNIX-style server, right? something like ftpd. it handles literally one network connection: reads input from stdin, writes output to stdout, done, no thoughts. then there's a "superserver" like inetd or tcpserver β that one listens for network connections and starts a separate server process for each and every connection. iconic behaviour, honestly π
The CurveCP command-line tools have an extra level of modularity, and that's the whole plot twist. let's break it down:
- The
curvecpserversuperserver listens for network connections. that's its job, it's the listener, main character energy β¨ - For each connection,
curvecpserverstarts thecurvecpmessagemessage handler. so it's like, the superserver hands things off to the message handler. curvecpmessagethen starts a server such asftpd. nesting doll situation, we love to see it πͺ- Then
ftpdsends a stream of data tocurvecpmessage, which in turn sends messages tocurvecpserver, which encrypts and authenticates the messages and sends them inside network packets. okay so that's the outbound journey, got it π - At the same time
curvecpclientreceives network packets, verifies and decrypts messages inside the packets, and passes the messages tocurvecpmessage;curvecpmessagesends a stream of data toftpd. and that's the inbound journey, symmetry, we love it π
And the same curvecpmessage tool is also used by curvecpclient. one tool, two besties, no cap.
okay and here's a fun fact β 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. so flexible. so modular. lowkey genius π§
π OPTIONS π
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) π«‘progβ run this server
ngl,-Qand-sare the defaults, so if you just roll up with nothing, that's what you're getting. periodt π
π SEE ALSO π
curvecpserver(1)curvecpclient(1)inetd(8)tcpserver(1)
π AUTHOR π
This manual page was written by Sergiusz Pawlowicz debian@pawlowicz.name for the Debian system (and may be used by others). the source of this page is a webpage https://curvecp.org/messageapi.html. Permission is granted to copy, distribute and/or modify this document under public domain. fr fr, take it, it's yours π«Ά
This manual page was rewritten for the Debian distribution because the original program does not have a manual page. not me fixing the docs situation ππ
and that's the whole page bestie!! this was NaCl(1) from the General Commands Manual, and you're all caught up on CurveCP now. slay, go encrypt something πβ¨ππ¦πΈπ
π«Ά
π¦ where this page comes from
- debian bookworm: nacl-tools 20110221-12 Β· LicenseRef-public-domain
- debian trixie: nacl-tools 20110221-15 Β· LicenseRef-public-domain
- ubuntu jammy: nacl-tools 20110221-6.1 Β· LicenseRef-public-domain
- ubuntu noble: nacl-tools 20110221-13 Β· LicenseRef-public-domain
- ubuntu questing: nacl-tools 20110221-15
- ubuntu resolute: nacl-tools 20110221-15build1 Β· LicenseRef-public-domain
- ubuntu stonking: nacl-tools 20110221-15build1 Β· LicenseRef-public-domain
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms