summaryrefslogtreecommitdiffhomepage
path: root/src/http/modules/ngx_http_grpc_module.c
diff options
context:
space:
mode:
authorMaxim Dounin <mdounin@mdounin.ru>2018-03-22 19:26:25 +0300
committerMaxim Dounin <mdounin@mdounin.ru>2018-03-22 19:26:25 +0300
commit0ac57648ebc93358e977939bfcb9d1e67485b98e (patch)
treec3b0f0832fd2892d8029578c113b67ff5b4d5b99 /src/http/modules/ngx_http_grpc_module.c
parent8e8734ec82cde91a02d0cbfaae0d0df6b5aaab14 (diff)
downloadnginx-0ac57648ebc93358e977939bfcb9d1e67485b98e.tar.gz
nginx-0ac57648ebc93358e977939bfcb9d1e67485b98e.tar.bz2
gRPC: fixed possible sign extension of error and setting_value.
All cases are harmless and should not happen on valid values, though can result in bad values being shown incorrectly in logs. Found by Coverity (CID 1430311, 1430312, 1430313).
Diffstat (limited to 'src/http/modules/ngx_http_grpc_module.c')
-rw-r--r--src/http/modules/ngx_http_grpc_module.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/http/modules/ngx_http_grpc_module.c b/src/http/modules/ngx_http_grpc_module.c
index b6be9b874..837ad9a2e 100644
--- a/src/http/modules/ngx_http_grpc_module.c
+++ b/src/http/modules/ngx_http_grpc_module.c
@@ -3212,7 +3212,7 @@ ngx_http_grpc_parse_rst_stream(ngx_http_request_t *r, ngx_http_grpc_ctx_t *ctx,
switch (state) {
case sw_start:
- ctx->error = ch << 24;
+ ctx->error = (ngx_uint_t) ch << 24;
state = sw_error_2;
break;
@@ -3325,7 +3325,7 @@ ngx_http_grpc_parse_goaway(ngx_http_request_t *r, ngx_http_grpc_ctx_t *ctx,
break;
case sw_error:
- ctx->error = ch << 24;
+ ctx->error = (ngx_uint_t) ch << 24;
state = sw_error_2;
break;
@@ -3555,7 +3555,7 @@ ngx_http_grpc_parse_settings(ngx_http_request_t *r, ngx_http_grpc_ctx_t *ctx,
break;
case sw_value:
- ctx->setting_value = ch << 24;
+ ctx->setting_value = (ngx_uint_t) ch << 24;
state = sw_value_2;
break;