From 6df40cb6eea9a4220d61c4c927ce5a857a12a338 Mon Sep 17 00:00:00 2001 From: Garrett D'Amore Date: Tue, 20 Mar 2018 18:38:54 -0700 Subject: fixes #301 String option handling for getopt --- src/nng.c | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) (limited to 'src/nng.c') diff --git a/src/nng.c b/src/nng.c index f4d6ce0c..c7c51672 100644 --- a/src/nng.c +++ b/src/nng.c @@ -64,6 +64,18 @@ nng_free(void *buf, size_t sz) nni_free(buf, sz); } +char * +nng_strdup(const char *src) +{ + return (nni_strdup(src)); +} + +void +nng_strfree(char *s) +{ + nni_strfree(s); +} + int nng_recv(nng_socket sid, void *buf, size_t *szp, int flags) { @@ -481,6 +493,13 @@ nng_dialer_getopt_ptr(nng_dialer id, const char *name, void **vp) return (nng_dialer_getx(id, name, vp, &sz, NNI_TYPE_POINTER)); } +int +nng_dialer_getopt_string(nng_dialer id, const char *name, char **vp) +{ + size_t sz = sizeof(*vp); + return (nng_dialer_getx(id, name, vp, &sz, NNI_TYPE_STRING)); +} + int nng_dialer_getopt_ms(nng_dialer id, const char *name, nng_duration *vp) { @@ -600,6 +619,13 @@ nng_listener_getopt_ptr(nng_listener id, const char *name, void **vp) return (nng_listener_getx(id, name, vp, &sz, NNI_TYPE_POINTER)); } +int +nng_listener_getopt_string(nng_listener id, const char *name, char **vp) +{ + size_t sz = sizeof(*vp); + return (nng_listener_getx(id, name, vp, &sz, NNI_TYPE_STRING)); +} + int nng_listener_getopt_ms(nng_listener id, const char *name, nng_duration *vp) { @@ -768,6 +794,13 @@ nng_getopt_ptr(nng_socket sid, const char *name, void **valp) return (nng_getx(sid, name, valp, &sz, NNI_TYPE_DURATION)); } +int +nng_getopt_string(nng_socket sid, const char *name, char **valp) +{ + size_t sz = sizeof(*valp); + return (nng_getx(sid, name, valp, &sz, NNI_TYPE_STRING)); +} + int nng_device(nng_socket s1, nng_socket s2) { @@ -937,6 +970,13 @@ nng_pipe_getopt_sockaddr(nng_pipe id, const char *name, nng_sockaddr *sap) return (nng_pipe_getopt_x(id, name, sap, &sz, NNI_TYPE_SOCKADDR)); } +int +nng_pipe_getopt_string(nng_pipe id, const char *name, char **valp) +{ + size_t sz = sizeof(*valp); + return (nng_pipe_getopt_x(id, name, valp, &sz, NNI_TYPE_STRING)); +} + int nng_pipe_close(nng_pipe id) { -- cgit v1.2.3-70-g09d2