diff options
author | Maxim Dounin <mdounin@mdounin.ru> | 2018-03-22 19:26:25 +0300 |
---|---|---|
committer | Maxim Dounin <mdounin@mdounin.ru> | 2018-03-22 19:26:25 +0300 |
commit | 0ac57648ebc93358e977939bfcb9d1e67485b98e (patch) | |
tree | c3b0f0832fd2892d8029578c113b67ff5b4d5b99 /src/http | |
parent | 8e8734ec82cde91a02d0cbfaae0d0df6b5aaab14 (diff) |
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')
-rw-r--r-- | src/http/modules/ngx_http_grpc_module.c | 6 |
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; |