aboutsummaryrefslogtreecommitdiff
path: root/src/core/ngx_resolver.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/ngx_resolver.c')
-rw-r--r--src/core/ngx_resolver.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/core/ngx_resolver.c b/src/core/ngx_resolver.c
index 2e3047135..02c484da6 100644
--- a/src/core/ngx_resolver.c
+++ b/src/core/ngx_resolver.c
@@ -1840,7 +1840,7 @@ ngx_resolver_create_name_query(ngx_resolver_node_t *rn, ngx_resolver_ctx_t *ctx)
len++;
} else {
- if (len == 0) {
+ if (len == 0 || len > 255) {
return NGX_DECLINED;
}
@@ -1851,6 +1851,10 @@ ngx_resolver_create_name_query(ngx_resolver_node_t *rn, ngx_resolver_ctx_t *ctx)
p--;
}
+ if (len == 0 || len > 255) {
+ return NGX_DECLINED;
+ }
+
*p = (u_char) len;
return NGX_OK;