From 143b6322f8217cfdbef8f3171d55d10348d1be37 Mon Sep 17 00:00:00 2001 From: Garrett D'Amore Date: Mon, 18 Nov 2024 18:49:01 -0800 Subject: Introduce accessors for nng_url struct and make it opaque. This provides safety by ensuring that applications do not depend on the size or layout of nng_url itself. --- src/core/url.c | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) (limited to 'src/core/url.c') diff --git a/src/core/url.c b/src/core/url.c index 6e17e8c7..4be730cc 100644 --- a/src/core/url.c +++ b/src/core/url.c @@ -687,3 +687,45 @@ nni_url_to_address(nng_sockaddr *sa, const nng_url *url) nni_aio_fini(&aio); return (rv); } + +const char * +nng_url_scheme(const nng_url *url) +{ + return (url->u_scheme); +} + +uint16_t +nng_url_port(const nng_url *url) +{ + return (url->u_port); +} + +const char * +nng_url_hostname(const nng_url *url) +{ + return (url->u_hostname); +} + +const char * +nng_url_path(const nng_url *url) +{ + return (url->u_path); +} + +const char * +nng_url_query(const nng_url *url) +{ + return (url->u_query); +} + +const char * +nng_url_userinfo(const nng_url *url) +{ + return (url->u_userinfo); +} + +const char * +nng_url_fragment(const nng_url *url) +{ + return (url->u_fragment); +} -- cgit v1.2.3-70-g09d2