From 713b80f440cb414cd0b856bde0ea1b31f939777f Mon Sep 17 00:00:00 2001 From: Garrett D'Amore Date: Sat, 9 Nov 2024 23:45:21 -0800 Subject: refactor initialization/finalization Applications must now call nng_init(), but they can supply a set of parameters optionally. The code is now safe for multiple libraries to do this concurrently, meaning nng_fini no longer can race against another instance starting up. The nni_init checks on all public APIs are removed now. --- src/core/stream.c | 19 ------------------- 1 file changed, 19 deletions(-) (limited to 'src/core/stream.c') diff --git a/src/core/stream.c b/src/core/stream.c index 78029ddc..d900329a 100644 --- a/src/core/stream.c +++ b/src/core/stream.c @@ -169,12 +169,6 @@ nng_stream_dialer_dial(nng_stream_dialer *d, nng_aio *aio) int nng_stream_dialer_alloc_url(nng_stream_dialer **dp, const nng_url *url) { - int rv; - - if ((rv = nni_init()) != 0) { - return (rv); - } - for (int i = 0; stream_drivers[i].scheme != NULL; i++) { if (strcmp(stream_drivers[i].scheme, url->u_scheme) == 0) { return (stream_drivers[i].dialer_alloc(dp, url)); @@ -189,9 +183,6 @@ nng_stream_dialer_alloc(nng_stream_dialer **dp, const char *uri) nng_url *url; int rv; - if ((rv = nni_init()) != 0) { - return (rv); - } if ((rv = nng_url_parse(&url, uri)) != 0) { return (rv); } @@ -291,12 +282,6 @@ nni_stream_listener_set_tls(nng_stream_listener *l, nng_tls_config *cfg) int nng_stream_listener_alloc_url(nng_stream_listener **lp, const nng_url *url) { - int rv; - - if ((rv = nni_init()) != 0) { - return (rv); - } - for (int i = 0; stream_drivers[i].scheme != NULL; i++) { if (strcmp(stream_drivers[i].scheme, url->u_scheme) == 0) { return (stream_drivers[i].listener_alloc(lp, url)); @@ -311,10 +296,6 @@ nng_stream_listener_alloc(nng_stream_listener **lp, const char *uri) nng_url *url; int rv; - if ((rv = nni_init()) != 0) { - return (rv); - } - if ((rv = nng_url_parse(&url, uri)) != 0) { return (rv); } -- cgit v1.2.3-70-g09d2