From 0058b766b91f08b34dcef3c7bb55b216099f3f66 Mon Sep 17 00:00:00 2001 From: Garrett D'Amore Date: Sat, 9 Nov 2024 15:24:43 -0800 Subject: TLS configuration changed to use discret _set_tls and _get_tls functions. This is simpler, and more reliable than using socket options. --- src/core/stream.c | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) (limited to 'src/core/stream.c') diff --git a/src/core/stream.c b/src/core/stream.c index 4ac27705..78029ddc 100644 --- a/src/core/stream.c +++ b/src/core/stream.c @@ -214,6 +214,24 @@ nni_stream_dialer_set(nng_stream_dialer *d, const char *nm, const void *data, return (d->sd_set(d, nm, data, sz, t)); } +int +nni_stream_dialer_get_tls(nng_stream_dialer *d, nng_tls_config **cfgp) +{ + if (d->sd_get_tls == NULL) { + return (NNG_ENOTSUP); + } + return (d->sd_get_tls(d, cfgp)); +} + +int +nni_stream_dialer_set_tls(nng_stream_dialer *d, nng_tls_config *cfg) +{ + if (d->sd_set_tls == NULL) { + return (NNG_ENOTSUP); + } + return (d->sd_set_tls(d, cfg)); +} + void nng_stream_listener_close(nng_stream_listener *l) { @@ -252,6 +270,24 @@ nni_stream_listener_set(nng_stream_listener *l, const char *nm, return (l->sl_set(l, nm, data, sz, t)); } +int +nni_stream_listener_get_tls(nng_stream_listener *l, nng_tls_config **cfgp) +{ + if (l->sl_get_tls == NULL) { + return (NNG_ENOTSUP); + } + return (l->sl_get_tls(l, cfgp)); +} + +int +nni_stream_listener_set_tls(nng_stream_listener *l, nng_tls_config *cfg) +{ + if (l->sl_set_tls == NULL) { + return (NNG_ENOTSUP); + } + return (l->sl_set_tls(l, cfg)); +} + int nng_stream_listener_alloc_url(nng_stream_listener **lp, const nng_url *url) { @@ -386,6 +422,12 @@ nng_stream_dialer_get_addr( return (nni_stream_dialer_get(d, n, v, NULL, NNI_TYPE_SOCKADDR)); } +int +nng_stream_dialer_get_tls(nng_stream_dialer *d, nng_tls_config **cfgp) +{ + return (nni_stream_dialer_get_tls(d, cfgp)); +} + int nng_stream_listener_get_int(nng_stream_listener *l, const char *n, int *v) { @@ -437,6 +479,12 @@ nng_stream_listener_get_addr( return (nni_stream_listener_get(l, n, v, NULL, NNI_TYPE_SOCKADDR)); } +int +nng_stream_listener_get_tls(nng_stream_listener *l, nng_tls_config **cfgp) +{ + return (nni_stream_listener_get_tls(l, cfgp)); +} + int nng_stream_dialer_set_int(nng_stream_dialer *d, const char *n, int v) { @@ -488,6 +536,12 @@ nng_stream_dialer_set_addr( return (nni_stream_dialer_set(d, n, v, sizeof(*v), NNI_TYPE_SOCKADDR)); } +int +nng_stream_dialer_set_tls(nng_stream_dialer *d, nng_tls_config *cfg) +{ + return (nni_stream_dialer_set_tls(d, cfg)); +} + int nng_stream_listener_set_int(nng_stream_listener *l, const char *n, int v) { @@ -543,3 +597,9 @@ nng_stream_listener_set_addr( return ( nni_stream_listener_set(l, n, v, sizeof(*v), NNI_TYPE_SOCKADDR)); } + +int +nng_stream_listener_set_tls(nng_stream_listener *l, nng_tls_config *cfg) +{ + return (nni_stream_listener_set_tls(l, cfg)); +} -- cgit v1.2.3-70-g09d2