Problem: no documentation for zmq_curve_public

Solution: add manpage
This commit is contained in:
Luca Boccassi 2016-12-26 14:23:32 +01:00
parent dc39ceb347
commit baf32a1985
6 changed files with 72 additions and 3 deletions

View File

@ -14,7 +14,7 @@ MAN3 = zmq_bind.3 zmq_unbind.3 zmq_connect.3 zmq_disconnect.3 zmq_close.3 \
zmq_errno.3 zmq_strerror.3 zmq_version.3 \
zmq_sendmsg.3 zmq_recvmsg.3 \
zmq_proxy.3 zmq_proxy_steerable.3 \
zmq_z85_encode.3 zmq_z85_decode.3 zmq_curve_keypair.3 \
zmq_z85_encode.3 zmq_z85_decode.3 zmq_curve_keypair.3 zmq_curve_public.3 \
zmq_has.3 \
zmq_atomic_counter_new.3 zmq_atomic_counter_set.3 \
zmq_atomic_counter_inc.3 zmq_atomic_counter_dec.3 \

View File

@ -199,6 +199,9 @@ Elliptic curve authentication and encryption::
Generate a CURVE keypair in armored text format::
linkzmq:zmq_curve_keypair[3]
Derive a CURVE public key from a secret key:
linkzmq:zmq_curve_public[3]
Converting keys to/from armoured text strings::
linkzmq:zmq_z85_decode[3]
linkzmq:zmq_z85_encode[3]

62
doc/zmq_curve_public.txt Normal file
View File

@ -0,0 +1,62 @@
zmq_curve_public(3)
===================
NAME
----
zmq_curve_public - derive the public key from a private key
SYNOPSIS
--------
*int zmq_curve_public (char *z85_public_key, char *z85_secret_key);*
DESCRIPTION
-----------
The _zmq_curve_public()_ function shall derive the public key from a
private key. The caller provides two buffers, each at least 41 octets
large. In z85_secret_key the caller shall provide the private key, and
the function will store the public key in z85_public_key. The keys are
encoded using linkzmq:zmq_z85_encode[3].
RETURN VALUE
------------
The _zmq_curve_public()_ function shall return 0 if successful, else it
shall return `-1` and set 'errno' to one of the values defined below.
ERRORS
------
*ENOTSUP*::
The libzmq library was not built with cryptographic support (libsodium).
EXAMPLE
-------
.Deriving the public key from a CURVE private key
----
char public_key [41];
char secret_key [41];
int rc = zmq_curve_keypair (public_key, secret_key);
assert (rc == 0);
char derived_public[41];
rc = zmq_curve_public (derived_public, secret_key);
assert (rc == 0);
assert (!strcmp (derived_public, public_key));
----
SEE ALSO
--------
linkzmq:zmq_z85_decode[3]
linkzmq:zmq_z85_encode[3]
linkzmq:zmq_curve_keypair[3]
linkzmq:zmq_curve[7]
AUTHORS
-------
This page was written by the 0MQ community. To make a change please
read the 0MQ Contribution Policy at <http://www.zeromq.org/docs:contributing>.

View File

@ -132,7 +132,8 @@ sockets, see linkzmq:zmq_curve[7]. You can provide the key as 32 binary
bytes, or as a 40-character string encoded in the Z85 encoding format and
terminated in a null byte. The public key must always be used with the
matching secret key. To generate a public/secret key pair, use
linkzmq:zmq_curve_keypair[3].
linkzmq:zmq_curve_keypair[3]. To derive the public key from a secret key,
use linkzmq:zmq_curve_public[3].
NOTE: an option value size of 40 is supported for backwards compatibility,
though is deprecated.
@ -150,7 +151,8 @@ Sets the socket's long term secret key. You must set this on both CURVE
client and server sockets, see linkzmq:zmq_curve[7]. You can provide the
key as 32 binary bytes, or as a 40-character string encoded in the Z85
encoding format and terminated in a null byte. To generate a public/secret
key pair, use linkzmq:zmq_curve_keypair[3].
key pair, use linkzmq:zmq_curve_keypair[3]. To derive the public key from
a secret key, use linkzmq:zmq_curve_public[3].
NOTE: an option value size of 40 is supported for backwards compatibility,
though is deprecated.

View File

@ -41,6 +41,7 @@ SEE ALSO
--------
linkzmq:zmq_z85_decode[3]
linkzmq:zmq_curve_keypair[3]
linkzmq:zmq_curve_public[3]
linkzmq:zmq_curve[7]

View File

@ -48,6 +48,7 @@ SEE ALSO
--------
linkzmq:zmq_z85_decode[3]
linkzmq:zmq_curve_keypair[3]
linkzmq:zmq_curve_public[3]
linkzmq:zmq_curve[7]