summaryrefslogtreecommitdiff
path: root/docs/man/nng_dialer_getopt.adoc
diff options
context:
space:
mode:
Diffstat (limited to 'docs/man/nng_dialer_getopt.adoc')
-rw-r--r--docs/man/nng_dialer_getopt.adoc38
1 files changed, 25 insertions, 13 deletions
diff --git a/docs/man/nng_dialer_getopt.adoc b/docs/man/nng_dialer_getopt.adoc
index 7c6fc3ad..c4263262 100644
--- a/docs/man/nng_dialer_getopt.adoc
+++ b/docs/man/nng_dialer_getopt.adoc
@@ -20,10 +20,15 @@ nng_dialer_getopt - get dialer option
#include <nng/nng.h>
int nng_dialer_getopt(nng_dialer d, const char *opt, void *val, size_t *valszp);
+
int nng_dialer_getopt_int(nng_dialer d, const char *opt, int *ivalp);
+
int nng_dialer_getopt_ms(nng_dialer d, const char *opt, nng_duration *durp);
+
int nng_dialer_getopt_ptr(nng_dialer d, const char *opt, void **ptr);
+
int nng_dialer_setopt_size(nng_dialer d, const char *opt, size_t *zp);
+
int nng_dialer_getopt_uint64(nng_dialer d, const char *opt, uint64_t *u64p);
-----------
@@ -40,30 +45,37 @@ In all of these forms, the option _opt_ is retrieved from the dialer _d_.
The details of the type, size, and semantics of the option will depend
on the actual option, and will be documented with the option itself.
+=== Untyped Form
+
The first form of this function, `nng_dialer_getopt()`, can be used to
-retrieve the value of any option. It is untyped. The caller must store
-a pointer to a buffer to receive the value in _val_, and the size of the
-buffer shall be stored at the location referenced by _valszp_.
+retrieve the value of any option.
+The caller must store a pointer to a buffer to receive the value in _val_,
+and the size of the buffer shall be stored at the location referenced
+by _valszp_.
When the function returns, the actual size of the data copied (or that
would have been copied if sufficient space were present) is stored at
-the location referened by _valszp_. If the caller's buffer is not large
-enough to hold the entire object, then the copy is truncated. Therefore
-the caller should validate that the returned size in _valszp_ does not
+the location referened by _valszp_.
+If the caller's buffer is not large
+enough to hold the entire object, then the copy is truncated.
+Therefore the caller should validate that the returned size in _valszp_ does not
exceed the original buffer size to check for truncation.
It is acceptable to pass `NULL` for _val_ if the value in _valszp_ is zero.
This can be used to determine the size of the buffer needed to receive
the object.
-Generally, it will be easier to use one of the typed forms instead. Note
-however that no validation that the option is actually of the associated
+=== Typed Forms
+
+Generally, it will be easier to use one of the typed forms instead.
+Note however that no validation that the option is actually of the associated
type is performed, so the caller must take care to use the *correct* typed
form.
The second form, `nng_dialer_getopt_int()`,
-is for options which take an integer (or boolean). The value will
-be stored at _ivalp_. For booleans the value will be eiher 0 (false) or 1 (true).
+is for options which take an integer (or boolean).
+The value will be stored at _ivalp_.
+For booleans the value will be eiher 0 (false) or 1 (true).
The third form, `nng_dialer_getopt_ms()`, is used to retrieve time durations
(such as timeouts), stored in _durp_ as a number of milliseconds.
@@ -71,8 +83,8 @@ The third form, `nng_dialer_getopt_ms()`, is used to retrieve time durations
the special value `NNG_DUR_DEFAULT` means a context-specific default.)
The fourth form, `nng_dialer_getopt_ptr()`, is used to retrieve a
-pointer _ptr_ to structured data. The data referenced by _ptr_ is
-generally managed using other functions.
+pointer _ptr_ to structured data.
+The data referenced by _ptr_ is generally managed using other functions.
Note that this form is somewhat special in that the object is generally
not copied, but instead the *pointer* to the object is copied.
@@ -80,7 +92,7 @@ The fifth form, `nng_dialer_getopt_size()`, is used to retrieve a size
into the pointer _zp_, typically for buffer sizes, message maximum sizes, and
similar options.
-The sixth form, `nng_diale_getopt_uint64()`, is used to retrieve a
+The sixth form, `nng_dialer_getopt_uint64()`, is used to retrieve a
64-bit unsigned value into the value referenced by _u64p_.
This is typically used for options
related to identifiers, network numbers, and similar.