aboutsummaryrefslogtreecommitdiff
path: root/src/nng.h
diff options
context:
space:
mode:
authorGarrett D'Amore <garrett@damore.org>2017-08-17 23:57:09 -0700
committerGarrett D'Amore <garrett@damore.org>2017-08-18 01:57:35 -0700
commit446b150032f24c34644f0ab91ac6ab9206250865 (patch)
treee47b4e3812016716187201961c43b9e407a3ed50 /src/nng.h
parent76c1fc80c931b086493835d037245ebbb5f8d406 (diff)
downloadnng-446b150032f24c34644f0ab91ac6ab9206250865.tar.gz
nng-446b150032f24c34644f0ab91ac6ab9206250865.tar.bz2
nng-446b150032f24c34644f0ab91ac6ab9206250865.zip
Endpoint API completely implemented.
This supports creating listeners and dialers, managing options on them (though only a few options are supported at present), starting them and closing them, all independently.
Diffstat (limited to 'src/nng.h')
-rw-r--r--src/nng.h37
1 files changed, 28 insertions, 9 deletions
diff --git a/src/nng.h b/src/nng.h
index 9a6a37c8..0c76ffe7 100644
--- a/src/nng.h
+++ b/src/nng.h
@@ -199,17 +199,35 @@ NNG_DECL int nng_listener_close(nng_listener);
// nng_dialer_setopt sets an option for a specific dialer. Note
// dialer options may not be altered on a running dialer.
-NNG_DECL int nng_dialer_setopt(nng_dialer, int, void *, size_t);
-
-// nng_dialer_getopt obtains the option for a dialer.
+NNG_DECL int nng_dialer_setopt(nng_dialer, int, const void *, size_t);
+NNG_DECL int nng_dialer_setopt_int(nng_dialer, int, int);
+NNG_DECL int nng_dialer_setopt_usec(nng_dialer, int, uint64_t);
+NNG_DECL int nng_dialer_setopt_size(nng_dialer, int, size_t);
+
+// nng_dialer_getopt obtains the option for a dialer. This will
+// fail for options that a particular dialer is not interested in,
+// even if they were set on the socket.
NNG_DECL int nng_dialer_getopt(nng_dialer, int, void *, size_t *);
-
-// nng_listener_setopt sets an option for a specific listener. Note
-// listener options may not be altered on a running listener.
-NNG_DECL int nng_listener_setopt(nng_listener, int, void *, size_t);
-
-// nng_listener_getopt obtains the option for a listener.
+NNG_DECL int nng_dialer_getopt_int(nng_dialer, int, int *);
+NNG_DECL int nng_dialer_getopt_usec(nng_dialer, int, uint64_t *);
+NNG_DECL int nng_dialer_getopt_size(nng_dialer, int, size_t *);
+
+// nng_listener_setopt sets an option for a dialer. This value is
+// not stored in the socket. Subsequent setopts on the socket may
+// override these value however. Note listener options may not be altered
+// on a running listener.
+NNG_DECL int nng_listener_setopt(nng_dialer, int, const void *, size_t);
+NNG_DECL int nng_listener_setopt_int(nng_dialer, int, int);
+NNG_DECL int nng_listener_setopt_usec(nng_dialer, int, uint64_t);
+NNG_DECL int nng_listener_setopt_size(nng_dialer, int, size_t);
+
+// nng_listener_getopt obtains the option for a listener. This will
+// fail for options that a particular listener is not interested in,
+// even if they were set on the socket.
NNG_DECL int nng_listener_getopt(nng_listener, int, void *, size_t *);
+NNG_DECL int nng_listener_getopt_int(nng_listener, int, int *);
+NNG_DECL int nng_listener_getopt_usec(nng_listener, int, uint64_t *);
+NNG_DECL int nng_listener_getopt_size(nng_listener, int, size_t *);
// nng_strerror returns a human readable string associated with the error
// code supplied.
@@ -302,6 +320,7 @@ NNG_DECL int nng_pipe_close(nng_pipe);
enum nng_flag_enum {
NNG_FLAG_ALLOC = 1, // Recv to allocate receive buffer.
NNG_FLAG_NONBLOCK = 2, // Non-blocking operations.
+ NNG_FLAG_DRYRUN = 4, // Setopt dry-run (internally used).
};
// Protocol numbers. These are to be used with nng_socket_create().