diff options
author | Andrew Clayton <a.clayton@nginx.com> | 2024-04-17 15:50:40 +0100 |
---|---|---|
committer | Andrew Clayton <a.clayton@nginx.com> | 2024-04-25 15:15:19 +0100 |
commit | 31cec908cd9d431eb8632b53b9bbd96caac56bfd (patch) | |
tree | 1fe4d6f1d5040fb14a0c11a9d0ca8f4e30260c6b /src/nxt_conf.h | |
parent | 33c978cc24de3110b763354d97a907982f664b23 (diff) | |
download | unit-31cec908cd9d431eb8632b53b9bbd96caac56bfd.tar.gz unit-31cec908cd9d431eb8632b53b9bbd96caac56bfd.tar.bz2 |
configuration: Constify more pointers
This continues the patch series constifying various pointers in the
configuration sub-system.
This is done as a separate commit as it involved a _slightly_ more
invasive change in nxt_conf_get_string().
While it takes a value parameter that is never modified, simply making
it const results in
CC build/src/nxt_conf.o
src/nxt_conf.c: In function ‘nxt_conf_get_string’:
src/nxt_conf.c:170:20: error: assignment discards ‘const’ qualifier from pointer target type [-Werror=discarded-qualifiers]
170 | str->start = value->u.str.start;
| ^
due to the assignment operator. Making value const will allow for
numerous other constification and seeing as we are not modifying it,
seems worthwhile.
We can get around the warning by casting ->u.{str,string}.start
Reviewed-by: Zhidao HONG <z.hong@f5.com>
Signed-off-by: Andrew Clayton <a.clayton@nginx.com>
Diffstat (limited to 'src/nxt_conf.h')
-rw-r--r-- | src/nxt_conf.h | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/nxt_conf.h b/src/nxt_conf.h index d1a475e5..493d6480 100644 --- a/src/nxt_conf.h +++ b/src/nxt_conf.h @@ -108,17 +108,18 @@ nxt_conf_value_t *nxt_conf_json_parse(nxt_mp_t *mp, u_char *start, u_char *end, #define nxt_conf_json_parse_str(mp, str) \ nxt_conf_json_parse(mp, (str)->start, (str)->start + (str)->length, NULL) -size_t nxt_conf_json_length(nxt_conf_value_t *value, +size_t nxt_conf_json_length(const nxt_conf_value_t *value, nxt_conf_json_pretty_t *pretty); -u_char *nxt_conf_json_print(u_char *p, nxt_conf_value_t *value, +u_char *nxt_conf_json_print(u_char *p, const nxt_conf_value_t *value, nxt_conf_json_pretty_t *pretty); void nxt_conf_json_position(u_char *start, const u_char *pos, nxt_uint_t *line, nxt_uint_t *column); nxt_int_t nxt_conf_validate(nxt_conf_validation_t *vldt); -NXT_EXPORT void nxt_conf_get_string(nxt_conf_value_t *value, nxt_str_t *str); -NXT_EXPORT nxt_str_t *nxt_conf_get_string_dup(nxt_conf_value_t *value, +NXT_EXPORT void nxt_conf_get_string(const nxt_conf_value_t *value, + nxt_str_t *str); +NXT_EXPORT nxt_str_t *nxt_conf_get_string_dup(const nxt_conf_value_t *value, nxt_mp_t *mp, nxt_str_t *str); NXT_EXPORT void nxt_conf_set_string(nxt_conf_value_t *value, const nxt_str_t *str); |